Edit

kc3-lang/angle/src/compiler/translator/SymbolTable_autogen.cpp

Branch :

  • Show log

    Commit

  • Author : Mohan Maiya
    Date : 2020-12-14 14:11:11
    Hash : 8f9e17d5
    Message : Add EXT_clip_cull_distance extension autogen code Addition of shader autogen code for EXT_clip_cull_distance extension. Bug: angleproject:5458 Change-Id: I299528957c0e747fd84987c420588c314f54aae0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2590989 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>

  • src/compiler/translator/SymbolTable_autogen.cpp
  • // GENERATED FILE - DO NOT EDIT.
    // Generated by gen_builtin_symbols.py using data from builtin_variables.json and
    // builtin_function_declarations.txt.
    //
    // Copyright 2020 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    // 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/tree_util/BuiltIn.h"
    
    namespace sh
    {
    using Resources = ShBuiltInResources;
    using TableBase = TSymbolTableBase;
    
    // 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::radians_Float1;
    constexpr const TSymbolUniqueId BuiltInId::radians_Float2;
    constexpr const TSymbolUniqueId BuiltInId::radians_Float3;
    constexpr const TSymbolUniqueId BuiltInId::radians_Float4;
    constexpr const TSymbolUniqueId BuiltInId::degrees_Float1;
    constexpr const TSymbolUniqueId BuiltInId::degrees_Float2;
    constexpr const TSymbolUniqueId BuiltInId::degrees_Float3;
    constexpr const TSymbolUniqueId BuiltInId::degrees_Float4;
    constexpr const TSymbolUniqueId BuiltInId::sin_Float1;
    constexpr const TSymbolUniqueId BuiltInId::sin_Float2;
    constexpr const TSymbolUniqueId BuiltInId::sin_Float3;
    constexpr const TSymbolUniqueId BuiltInId::sin_Float4;
    constexpr const TSymbolUniqueId BuiltInId::cos_Float1;
    constexpr const TSymbolUniqueId BuiltInId::cos_Float2;
    constexpr const TSymbolUniqueId BuiltInId::cos_Float3;
    constexpr const TSymbolUniqueId BuiltInId::cos_Float4;
    constexpr const TSymbolUniqueId BuiltInId::tan_Float1;
    constexpr const TSymbolUniqueId BuiltInId::tan_Float2;
    constexpr const TSymbolUniqueId BuiltInId::tan_Float3;
    constexpr const TSymbolUniqueId BuiltInId::tan_Float4;
    constexpr const TSymbolUniqueId BuiltInId::asin_Float1;
    constexpr const TSymbolUniqueId BuiltInId::asin_Float2;
    constexpr const TSymbolUniqueId BuiltInId::asin_Float3;
    constexpr const TSymbolUniqueId BuiltInId::asin_Float4;
    constexpr const TSymbolUniqueId BuiltInId::acos_Float1;
    constexpr const TSymbolUniqueId BuiltInId::acos_Float2;
    constexpr const TSymbolUniqueId BuiltInId::acos_Float3;
    constexpr const TSymbolUniqueId BuiltInId::acos_Float4;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float1;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float2;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float3;
    constexpr const TSymbolUniqueId BuiltInId::atan_Float4;
    constexpr const TSymbolUniqueId BuiltInId::sinh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::sinh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::sinh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::sinh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::cosh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::cosh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::cosh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::cosh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::tanh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::tanh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::tanh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::tanh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::asinh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::asinh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::asinh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::asinh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::acosh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::acosh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::acosh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::acosh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::atanh_Float1;
    constexpr const TSymbolUniqueId BuiltInId::atanh_Float2;
    constexpr const TSymbolUniqueId BuiltInId::atanh_Float3;
    constexpr const TSymbolUniqueId BuiltInId::atanh_Float4;
    constexpr const TSymbolUniqueId BuiltInId::pow_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::pow_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::pow_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::pow_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::exp_Float1;
    constexpr const TSymbolUniqueId BuiltInId::exp_Float2;
    constexpr const TSymbolUniqueId BuiltInId::exp_Float3;
    constexpr const TSymbolUniqueId BuiltInId::exp_Float4;
    constexpr const TSymbolUniqueId BuiltInId::log_Float1;
    constexpr const TSymbolUniqueId BuiltInId::log_Float2;
    constexpr const TSymbolUniqueId BuiltInId::log_Float3;
    constexpr const TSymbolUniqueId BuiltInId::log_Float4;
    constexpr const TSymbolUniqueId BuiltInId::exp2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::exp2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::exp2_Float3;
    constexpr const TSymbolUniqueId BuiltInId::exp2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::log2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::log2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::log2_Float3;
    constexpr const TSymbolUniqueId BuiltInId::log2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Double1;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Double2;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Double3;
    constexpr const TSymbolUniqueId BuiltInId::sqrt_Double4;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Double1;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Double2;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Double3;
    constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Double4;
    constexpr const TSymbolUniqueId BuiltInId::abs_Float1;
    constexpr const TSymbolUniqueId BuiltInId::abs_Float2;
    constexpr const TSymbolUniqueId BuiltInId::abs_Float3;
    constexpr const TSymbolUniqueId BuiltInId::abs_Float4;
    constexpr const TSymbolUniqueId BuiltInId::abs_Int1;
    constexpr const TSymbolUniqueId BuiltInId::abs_Int2;
    constexpr const TSymbolUniqueId BuiltInId::abs_Int3;
    constexpr const TSymbolUniqueId BuiltInId::abs_Int4;
    constexpr const TSymbolUniqueId BuiltInId::abs_Double1;
    constexpr const TSymbolUniqueId BuiltInId::abs_Double2;
    constexpr const TSymbolUniqueId BuiltInId::abs_Double3;
    constexpr const TSymbolUniqueId BuiltInId::abs_Double4;
    constexpr const TSymbolUniqueId BuiltInId::sign_Float1;
    constexpr const TSymbolUniqueId BuiltInId::sign_Float2;
    constexpr const TSymbolUniqueId BuiltInId::sign_Float3;
    constexpr const TSymbolUniqueId BuiltInId::sign_Float4;
    constexpr const TSymbolUniqueId BuiltInId::sign_Int1;
    constexpr const TSymbolUniqueId BuiltInId::sign_Int2;
    constexpr const TSymbolUniqueId BuiltInId::sign_Int3;
    constexpr const TSymbolUniqueId BuiltInId::sign_Int4;
    constexpr const TSymbolUniqueId BuiltInId::sign_Double1;
    constexpr const TSymbolUniqueId BuiltInId::sign_Double2;
    constexpr const TSymbolUniqueId BuiltInId::sign_Double3;
    constexpr const TSymbolUniqueId BuiltInId::sign_Double4;
    constexpr const TSymbolUniqueId BuiltInId::floor_Float1;
    constexpr const TSymbolUniqueId BuiltInId::floor_Float2;
    constexpr const TSymbolUniqueId BuiltInId::floor_Float3;
    constexpr const TSymbolUniqueId BuiltInId::floor_Float4;
    constexpr const TSymbolUniqueId BuiltInId::floor_Double1;
    constexpr const TSymbolUniqueId BuiltInId::floor_Double2;
    constexpr const TSymbolUniqueId BuiltInId::floor_Double3;
    constexpr const TSymbolUniqueId BuiltInId::floor_Double4;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Float1;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Float2;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Float3;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Float4;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Double1;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Double2;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Double3;
    constexpr const TSymbolUniqueId BuiltInId::trunc_Double4;
    constexpr const TSymbolUniqueId BuiltInId::round_Float1;
    constexpr const TSymbolUniqueId BuiltInId::round_Float2;
    constexpr const TSymbolUniqueId BuiltInId::round_Float3;
    constexpr const TSymbolUniqueId BuiltInId::round_Float4;
    constexpr const TSymbolUniqueId BuiltInId::round_Double1;
    constexpr const TSymbolUniqueId BuiltInId::round_Double2;
    constexpr const TSymbolUniqueId BuiltInId::round_Double3;
    constexpr const TSymbolUniqueId BuiltInId::round_Double4;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Float1;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Float2;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Float3;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Float4;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Double1;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Double2;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Double3;
    constexpr const TSymbolUniqueId BuiltInId::roundEven_Double4;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Float1;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Float2;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Float3;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Float4;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Double1;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Double2;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Double3;
    constexpr const TSymbolUniqueId BuiltInId::ceil_Double4;
    constexpr const TSymbolUniqueId BuiltInId::fract_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fract_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fract_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fract_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fract_Double1;
    constexpr const TSymbolUniqueId BuiltInId::fract_Double2;
    constexpr const TSymbolUniqueId BuiltInId::fract_Double3;
    constexpr const TSymbolUniqueId BuiltInId::fract_Double4;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::mod_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double2_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double3_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double4_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::mod_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::min_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::min_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::min_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::min_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::min_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::min_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::min_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::min_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::min_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::min_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::min_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::min_Double2_Double1;
    constexpr const TSymbolUniqueId BuiltInId::min_Double3_Double1;
    constexpr const TSymbolUniqueId BuiltInId::min_Double4_Double1;
    constexpr const TSymbolUniqueId BuiltInId::min_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::min_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::min_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::min_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::min_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::min_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::min_Int4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::min_UInt4_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::max_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::max_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::max_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::max_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::max_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::max_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::max_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::max_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::max_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::max_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::max_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::max_Double2_Double1;
    constexpr const TSymbolUniqueId BuiltInId::max_Double3_Double1;
    constexpr const TSymbolUniqueId BuiltInId::max_Double4_Double1;
    constexpr const TSymbolUniqueId BuiltInId::max_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::max_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::max_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::max_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::max_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::max_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::max_Int4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::max_UInt4_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float3_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float4_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double1_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double2_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double3_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double4_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double2_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double3_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Double4_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int4_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int2_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int3_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::clamp_Int4_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt4_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt2_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt3_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::clamp_UInt4_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double1_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double2_Double2_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double3_Double3_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double4_Double4_Double1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double2_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double3_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double4_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float1_Float1_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double1_Double1_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double2_Double2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double3_Double3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Double4_Double4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Int1_Int1_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Int2_Int2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Int3_Int3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Int4_Int4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::mix_UInt1_UInt1_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::mix_UInt2_UInt2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::mix_UInt3_UInt3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::mix_UInt4_UInt4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::mix_Bool1_Bool1_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::mix_Bool2_Bool2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::mix_Bool3_Bool3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::mix_Bool4_Bool4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::step_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::step_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::step_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::step_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::step_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::step_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::step_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::step_Double1_Double2;
    constexpr const TSymbolUniqueId BuiltInId::step_Double1_Double3;
    constexpr const TSymbolUniqueId BuiltInId::step_Double1_Double4;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double1_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double2_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double3_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double4_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double1_Double1_Double2;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double1_Double1_Double3;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Double1_Double1_Double4;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::modf_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::modf_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::modf_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::modf_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::modf_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::modf_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::modf_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::modf_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Float1;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Float2;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Float3;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Float4;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Double1;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Double2;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Double3;
    constexpr const TSymbolUniqueId BuiltInId::isnan_Double4;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Float1;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Float2;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Float3;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Float4;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Double1;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Double2;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Double3;
    constexpr const TSymbolUniqueId BuiltInId::isinf_Double4;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float1;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float2;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float3;
    constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float4;
    constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int1;
    constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int2;
    constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int3;
    constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int4;
    constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::fma_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fma_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fma_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fma_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fmaExt_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fmaExt_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fmaExt_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fmaExt_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fma_Double1_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::fma_Double2_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::fma_Double3_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::fma_Double4_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Float4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Double1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Double2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Double3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::frexp_Double4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Float4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Double1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Double2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Double3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::ldexp_Double4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::packSnorm2x16_Float2;
    constexpr const TSymbolUniqueId BuiltInId::packHalf2x16_Float2;
    constexpr const TSymbolUniqueId BuiltInId::unpackSnorm2x16_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::unpackHalf2x16_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::packUnorm2x16_Float2;
    constexpr const TSymbolUniqueId BuiltInId::unpackUnorm2x16_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::packUnorm4x8_Float4;
    constexpr const TSymbolUniqueId BuiltInId::packSnorm4x8_Float4;
    constexpr const TSymbolUniqueId BuiltInId::unpackUnorm4x8_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::unpackSnorm4x8_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::packDouble2x32_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::unpackDouble2x32_Double1;
    constexpr const TSymbolUniqueId BuiltInId::length_Float1;
    constexpr const TSymbolUniqueId BuiltInId::length_Float2;
    constexpr const TSymbolUniqueId BuiltInId::length_Float3;
    constexpr const TSymbolUniqueId BuiltInId::length_Float4;
    constexpr const TSymbolUniqueId BuiltInId::length_Double1;
    constexpr const TSymbolUniqueId BuiltInId::length_Double2;
    constexpr const TSymbolUniqueId BuiltInId::length_Double3;
    constexpr const TSymbolUniqueId BuiltInId::length_Double4;
    constexpr const TSymbolUniqueId BuiltInId::distance_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::distance_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::distance_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::distance_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::distance_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::distance_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::distance_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::distance_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::dot_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dot_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dot_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dot_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dot_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::dot_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::dot_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::dot_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::cross_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::cross_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Float1;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Float2;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Float3;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Float4;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Double1;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Double2;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Double3;
    constexpr const TSymbolUniqueId BuiltInId::normalize_Double4;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Float4_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Double1_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Double2_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Double3_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::faceforward_Double4_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Double1_Double1;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Double2_Double2;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Double3_Double3;
    constexpr const TSymbolUniqueId BuiltInId::reflect_Double4_Double4;
    constexpr const TSymbolUniqueId BuiltInId::refract_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Float2_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Float3_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Float4_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Double1_Double1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Double2_Double2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Double3_Double3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::refract_Double4_Double4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::ftransform;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x2_Float2x2;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x3_Float3x3;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x4_Float4x4;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x3_Float2x3;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x2_Float3x2;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x4_Float2x4;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x2_Float4x2;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x4_Float3x4;
    constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x3_Float4x3;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float2;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float3;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float2;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float3;
    constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x2;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x3;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x4;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x2;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x3;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x2;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x4;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x3;
    constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x4;
    constexpr const TSymbolUniqueId BuiltInId::determinant_Float2x2;
    constexpr const TSymbolUniqueId BuiltInId::determinant_Float3x3;
    constexpr const TSymbolUniqueId BuiltInId::determinant_Float4x4;
    constexpr const TSymbolUniqueId BuiltInId::inverse_Float2x2;
    constexpr const TSymbolUniqueId BuiltInId::inverse_Float3x3;
    constexpr const TSymbolUniqueId BuiltInId::inverse_Float4x4;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::equal_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::equal_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::equal_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::equal_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::equal_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::equal_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::equal_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::equal_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::equal_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::equal_Bool2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::equal_Bool3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::equal_Bool4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Float4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool2_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool3_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool4_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::any_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::any_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::any_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::all_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::all_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::all_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool2;
    constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool3;
    constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool4;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int4_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt4_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int2_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int3_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int4_Int4_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt1_UInt1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt2_UInt2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt3_UInt3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt4_UInt4_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int2;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int3;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int4;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_Int1;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_Int2;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_Int3;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_Int4;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_Int1;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_Int2;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_Int3;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_Int4;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_Int1;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_Int2;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_Int3;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_Int4;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt2_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt3_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt4_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt2_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt3_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt4_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt1_UInt1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt2_UInt2_UInt2_UInt2;
    constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt3_UInt3_UInt3_UInt3;
    constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt4_UInt4_UInt4_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int2_Int2_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int3_Int3_Int3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int4_Int4_Int4_Int4;
    constexpr const TSymbolUniqueId BuiltInId::texture2D_Sampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureCube_SamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture1D_Sampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProj_Sampler1D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProj_Sampler1D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture3D_Sampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture3DProj_Sampler3D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::shadow1D_Sampler1DShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::shadow1DProj_Sampler1DShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::shadow2D_Sampler2DShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DProj_Sampler2DShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture2D_SamplerExternalOES1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_SamplerExternalOES1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_SamplerExternalOES1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture2DRect_Sampler2DRect1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture2DRectProj_Sampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture2DRectProj_Sampler2DRect1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DRect1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DRect1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture2DGradEXT_Sampler2D1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjGradEXT_Sampler2D1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjGradEXT_Sampler2D1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureCubeGradEXT_SamplerCube1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture2D_Sampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureCube_SamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture3D_Sampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture3DProj_Sampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture3DLod_Sampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture3DProjLod_Sampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1D_Sampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProj_Sampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProj_Sampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow1D_Sampler1DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow1DProj_Sampler1DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow2D_Sampler2DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DProj_Sampler2DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture2DLodEXT_Sampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjLodEXT_Sampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjLodEXT_Sampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureCubeLodEXT_SamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DEXT_Sampler2DShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DProjEXT_Sampler2DShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture2DLod_Sampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjLod_Sampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture2DProjLod_Sampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureCubeLod_SamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DLod_Sampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProjLod_Sampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture1DProjLod_Sampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow1DLod_Sampler1DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow1DProjLod_Sampler1DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DLod_Sampler2DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::shadow2DProjLod_Sampler2DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArrayShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler1DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler1DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DArrayShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2DRect1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler2DRect1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DRectShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeArrayShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler3D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler3D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler3D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler1D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler1D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler1D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler1D1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1DShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2DRect1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2DRect1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DRectShadow1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_SamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler1DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler1DArray1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler1DArray1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler1DArray1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler1DArrayShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_SamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_ISamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureLod_USamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler3D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler3D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler3D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCube1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISamplerCube1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USamplerCube1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCubeShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DArrayShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler1DShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCubeArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISamplerCubeArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USamplerCubeArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCubeArrayShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DRect1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DRect1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DRect1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DRectShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler1DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler1DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler1DArray1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler1DArrayShadow1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISamplerBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USamplerBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler1DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_SamplerBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISamplerBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USamplerBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2D1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2D1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2D1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler3D1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler3D1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler3D1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_SamplerCube1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISamplerCube1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USamplerCube1_Float3_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2D1_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2D1_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2D1_Float1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DRect1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2DRect1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2DRect1_Float2_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DRectShadow1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DShadow1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_SamplerCubeShadow1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DArray1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2DArray1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2DArray1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DArrayShadow1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler1DShadow1_Float3_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler1DArray1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler1DArray1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler1DArray1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler1DArrayShadow1_Float3_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_SamplerCubeArray1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISamplerCubeArray1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGrad_USamplerCubeArray1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2D1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2D1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2D1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2D1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2D1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2D1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler3D1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler3D1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler3D1_Float4_Float3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2DShadow1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler1D1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler1D1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler1D1_Float2_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler1D1_Float4_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler1D1_Float4_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler1D1_Float4_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler1DShadow1_Float4_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2DRect1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2DRect1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2DRect1_Float3_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2DRect1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2DRect1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2DRect1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGrad_Sampler2DRectShadow1_Float4_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler1D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISampler1D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USampler1D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler2D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISampler2D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USampler2D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler3D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISampler3D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USampler3D1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_SamplerCube1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISamplerCube1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USamplerCube1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISampler1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USampler1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISampler2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USampler2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_SamplerCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_ISamplerCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_USamplerCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler1DShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler2DShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_SamplerCubeShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler1DArrayShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_Sampler2DArrayShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLevels_SamplerCubeArrayShadow1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_Sampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_ISampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_USampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_Sampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_ISampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSamples_USampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_Sampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_ISampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_USampler2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_Sampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_ISampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_USampler2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCubeArray1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCubeArray1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeArray1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCubeArray1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCubeArray1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeArrayShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_Sampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_ISampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_USampler2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_Sampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_ISampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_USampler2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler2D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler3D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCube1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler2DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler3D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler1D1_Float1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_ISampler1DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_USampler1DArray1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler1DArrayShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArrayShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler1D1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler1D1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler1DShadow1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternalOES1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USampler1D1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USampler3D1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_SamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler1DArray1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISampler1DArray1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USampler1DArray1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler2DArray1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISampler2DArray1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USampler2DArray1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_SamplerCubeArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_ISamplerCubeArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_USamplerCubeArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler1DShadow1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler2DShadow1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_SamplerCubeShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler1DArrayShadow1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_Sampler2DArrayShadow1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureQueryLod_SamplerCubeArrayShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler3D1_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler3D1_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler3D1_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1D1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler1D1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler1D1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DRectShadow1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DShadow1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DArray1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler1DArray1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler1DArray1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DArrayShadow1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DArrayShadow1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler3D1_Float4_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler1D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler1D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1D1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler1D1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler1D1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DRect1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2DRect1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2DRect1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DRect1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2DRect1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2DRect1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DRectShadow1_Float4_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1DShadow1_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2D1_Float2_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler2D1_Float2_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler2D1_Float2_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler3D1_Float3_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler3D1_Float3_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler3D1_Float3_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2DShadow1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2DArray1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler2DArray1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler2DArray1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler1D1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler1D1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler1D1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler1DShadow1_Float3_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler1DArray1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler1DArray1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler1DArray1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureLodOffset_Sampler1DArrayShadow1_Float3_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2D1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler2D1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler2D1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2D1_Float4_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler2D1_Float4_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler2D1_Float4_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler3D1_Float4_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler3D1_Float4_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler3D1_Float4_Float1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2DShadow1_Float4_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler1D1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler1D1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler1D1_Float2_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler1D1_Float4_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler1D1_Float4_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler1D1_Float4_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler1DShadow1_Float4_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler2D1_Int2_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler2D1_Int2_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler2D1_Int2_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler3D1_Int3_Int1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler3D1_Int3_Int1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler3D1_Int3_Int1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler2DArray1_Int3_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler2DArray1_Int3_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler2DArray1_Int3_Int1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler2DRect1_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler2DRect1_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler2DRect1_Int2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_Sampler2D1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_ISampler2D1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_USampler2D1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_Sampler3D1_Float3_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_ISampler3D1_Float3_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_USampler3D1_Float3_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler2DShadow1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler2DArray1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_ISampler2DArray1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_USampler2DArray1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler2DArrayShadow1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_Sampler1D1_Float1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_ISampler1D1_Float1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_USampler1D1_Float1_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler2DRect1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_ISampler2DRect1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_USampler2DRect1_Float2_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler2DRectShadow1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler1DShadow1_Float3_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler1DArray1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_ISampler1DArray1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_USampler1DArray1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGradOffset_Sampler1DArrayShadow1_Float3_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2D1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler2D1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler2D1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2D1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler2D1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler2D1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler3D1_Float4_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler3D1_Float4_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler3D1_Float4_Float3_Float3_Int3;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2DShadow1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler1D1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler1D1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler1D1_Float2_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler1D1_Float4_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler1D1_Float4_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler1D1_Float4_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2DRect1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler2DRect1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler2DRect1_Float3_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2DRect1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_ISampler2DRect1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_USampler2DRect1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler2DRectShadow1_Float4_Float2_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureProjGradOffset_Sampler1DShadow1_Float4_Float1_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2D1_Float2_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2D1_Float2_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2D1_Float2_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler3D1_Float3_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler3D1_Float3_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler3D1_Float3_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2DArray1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1D1_Float1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler1D1_Float1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler1D1_Float1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DShadow1_Float3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DArray1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler1DArray1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler1DArray1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler1DArrayShadow1_Float3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float3_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float4_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler3D1_Float4_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1D1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler1D1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler1D1_Float2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1D1_Float4_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler1D1_Float4_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler1D1_Float4_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler1DShadow1_Float4_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternalOES1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerExternalOES1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_SamplerExternalOES1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::rgb_2_yuv_Float3_YuvCscStandardEXT1;
    constexpr const TSymbolUniqueId BuiltInId::yuv_2_rgb_Float3_YuvCscStandardEXT1;
    constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerExternal2DY2YEXT1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::texelFetch_SamplerExternal2DY2YEXT1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2D1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2D1_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DArray1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArray1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DArray1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DArray1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCube1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCube1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCube1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCube1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DRect1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DRect1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DRect1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DRect1_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DShadow1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DShadow1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArrayShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArrayShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeShadow1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeShadow1_Float3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DRectShadow1_Float2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_Sampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_ISampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_USampler2D1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsetsExt_Sampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsetsExt_ISampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsetsExt_USampler2DArray1_Float3_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2DRect1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2DRect1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2DRect1_Float2_4xInt2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsets_Sampler2DShadow1_Float2_Float1_4xInt2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsets_Sampler2DArrayShadow1_Float3_Float1_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_Sampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_ISampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_USampler2D1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_Sampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_ISampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsetsExt_USampler2DArray1_Float3_4xInt2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsetsExt_Sampler2DShadow1_Float2_Float1_4xInt2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsetsExt_Sampler2DArrayShadow1_Float3_Float1_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_Sampler2DRect1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_ISampler2DRect1_Float2_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffsets_USampler2DRect1_Float2_4xInt2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffsets_Sampler2DRectShadow1_Float2_Float1_4xInt2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DRect1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DRect1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DRect1_Float2_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DShadow1_Float2_Float1_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffset_Sampler2DArrayShadow1_Float3_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DRect1_Float2_Int2;
    constexpr const TSymbolUniqueId
        BuiltInId::textureGatherOffset_Sampler2DRectShadow1_Float2_Float1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::dFdx_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdx_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdx_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdx_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdy_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdy_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdy_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdy_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fwidth_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fwidth_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fwidth_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fwidth_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdxFine_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdxFine_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdxFine_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdxFine_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdyFine_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdyFine_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdyFine_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdyFine_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdxCoarse_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdxCoarse_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdxCoarse_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdxCoarse_Float4;
    constexpr const TSymbolUniqueId BuiltInId::dFdyCoarse_Float1;
    constexpr const TSymbolUniqueId BuiltInId::dFdyCoarse_Float2;
    constexpr const TSymbolUniqueId BuiltInId::dFdyCoarse_Float3;
    constexpr const TSymbolUniqueId BuiltInId::dFdyCoarse_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fwidthFine_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fwidthFine_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fwidthFine_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fwidthFine_Float4;
    constexpr const TSymbolUniqueId BuiltInId::fwidthCoarse_Float1;
    constexpr const TSymbolUniqueId BuiltInId::fwidthCoarse_Float2;
    constexpr const TSymbolUniqueId BuiltInId::fwidthCoarse_Float3;
    constexpr const TSymbolUniqueId BuiltInId::fwidthCoarse_Float4;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroid_Float1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroid_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroid_Float3;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroid_Float4;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSample_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSample_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSample_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSample_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffset_Float1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffset_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffset_Float3_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffset_Float4_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroidExt_Float1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroidExt_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroidExt_Float3;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtCentroidExt_Float4;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSampleExt_Float1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSampleExt_Float2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSampleExt_Float3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtSampleExt_Float4_Int1;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffsetExt_Float1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffsetExt_Float2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffsetExt_Float3_Float2;
    constexpr const TSymbolUniqueId BuiltInId::interpolateAtOffsetExt_Float4_Float2;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounter_AtomicCounter1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterIncrement_AtomicCounter1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterDecrement_AtomicCounter1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterAdd_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterSubtract_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterMin_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterMax_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterAnd_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterOr_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterXor_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterExchange_AtomicCounter1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCounterCompSwap_AtomicCounter1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicAdd_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicAdd_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicMin_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicMin_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicMax_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicMax_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicAnd_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicAnd_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicOr_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicOr_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicXor_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicXor_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicExchange_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicExchange_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCompSwap_UInt1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::atomicCompSwap_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image3D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage3D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage3D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_ImageCube1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImageCube1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImageCube1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_ImageCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImageCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImageCubeArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_ImageBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImageBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImageBuffer1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image1D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage1D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage1D1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_ImageRect1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImageRect1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImageRect1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage1DArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_Image2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_IImage2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_UImage2DMS1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_Image2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_IImage2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageSamples_UImage2DMSArray1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2D1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2D1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2D1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image3D1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage3D1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage3D1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2DArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2DArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2DArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_ImageCube1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImageCube1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImageCube1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_ImageCubeArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImageCubeArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImageCubeArray1_Int3;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_ImageBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImageBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImageBuffer1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage1D1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image1DArray1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage1DArray1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage1DArray1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2DRect1_Int2;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2DMS1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2DMSArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAdd_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMin_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMax_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAnd_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOr_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXor_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwap_Image2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwap_IImage2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwap_UImage2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_ImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_Image2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_IImage2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwap_UImage2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAddExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMinExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicMaxExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicAndExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicOrExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicXorExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2D1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage3D1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageCube1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageBuffer1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageCubeArray1_Int3_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage1D1_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage1DArray1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DRect1_Int2_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DMS1_Int2_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_Image2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_IImage2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_UImage2DMSArray1_Int3_Int1_UInt1_UInt1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2D1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage3D1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageCube1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageBuffer1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_ImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImageCubeArray1_Int3_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage1D1_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage1DArray1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DRect1_Int2_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_Image2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_IImage2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageAtomicCompSwapExt_UImage2DMS1_Int2_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_Image2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_IImage2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId
        BuiltInId::imageAtomicCompSwapExt_UImage2DMSArray1_Int3_Int1_Int1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2D1_Int2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2D1_Int2_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2D1_Int2_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image3D1_Int3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage3D1_Int3_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage3D1_Int3_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2DArray1_Int3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2DArray1_Int3_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2DArray1_Int3_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_ImageCube1_Int3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImageCube1_Int3_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImageCube1_Int3_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_ImageCubeArray1_Int3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImageCubeArray1_Int3_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImageCubeArray1_Int3_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_ImageBuffer1_Int1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImageBuffer1_Int1_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImageBuffer1_Int1_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image1D1_Int1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage1D1_Int1_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage1D1_Int1_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image1DArray1_Int2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage1DArray1_Int2_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage1DArray1_Int2_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2DRect1_Int2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2DRect1_Int2_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2DRect1_Int2_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2DMS1_Int2_Int1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2DMS1_Int2_Int1_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2DMS1_Int2_Int1_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2DMSArray1_Int3_Int1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2DMSArray1_Int3_Int1_Int4;
    constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2DMSArray1_Int3_Int1_UInt4;
    constexpr const TSymbolUniqueId BuiltInId::noise1_Float1;
    constexpr const TSymbolUniqueId BuiltInId::noise1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::noise1_Float3;
    constexpr const TSymbolUniqueId BuiltInId::noise1_Float4;
    constexpr const TSymbolUniqueId BuiltInId::noise2_Float1;
    constexpr const TSymbolUniqueId BuiltInId::noise2_Float2;
    constexpr const TSymbolUniqueId BuiltInId::noise2_Float3;
    constexpr const TSymbolUniqueId BuiltInId::noise2_Float4;
    constexpr const TSymbolUniqueId BuiltInId::noise3_Float1;
    constexpr const TSymbolUniqueId BuiltInId::noise3_Float2;
    constexpr const TSymbolUniqueId BuiltInId::noise3_Float3;
    constexpr const TSymbolUniqueId BuiltInId::noise3_Float4;
    constexpr const TSymbolUniqueId BuiltInId::noise4_Float1;
    constexpr const TSymbolUniqueId BuiltInId::noise4_Float2;
    constexpr const TSymbolUniqueId BuiltInId::noise4_Float3;
    constexpr const TSymbolUniqueId BuiltInId::noise4_Float4;
    constexpr const TSymbolUniqueId BuiltInId::memoryBarrier;
    constexpr const TSymbolUniqueId BuiltInId::memoryBarrierAtomicCounter;
    constexpr const TSymbolUniqueId BuiltInId::memoryBarrierBuffer;
    constexpr const TSymbolUniqueId BuiltInId::memoryBarrierImage;
    constexpr const TSymbolUniqueId BuiltInId::barrier;
    constexpr const TSymbolUniqueId BuiltInId::memoryBarrierShared;
    constexpr const TSymbolUniqueId BuiltInId::groupMemoryBarrier;
    constexpr const TSymbolUniqueId BuiltInId::EmitVertex;
    constexpr const TSymbolUniqueId BuiltInId::EndPrimitive;
    constexpr const TSymbolUniqueId BuiltInId::EmitStreamVertex_Int1;
    constexpr const TSymbolUniqueId BuiltInId::EndStreamPrimitive_Int1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_SubpassInput1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_ISubpassInput1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_USubpassInput1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_SubpassInputMS1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_ISubpassInputMS1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::subpassLoad_USubpassInputMS1_Int1;
    constexpr const TSymbolUniqueId BuiltInId::anyInvocation_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::allInvocations_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::allInvocationsEqual_Bool1;
    constexpr const TSymbolUniqueId BuiltInId::textureVideoWEBGL_SamplerVideoWEBGL1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::texture_SamplerVideoWEBGL1_Float2;
    constexpr const TSymbolUniqueId BuiltInId::gl_DepthRangeParameters;
    constexpr const TSymbolUniqueId BuiltInId::gl_DepthRange;
    constexpr const TSymbolUniqueId BuiltInId::gl_NumSamples;
    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_MaxTessControlInputComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlOutputComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlTextureImageUnits;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlUniformComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlTotalOutputComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlImageUniforms;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlAtomicCounters;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessControlAtomicCounterBuffers;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessPatchComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxPatchVertices;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessGenLevel;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationInputComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationOutputComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationTextureImageUnits;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationUniformComponents;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationImageUniforms;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationAtomicCounters;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxTessEvaluationAtomicCounterBuffers;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxSamples;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxClipDistancesAPPLE;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxCullDistancesEXT;
    constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedClipAndCullDistancesEXT;
    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_HelperInvocation;
    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_SampleID;
    constexpr const TSymbolUniqueId BuiltInId::gl_SamplePosition;
    constexpr const TSymbolUniqueId BuiltInId::gl_SampleMaskIn;
    constexpr const TSymbolUniqueId BuiltInId::gl_SampleMask;
    constexpr const TSymbolUniqueId BuiltInId::gl_CullDistance;
    constexpr const TSymbolUniqueId BuiltInId::gl_ClipDistance;
    constexpr const TSymbolUniqueId BuiltInId::gl_Position;
    constexpr const TSymbolUniqueId BuiltInId::gl_PointSize;
    constexpr const TSymbolUniqueId BuiltInId::gl_InstanceID;
    constexpr const TSymbolUniqueId BuiltInId::gl_InstanceIndex;
    constexpr const TSymbolUniqueId BuiltInId::gl_VertexID;
    constexpr const TSymbolUniqueId BuiltInId::gl_VertexIndex;
    constexpr const TSymbolUniqueId BuiltInId::gl_ViewportIndex;
    constexpr const TSymbolUniqueId BuiltInId::gl_LayerVS;
    constexpr const TSymbolUniqueId BuiltInId::gl_DrawID;
    constexpr const TSymbolUniqueId BuiltInId::gl_BaseVertex;
    constexpr const TSymbolUniqueId BuiltInId::gl_BaseInstance;
    constexpr const TSymbolUniqueId BuiltInId::angle_BaseVertex;
    constexpr const TSymbolUniqueId BuiltInId::angle_BaseInstance;
    constexpr const TSymbolUniqueId BuiltInId::gl_ClipDistanceAPPLE;
    constexpr const TSymbolUniqueId BuiltInId::gl_CullDistanceEXT;
    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_PatchVerticesInTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_InvocationIDTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_TessLevelOuterTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_TessLevelInnerTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_inTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_outTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexOutTcsBlock;
    constexpr const TSymbolUniqueId BuiltInId::gl_PositionTCS;
    constexpr const TSymbolUniqueId BuiltInId::gl_PatchVerticesInTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_TessCoord;
    constexpr const TSymbolUniqueId BuiltInId::gl_TessLevelOuterTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_TessLevelInnerTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_inTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_outTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexOutTesBlock;
    constexpr const TSymbolUniqueId BuiltInId::gl_PositionTES;
    constexpr const TSymbolUniqueId BuiltInId::gl_ViewID_OVR;
    
    const int TSymbolTable::kLastBuiltInId = 2952;
    
    namespace BuiltInName
    {
    
    constexpr const ImmutableString _empty("");
    constexpr const ImmutableString EmitStreamVertex("EmitStreamVertex");
    constexpr const ImmutableString EmitVertex("EmitVertex");
    constexpr const ImmutableString EndPrimitive("EndPrimitive");
    constexpr const ImmutableString EndStreamPrimitive("EndStreamPrimitive");
    constexpr const ImmutableString abs("abs");
    constexpr const ImmutableString acos("acos");
    constexpr const ImmutableString acosh("acosh");
    constexpr const ImmutableString all("all");
    constexpr const ImmutableString allInvocations("allInvocations");
    constexpr const ImmutableString allInvocationsEqual("allInvocationsEqual");
    constexpr const ImmutableString angle_BaseInstance("angle_BaseInstance");
    constexpr const ImmutableString angle_BaseVertex("angle_BaseVertex");
    constexpr const ImmutableString any("any");
    constexpr const ImmutableString anyInvocation("anyInvocation");
    constexpr const ImmutableString asin("asin");
    constexpr const ImmutableString asinh("asinh");
    constexpr const ImmutableString atan("atan");
    constexpr const ImmutableString atanh("atanh");
    constexpr const ImmutableString atomicAdd("atomicAdd");
    constexpr const ImmutableString atomicAnd("atomicAnd");
    constexpr const ImmutableString atomicCompSwap("atomicCompSwap");
    constexpr const ImmutableString atomicCounter("atomicCounter");
    constexpr const ImmutableString atomicCounterAdd("atomicCounterAdd");
    constexpr const ImmutableString atomicCounterAnd("atomicCounterAnd");
    constexpr const ImmutableString atomicCounterCompSwap("atomicCounterCompSwap");
    constexpr const ImmutableString atomicCounterDecrement("atomicCounterDecrement");
    constexpr const ImmutableString atomicCounterExchange("atomicCounterExchange");
    constexpr const ImmutableString atomicCounterIncrement("atomicCounterIncrement");
    constexpr const ImmutableString atomicCounterMax("atomicCounterMax");
    constexpr const ImmutableString atomicCounterMin("atomicCounterMin");
    constexpr const ImmutableString atomicCounterOr("atomicCounterOr");
    constexpr const ImmutableString atomicCounterSubtract("atomicCounterSubtract");
    constexpr const ImmutableString atomicCounterXor("atomicCounterXor");
    constexpr const ImmutableString atomicExchange("atomicExchange");
    constexpr const ImmutableString atomicMax("atomicMax");
    constexpr const ImmutableString atomicMin("atomicMin");
    constexpr const ImmutableString atomicOr("atomicOr");
    constexpr const ImmutableString atomicXor("atomicXor");
    constexpr const ImmutableString barrier("barrier");
    constexpr const ImmutableString bitCount("bitCount");
    constexpr const ImmutableString bitfieldExtract("bitfieldExtract");
    constexpr const ImmutableString bitfieldInsert("bitfieldInsert");
    constexpr const ImmutableString bitfieldReverse("bitfieldReverse");
    constexpr const ImmutableString ceil("ceil");
    constexpr const ImmutableString clamp("clamp");
    constexpr const ImmutableString cos("cos");
    constexpr const ImmutableString cosh("cosh");
    constexpr const ImmutableString cross("cross");
    constexpr const ImmutableString dFdx("dFdx");
    constexpr const ImmutableString dFdxCoarse("dFdxCoarse");
    constexpr const ImmutableString dFdxExt("dFdx");
    constexpr const ImmutableString dFdxFine("dFdxFine");
    constexpr const ImmutableString dFdy("dFdy");
    constexpr const ImmutableString dFdyCoarse("dFdyCoarse");
    constexpr const ImmutableString dFdyExt("dFdy");
    constexpr const ImmutableString dFdyFine("dFdyFine");
    constexpr const ImmutableString degrees("degrees");
    constexpr const ImmutableString determinant("determinant");
    constexpr const ImmutableString diff("diff");
    constexpr const ImmutableString distance("distance");
    constexpr const ImmutableString dot("dot");
    constexpr const ImmutableString equal("equal");
    constexpr const ImmutableString exp("exp");
    constexpr const ImmutableString exp2("exp2");
    constexpr const ImmutableString faceforward("faceforward");
    constexpr const ImmutableString far("far");
    constexpr const ImmutableString findLSB("findLSB");
    constexpr const ImmutableString findMSB("findMSB");
    constexpr const ImmutableString floatBitsToInt("floatBitsToInt");
    constexpr const ImmutableString floatBitsToUint("floatBitsToUint");
    constexpr const ImmutableString floor("floor");
    constexpr const ImmutableString fma("fma");
    constexpr const ImmutableString fmaExt("fma");
    constexpr const ImmutableString fract("fract");
    constexpr const ImmutableString frexp("frexp");
    constexpr const ImmutableString ftransform("ftransform");
    constexpr const ImmutableString fwidth("fwidth");
    constexpr const ImmutableString fwidthCoarse("fwidthCoarse");
    constexpr const ImmutableString fwidthExt("fwidth");
    constexpr const ImmutableString fwidthFine("fwidthFine");
    constexpr const ImmutableString gl_BaseInstance("gl_BaseInstance");
    constexpr const ImmutableString gl_BaseVertex("gl_BaseVertex");
    constexpr const ImmutableString gl_ClipDistance("gl_ClipDistance");
    constexpr const ImmutableString gl_CullDistance("gl_CullDistance");
    constexpr const ImmutableString gl_DepthRange("gl_DepthRange");
    constexpr const ImmutableString gl_DepthRangeParameters("gl_DepthRangeParameters");
    constexpr const ImmutableString gl_DrawID("gl_DrawID");
    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_HelperInvocation("gl_HelperInvocation");
    constexpr const ImmutableString gl_InstanceID("gl_InstanceID");
    constexpr const ImmutableString gl_InstanceIndex("gl_InstanceIndex");
    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_MaxClipDistances("gl_MaxClipDistances");
    constexpr const ImmutableString gl_MaxCombinedAtomicCounterBuffers(
        "gl_MaxCombinedAtomicCounterBuffers");
    constexpr const ImmutableString gl_MaxCombinedAtomicCounters("gl_MaxCombinedAtomicCounters");
    constexpr const ImmutableString gl_MaxCombinedClipAndCullDistances(
        "gl_MaxCombinedClipAndCullDistances");
    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_MaxCullDistances("gl_MaxCullDistances");
    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_MaxPatchVertices("gl_MaxPatchVertices");
    constexpr const ImmutableString gl_MaxProgramTexelOffset("gl_MaxProgramTexelOffset");
    constexpr const ImmutableString gl_MaxSamples("gl_MaxSamples");
    constexpr const ImmutableString gl_MaxTessControlAtomicCounterBuffers(
        "gl_MaxTessControlAtomicCounterBuffers");
    constexpr const ImmutableString gl_MaxTessControlAtomicCounters("gl_MaxTessControlAtomicCounters");
    constexpr const ImmutableString gl_MaxTessControlImageUniforms("gl_MaxTessControlImageUniforms");
    constexpr const ImmutableString gl_MaxTessControlInputComponents(
        "gl_MaxTessControlInputComponents");
    constexpr const ImmutableString gl_MaxTessControlOutputComponents(
        "gl_MaxTessControlOutputComponents");
    constexpr const ImmutableString gl_MaxTessControlTextureImageUnits(
        "gl_MaxTessControlTextureImageUnits");
    constexpr const ImmutableString gl_MaxTessControlTotalOutputComponents(
        "gl_MaxTessControlTotalOutputComponents");
    constexpr const ImmutableString gl_MaxTessControlUniformComponents(
        "gl_MaxTessControlUniformComponents");
    constexpr const ImmutableString gl_MaxTessEvaluationAtomicCounterBuffers(
        "gl_MaxTessEvaluationAtomicCounterBuffers");
    constexpr const ImmutableString gl_MaxTessEvaluationAtomicCounters(
        "gl_MaxTessEvaluationAtomicCounters");
    constexpr const ImmutableString gl_MaxTessEvaluationImageUniforms(
        "gl_MaxTessEvaluationImageUniforms");
    constexpr const ImmutableString gl_MaxTessEvaluationInputComponents(
        "gl_MaxTessEvaluationInputComponents");
    constexpr const ImmutableString gl_MaxTessEvaluationOutputComponents(
        "gl_MaxTessEvaluationOutputComponents");
    constexpr const ImmutableString gl_MaxTessEvaluationTextureImageUnits(
        "gl_MaxTessEvaluationTextureImageUnits");
    constexpr const ImmutableString gl_MaxTessEvaluationUniformComponents(
        "gl_MaxTessEvaluationUniformComponents");
    constexpr const ImmutableString gl_MaxTessGenLevel("gl_MaxTessGenLevel");
    constexpr const ImmutableString gl_MaxTessPatchComponents("gl_MaxTessPatchComponents");
    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_NumSamples("gl_NumSamples");
    constexpr const ImmutableString gl_NumWorkGroups("gl_NumWorkGroups");
    constexpr const ImmutableString gl_PatchVerticesIn("gl_PatchVerticesIn");
    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_SampleID("gl_SampleID");
    constexpr const ImmutableString gl_SampleMask("gl_SampleMask");
    constexpr const ImmutableString gl_SampleMaskIn("gl_SampleMaskIn");
    constexpr const ImmutableString gl_SamplePosition("gl_SamplePosition");
    constexpr const ImmutableString gl_SecondaryFragColorEXT("gl_SecondaryFragColorEXT");
    constexpr const ImmutableString gl_SecondaryFragDataEXT("gl_SecondaryFragDataEXT");
    constexpr const ImmutableString gl_TessCoord("gl_TessCoord");
    constexpr const ImmutableString gl_TessLevelInner("gl_TessLevelInner");
    constexpr const ImmutableString gl_TessLevelOuter("gl_TessLevelOuter");
    constexpr const ImmutableString gl_VertexID("gl_VertexID");
    constexpr const ImmutableString gl_VertexIndex("gl_VertexIndex");
    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 gl_out("gl_out");
    constexpr const ImmutableString greaterThan("greaterThan");
    constexpr const ImmutableString greaterThanEqual("greaterThanEqual");
    constexpr const ImmutableString groupMemoryBarrier("groupMemoryBarrier");
    constexpr const ImmutableString imageAtomicAdd("imageAtomicAdd");
    constexpr const ImmutableString imageAtomicAddExt("imageAtomicAdd");
    constexpr const ImmutableString imageAtomicAnd("imageAtomicAnd");
    constexpr const ImmutableString imageAtomicAndExt("imageAtomicAnd");
    constexpr const ImmutableString imageAtomicCompSwap("imageAtomicCompSwap");
    constexpr const ImmutableString imageAtomicCompSwapExt("imageAtomicCompSwap");
    constexpr const ImmutableString imageAtomicExchange("imageAtomicExchange");
    constexpr const ImmutableString imageAtomicExchangeExt("imageAtomicExchange");
    constexpr const ImmutableString imageAtomicMax("imageAtomicMax");
    constexpr const ImmutableString imageAtomicMaxExt("imageAtomicMax");
    constexpr const ImmutableString imageAtomicMin("imageAtomicMin");
    constexpr const ImmutableString imageAtomicMinExt("imageAtomicMin");
    constexpr const ImmutableString imageAtomicOr("imageAtomicOr");
    constexpr const ImmutableString imageAtomicOrExt("imageAtomicOr");
    constexpr const ImmutableString imageAtomicXor("imageAtomicXor");
    constexpr const ImmutableString imageAtomicXorExt("imageAtomicXor");
    constexpr const ImmutableString imageLoad("imageLoad");
    constexpr const ImmutableString imageSamples("imageSamples");
    constexpr const ImmutableString imageSize("imageSize");
    constexpr const ImmutableString imageStore("imageStore");
    constexpr const ImmutableString imulExtended("imulExtended");
    constexpr const ImmutableString intBitsToFloat("intBitsToFloat");
    constexpr const ImmutableString interpolateAtCentroid("interpolateAtCentroid");
    constexpr const ImmutableString interpolateAtCentroidExt("interpolateAtCentroid");
    constexpr const ImmutableString interpolateAtOffset("interpolateAtOffset");
    constexpr const ImmutableString interpolateAtOffsetExt("interpolateAtOffset");
    constexpr const ImmutableString interpolateAtSample("interpolateAtSample");
    constexpr const ImmutableString interpolateAtSampleExt("interpolateAtSample");
    constexpr const ImmutableString inverse("inverse");
    constexpr const ImmutableString inversesqrt("inversesqrt");
    constexpr const ImmutableString isinf("isinf");
    constexpr const ImmutableString isnan("isnan");
    constexpr const ImmutableString ldexp("ldexp");
    constexpr const ImmutableString length("length");
    constexpr const ImmutableString lessThan("lessThan");
    constexpr const ImmutableString lessThanEqual("lessThanEqual");
    constexpr const ImmutableString log("log");
    constexpr const ImmutableString log2("log2");
    constexpr const ImmutableString matrixCompMult("matrixCompMult");
    constexpr const ImmutableString max("max");
    constexpr const ImmutableString memoryBarrier("memoryBarrier");
    constexpr const ImmutableString memoryBarrierAtomicCounter("memoryBarrierAtomicCounter");
    constexpr const ImmutableString memoryBarrierBuffer("memoryBarrierBuffer");
    constexpr const ImmutableString memoryBarrierImage("memoryBarrierImage");
    constexpr const ImmutableString memoryBarrierShared("memoryBarrierShared");
    constexpr const ImmutableString min("min");
    constexpr const ImmutableString mix("mix");
    constexpr const ImmutableString mod("mod");
    constexpr const ImmutableString modf("modf");
    constexpr const ImmutableString near("near");
    constexpr const ImmutableString noise1("noise1");
    constexpr const ImmutableString noise2("noise2");
    constexpr const ImmutableString noise3("noise3");
    constexpr const ImmutableString noise4("noise4");
    constexpr const ImmutableString normalize("normalize");
    constexpr const ImmutableString notEqual("notEqual");
    constexpr const ImmutableString notFunc("not");
    constexpr const ImmutableString outerProduct("outerProduct");
    constexpr const ImmutableString packDouble2x32("packDouble2x32");
    constexpr const ImmutableString packHalf2x16("packHalf2x16");
    constexpr const ImmutableString packSnorm2x16("packSnorm2x16");
    constexpr const ImmutableString packSnorm4x8("packSnorm4x8");
    constexpr const ImmutableString packUnorm2x16("packUnorm2x16");
    constexpr const ImmutableString packUnorm4x8("packUnorm4x8");
    constexpr const ImmutableString pow("pow");
    constexpr const ImmutableString radians("radians");
    constexpr const ImmutableString reflect("reflect");
    constexpr const ImmutableString refract("refract");
    constexpr const ImmutableString rgb_2_yuv("rgb_2_yuv");
    constexpr const ImmutableString round("round");
    constexpr const ImmutableString roundEven("roundEven");
    constexpr const ImmutableString shadow1D("shadow1D");
    constexpr const ImmutableString shadow1DLod("shadow1DLod");
    constexpr const ImmutableString shadow1DProj("shadow1DProj");
    constexpr const ImmutableString shadow1DProjLod("shadow1DProjLod");
    constexpr const ImmutableString shadow2D("shadow2D");
    constexpr const ImmutableString shadow2DEXT("shadow2DEXT");
    constexpr const ImmutableString shadow2DLod("shadow2DLod");
    constexpr const ImmutableString shadow2DProj("shadow2DProj");
    constexpr const ImmutableString shadow2DProjEXT("shadow2DProjEXT");
    constexpr const ImmutableString shadow2DProjLod("shadow2DProjLod");
    constexpr const ImmutableString sign("sign");
    constexpr const ImmutableString sin("sin");
    constexpr const ImmutableString sinh("sinh");
    constexpr const ImmutableString smoothstep("smoothstep");
    constexpr const ImmutableString sqrt("sqrt");
    constexpr const ImmutableString step("step");
    constexpr const ImmutableString subpassLoad("subpassLoad");
    constexpr const ImmutableString tan("tan");
    constexpr const ImmutableString tanh("tanh");
    constexpr const ImmutableString texelFetch("texelFetch");
    constexpr const ImmutableString texelFetchExt("texelFetch");
    constexpr const ImmutableString texelFetchOffset("texelFetchOffset");
    constexpr const ImmutableString texture("texture");
    constexpr const ImmutableString texture1D("texture1D");
    constexpr const ImmutableString texture1DLod("texture1DLod");
    constexpr const ImmutableString texture1DProj("texture1DProj");
    constexpr const ImmutableString texture1DProjLod("texture1DProjLod");
    constexpr const ImmutableString texture2D("texture2D");
    constexpr const ImmutableString texture2DGradEXT("texture2DGradEXT");
    constexpr const ImmutableString texture2DLod("texture2DLod");
    constexpr const ImmutableString texture2DLodEXT("texture2DLodEXT");
    constexpr const ImmutableString texture2DProj("texture2DProj");
    constexpr const ImmutableString texture2DProjGradEXT("texture2DProjGradEXT");
    constexpr const ImmutableString texture2DProjLod("texture2DProjLod");
    constexpr const ImmutableString texture2DProjLodEXT("texture2DProjLodEXT");
    constexpr const ImmutableString texture2DRect("texture2DRect");
    constexpr const ImmutableString texture2DRectProj("texture2DRectProj");
    constexpr const ImmutableString texture3D("texture3D");
    constexpr const ImmutableString texture3DLod("texture3DLod");
    constexpr const ImmutableString texture3DProj("texture3DProj");
    constexpr const ImmutableString texture3DProjLod("texture3DProjLod");
    constexpr const ImmutableString textureCube("textureCube");
    constexpr const ImmutableString textureCubeGradEXT("textureCubeGradEXT");
    constexpr const ImmutableString textureCubeLod("textureCubeLod");
    constexpr const ImmutableString textureCubeLodEXT("textureCubeLodEXT");
    constexpr const ImmutableString textureGather("textureGather");
    constexpr const ImmutableString textureGatherOffset("textureGatherOffset");
    constexpr const ImmutableString textureGatherOffsets("textureGatherOffsets");
    constexpr const ImmutableString textureGatherOffsetsExt("textureGatherOffsets");
    constexpr const ImmutableString textureGrad("textureGrad");
    constexpr const ImmutableString textureGradOffset("textureGradOffset");
    constexpr const ImmutableString textureLod("textureLod");
    constexpr const ImmutableString textureLodOffset("textureLodOffset");
    constexpr const ImmutableString textureOffset("textureOffset");
    constexpr const ImmutableString textureProj("textureProj");
    constexpr const ImmutableString textureProjGrad("textureProjGrad");
    constexpr const ImmutableString textureProjGradOffset("textureProjGradOffset");
    constexpr const ImmutableString textureProjLod("textureProjLod");
    constexpr const ImmutableString textureProjLodOffset("textureProjLodOffset");
    constexpr const ImmutableString textureProjOffset("textureProjOffset");
    constexpr const ImmutableString textureQueryLevels("textureQueryLevels");
    constexpr const ImmutableString textureQueryLod("textureQueryLod");
    constexpr const ImmutableString textureSamples("textureSamples");
    constexpr const ImmutableString textureSize("textureSize");
    constexpr const ImmutableString textureSizeExt("textureSize");
    constexpr const ImmutableString textureVideoWEBGL("textureVideoWEBGL");
    constexpr const ImmutableString transpose("transpose");
    constexpr const ImmutableString trunc("trunc");
    constexpr const ImmutableString uaddCarry("uaddCarry");
    constexpr const ImmutableString uintBitsToFloat("uintBitsToFloat");
    constexpr const ImmutableString umulExtended("umulExtended");
    constexpr const ImmutableString unpackDouble2x32("unpackDouble2x32");
    constexpr const ImmutableString unpackHalf2x16("unpackHalf2x16");
    constexpr const ImmutableString unpackSnorm2x16("unpackSnorm2x16");
    constexpr const ImmutableString unpackSnorm4x8("unpackSnorm4x8");
    constexpr const ImmutableString unpackUnorm2x16("unpackUnorm2x16");
    constexpr const ImmutableString unpackUnorm4x8("unpackUnorm4x8");
    constexpr const ImmutableString usubBorrow("usubBorrow");
    constexpr const ImmutableString yuv_2_rgb("yuv_2_rgb");
    
    }  // 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 unsigned int kArraySize4[1] = {4};
    
    constexpr const TVariable kangle_BaseInstance(
        BuiltInId::angle_BaseInstance,
        BuiltInName::angle_BaseInstance,
        SymbolType::BuiltIn,
        TExtension::ANGLE_base_vertex_base_instance,
        StaticType::Get<EbtInt, EbpHigh, EvqBaseInstance, 1, 1>());
    constexpr const TVariable kangle_BaseVertex(
        BuiltInId::angle_BaseVertex,
        BuiltInName::angle_BaseVertex,
        SymbolType::BuiltIn,
        TExtension::ANGLE_base_vertex_base_instance,
        StaticType::Get<EbtInt, EbpHigh, EvqBaseVertex, 1, 1>());
    constexpr const TVariable kgl_BaseInstance(
        BuiltInId::gl_BaseInstance,
        BuiltInName::gl_BaseInstance,
        SymbolType::BuiltIn,
        TExtension::ANGLE_base_vertex_base_instance,
        StaticType::Get<EbtInt, EbpHigh, EvqBaseInstance, 1, 1>());
    constexpr const TVariable kgl_BaseVertex(BuiltInId::gl_BaseVertex,
                                             BuiltInName::gl_BaseVertex,
                                             SymbolType::BuiltIn,
                                             TExtension::ANGLE_base_vertex_base_instance,
                                             StaticType::Get<EbtInt, EbpHigh, EvqBaseVertex, 1, 1>());
    constexpr const TVariable kgl_DrawID(BuiltInId::gl_DrawID,
                                         BuiltInName::gl_DrawID,
                                         SymbolType::BuiltIn,
                                         TExtension::ANGLE_multi_draw,
                                         StaticType::Get<EbtInt, EbpHigh, EvqDrawID, 1, 1>());
    constexpr const TVariable kgl_FragColor(BuiltInId::gl_FragColor,
                                            BuiltInName::gl_FragColor,
                                            SymbolType::BuiltIn,
                                            TExtension::UNDEFINED,
                                            StaticType::Get<EbtFloat, EbpMedium, EvqFragColor, 4, 1>());
    constexpr const TVariable kgl_FragCoord(BuiltInId::gl_FragCoord,
                                            BuiltInName::gl_FragCoord,
                                            SymbolType::BuiltIn,
                                            TExtension::UNDEFINED,
                                            StaticType::Get<EbtFloat, EbpMedium, EvqFragCoord, 4, 1>());
    constexpr const TVariable kgl_FragDepth(BuiltInId::gl_FragDepth,
                                            BuiltInName::gl_FragDepth,
                                            SymbolType::BuiltIn,
                                            TExtension::UNDEFINED,
                                            StaticType::Get<EbtFloat, EbpHigh, EvqFragDepth, 1, 1>());
    constexpr const TVariable kgl_FrontFacing(
        BuiltInId::gl_FrontFacing,
        BuiltInName::gl_FrontFacing,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtBool, EbpUndefined, EvqFrontFacing, 1, 1>());
    constexpr const TVariable kgl_GlobalInvocationID(
        BuiltInId::gl_GlobalInvocationID,
        BuiltInName::gl_GlobalInvocationID,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobalInvocationID, 3, 1>());
    constexpr const TVariable kgl_HelperInvocation(
        BuiltInId::gl_HelperInvocation,
        BuiltInName::gl_HelperInvocation,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtBool, EbpUndefined, EvqHelperInvocation, 1, 1>());
    constexpr const TVariable kgl_InstanceID(BuiltInId::gl_InstanceID,
                                             BuiltInName::gl_InstanceID,
                                             SymbolType::BuiltIn,
                                             TExtension::UNDEFINED,
                                             StaticType::Get<EbtInt, EbpHigh, EvqInstanceID, 1, 1>());
    constexpr const TVariable kgl_InstanceIndex(
        BuiltInId::gl_InstanceIndex,
        BuiltInName::gl_InstanceIndex,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtInt, EbpHigh, EvqInstanceID, 1, 1>());
    constexpr const TVariable kgl_InvocationID(
        BuiltInId::gl_InvocationID,
        BuiltInName::gl_InvocationID,
        SymbolType::BuiltIn,
        TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqInvocationID, 1, 1>());
    constexpr const TVariable kgl_InvocationIDTCS(
        BuiltInId::gl_InvocationIDTCS,
        BuiltInName::gl_InvocationID,
        SymbolType::BuiltIn,
        TExtension::EXT_tessellation_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqInvocationID, 1, 1>());
    constexpr const TVariable kgl_LastFragColor(
        BuiltInId::gl_LastFragColor,
        BuiltInName::gl_LastFragColor,
        SymbolType::BuiltIn,
        TExtension::NV_shader_framebuffer_fetch,
        StaticType::Get<EbtFloat, EbpMedium, EvqLastFragColor, 4, 1>());
    constexpr const TVariable kgl_LastFragColorARM(
        BuiltInId::gl_LastFragColorARM,
        BuiltInName::gl_LastFragColorARM,
        SymbolType::BuiltIn,
        TExtension::ARM_shader_framebuffer_fetch,
        StaticType::Get<EbtFloat, EbpMedium, EvqLastFragColor, 4, 1>());
    constexpr const TVariable kgl_Layer(BuiltInId::gl_Layer,
                                        BuiltInName::gl_Layer,
                                        SymbolType::BuiltIn,
                                        TExtension::EXT_geometry_shader,
                                        StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
    constexpr const TVariable kgl_LayerGS(BuiltInId::gl_LayerGS,
                                          BuiltInName::gl_Layer,
                                          SymbolType::BuiltIn,
                                          TExtension::EXT_geometry_shader,
                                          StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
    constexpr const TVariable kgl_LayerVS(BuiltInId::gl_LayerVS,
                                          BuiltInName::gl_Layer,
                                          SymbolType::BuiltIn,
                                          TExtension::UNDEFINED,
                                          StaticType::Get<EbtInt, EbpHigh, EvqLayer, 1, 1>());
    constexpr const TVariable kgl_LocalInvocationID(
        BuiltInId::gl_LocalInvocationID,
        BuiltInName::gl_LocalInvocationID,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqLocalInvocationID, 3, 1>());
    constexpr const TVariable kgl_LocalInvocationIndex(
        BuiltInId::gl_LocalInvocationIndex,
        BuiltInName::gl_LocalInvocationIndex,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqLocalInvocationIndex, 1, 1>());
    constexpr const TVariable kgl_NumSamples(BuiltInId::gl_NumSamples,
                                             BuiltInName::gl_NumSamples,
                                             SymbolType::BuiltIn,
                                             TExtension::OES_sample_variables,
                                             StaticType::Get<EbtInt, EbpLow, EvqUniform, 1, 1>());
    constexpr const TVariable kgl_NumWorkGroups(
        BuiltInId::gl_NumWorkGroups,
        BuiltInName::gl_NumWorkGroups,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqNumWorkGroups, 3, 1>());
    constexpr const TVariable kgl_PatchVerticesInTCS(
        BuiltInId::gl_PatchVerticesInTCS,
        BuiltInName::gl_PatchVerticesIn,
        SymbolType::BuiltIn,
        TExtension::EXT_tessellation_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPatchVerticesIn, 1, 1>());
    constexpr const TVariable kgl_PatchVerticesInTES(
        BuiltInId::gl_PatchVerticesInTES,
        BuiltInName::gl_PatchVerticesIn,
        SymbolType::BuiltIn,
        TExtension::EXT_tessellation_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPatchVerticesIn, 1, 1>());
    constexpr const TVariable kgl_PointCoord(
        BuiltInId::gl_PointCoord,
        BuiltInName::gl_PointCoord,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtFloat, EbpMedium, EvqPointCoord, 2, 1>());
    constexpr const TVariable kgl_PointSize(BuiltInId::gl_PointSize,
                                            BuiltInName::gl_PointSize,
                                            SymbolType::BuiltIn,
                                            TExtension::UNDEFINED,
                                            StaticType::Get<EbtFloat, EbpMedium, EvqPointSize, 1, 1>());
    constexpr const TVariable kgl_Position(BuiltInId::gl_Position,
                                           BuiltInName::gl_Position,
                                           SymbolType::BuiltIn,
                                           TExtension::UNDEFINED,
                                           StaticType::Get<EbtFloat, EbpHigh, EvqPosition, 4, 1>());
    constexpr const TVariable kgl_PrimitiveID(BuiltInId::gl_PrimitiveID,
                                              BuiltInName::gl_PrimitiveID,
                                              SymbolType::BuiltIn,
                                              TExtension::EXT_geometry_shader,
                                              StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
    constexpr const TVariable kgl_PrimitiveIDGS(
        BuiltInId::gl_PrimitiveIDGS,
        BuiltInName::gl_PrimitiveID,
        SymbolType::BuiltIn,
        TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
    constexpr const TVariable kgl_PrimitiveIDIn(
        BuiltInId::gl_PrimitiveIDIn,
        BuiltInName::gl_PrimitiveIDIn,
        SymbolType::BuiltIn,
        TExtension::EXT_geometry_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveIDIn, 1, 1>());
    constexpr const TVariable kgl_PrimitiveIDTCS(
        BuiltInId::gl_PrimitiveIDTCS,
        BuiltInName::gl_PrimitiveID,
        SymbolType::BuiltIn,
        TExtension::EXT_tessellation_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
    constexpr const TVariable kgl_PrimitiveIDTES(
        BuiltInId::gl_PrimitiveIDTES,
        BuiltInName::gl_PrimitiveID,
        SymbolType::BuiltIn,
        TExtension::EXT_tessellation_shader,
        StaticType::Get<EbtInt, EbpHigh, EvqPrimitiveID, 1, 1>());
    constexpr const TVariable kgl_SampleID(BuiltInId::gl_SampleID,
                                           BuiltInName::gl_SampleID,
                                           SymbolType::BuiltIn,
                                           TExtension::OES_sample_variables,
                                           StaticType::Get<EbtInt, EbpLow, EvqSampleID, 1, 1>());
    constexpr const TVariable kgl_SamplePosition(
        BuiltInId::gl_SamplePosition,
        BuiltInName::gl_SamplePosition,
        SymbolType::BuiltIn,
        TExtension::OES_sample_variables,
        StaticType::Get<EbtFloat, EbpMedium, EvqSamplePosition, 2, 1>());
    constexpr const TVariable kgl_SecondaryFragColorEXT(
        BuiltInId::gl_SecondaryFragColorEXT,
        BuiltInName::gl_SecondaryFragColorEXT,
        SymbolType::BuiltIn,
        TExtension::EXT_blend_func_extended,
        StaticType::Get<EbtFloat, EbpMedium, EvqSecondaryFragColorEXT, 4, 1>());
    constexpr const TVariable kgl_TessCoord(BuiltInId::gl_TessCoord,
                                            BuiltInName::gl_TessCoord,
                                            SymbolType::BuiltIn,
                                            TExtension::UNDEFINED,
                                            StaticType::Get<EbtFloat, EbpHigh, EvqGlobal, 3, 1>());
    constexpr const TVariable kgl_VertexID(BuiltInId::gl_VertexID,
                                           BuiltInName::gl_VertexID,
                                           SymbolType::BuiltIn,
                                           TExtension::UNDEFINED,
                                           StaticType::Get<EbtInt, EbpHigh, EvqVertexID, 1, 1>());
    constexpr const TVariable kgl_VertexIndex(BuiltInId::gl_VertexIndex,
                                              BuiltInName::gl_VertexIndex,
                                              SymbolType::BuiltIn,
                                              TExtension::UNDEFINED,
                                              StaticType::Get<EbtInt, EbpHigh, EvqVertexID, 1, 1>());
    constexpr const TVariable kgl_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 kgl_ViewportIndex(
        BuiltInId::gl_ViewportIndex,
        BuiltInName::gl_ViewportIndex,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtInt, EbpHigh, EvqViewportIndex, 1, 1>());
    constexpr const TVariable kgl_WorkGroupID(
        BuiltInId::gl_WorkGroupID,
        BuiltInName::gl_WorkGroupID,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqWorkGroupID, 3, 1>());
    constexpr const TVariable kgl_WorkGroupSize(
        BuiltInId::gl_WorkGroupSize,
        BuiltInName::gl_WorkGroupSize,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUInt, EbpUndefined, EvqWorkGroupSize, 3, 1>());
    constexpr const TVariable kpt00B(BuiltInId::pt00B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00C(BuiltInId::pt00C,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00D(BuiltInId::pt00D,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00E(BuiltInId::pt00E,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00F(BuiltInId::pt00F,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00G(
        BuiltInId::pt00G,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtAtomicCounter, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00H(
        BuiltInId::pt00H,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtYuvCscStandardEXT, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00I(BuiltInId::pt00I,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSampler2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00J(BuiltInId::pt00J,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSampler3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00K(BuiltInId::pt00K,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00L(
        BuiltInId::pt00L,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00M(
        BuiltInId::pt00M,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerExternalOES, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00N(
        BuiltInId::pt00N,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerExternal2DY2YEXT, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00O(
        BuiltInId::pt00O,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00P(BuiltInId::pt00P,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00Q(
        BuiltInId::pt00Q,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00R(BuiltInId::pt00R,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtISampler2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00S(BuiltInId::pt00S,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtISampler3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00T(BuiltInId::pt00T,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtISamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00U(
        BuiltInId::pt00U,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00V(BuiltInId::pt00V,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtISampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00W(
        BuiltInId::pt00W,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISampler2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00X(BuiltInId::pt00X,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUSampler2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00Y(BuiltInId::pt00Y,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUSampler3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00Z(BuiltInId::pt00Z,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUSamplerCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00a(
        BuiltInId::pt00a,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSampler2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00b(BuiltInId::pt00b,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUSampler2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00c(
        BuiltInId::pt00c,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSampler2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00d(
        BuiltInId::pt00d,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00e(
        BuiltInId::pt00e,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerCubeShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00f(
        BuiltInId::pt00f,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DArrayShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00g(BuiltInId::pt00g,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSampler1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00h(
        BuiltInId::pt00h,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00i(
        BuiltInId::pt00i,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler1DArrayShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00j(
        BuiltInId::pt00j,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00k(
        BuiltInId::pt00k,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00l(
        BuiltInId::pt00l,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerCubeArrayShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00m(
        BuiltInId::pt00m,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler1DShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00n(
        BuiltInId::pt00n,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSampler2DRectShadow, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00o(BuiltInId::pt00o,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtISampler1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00p(
        BuiltInId::pt00p,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISampler1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00q(
        BuiltInId::pt00q,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISampler2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00r(
        BuiltInId::pt00r,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISamplerBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00s(
        BuiltInId::pt00s,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISamplerCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00t(BuiltInId::pt00t,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUSampler1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00u(
        BuiltInId::pt00u,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSampler1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00v(
        BuiltInId::pt00v,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSampler2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00w(
        BuiltInId::pt00w,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSamplerBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00x(
        BuiltInId::pt00x,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSamplerCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00y(
        BuiltInId::pt00y,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSamplerVideoWEBGL, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt00z(BuiltInId::pt00z,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01A(BuiltInId::pt01A,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImage2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01B(BuiltInId::pt01B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImage2D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01C(BuiltInId::pt01C,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01D(BuiltInId::pt01D,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImage3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01E(BuiltInId::pt01E,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImage3D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01F(BuiltInId::pt01F,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01G(
        BuiltInId::pt01G,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtIImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01H(
        BuiltInId::pt01H,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUImage2DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01I(BuiltInId::pt01I,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImageCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01J(BuiltInId::pt01J,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImageCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01K(BuiltInId::pt01K,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImageCube, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01L(BuiltInId::pt01L,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01M(BuiltInId::pt01M,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImage1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01N(BuiltInId::pt01N,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImage1D, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01O(BuiltInId::pt01O,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01P(
        BuiltInId::pt01P,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtIImage1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01Q(
        BuiltInId::pt01Q,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUImage1DArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01R(BuiltInId::pt01R,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01S(BuiltInId::pt01S,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImage2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01T(BuiltInId::pt01T,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImage2DMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01U(
        BuiltInId::pt01U,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtImage2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01V(
        BuiltInId::pt01V,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtIImage2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01W(
        BuiltInId::pt01W,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUImage2DMSArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01X(BuiltInId::pt01X,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImage2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01Y(BuiltInId::pt01Y,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImage2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01Z(BuiltInId::pt01Z,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImage2DRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01a(
        BuiltInId::pt01a,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtImageCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01b(
        BuiltInId::pt01b,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtIImageCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01c(
        BuiltInId::pt01c,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUImageCubeArray, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01d(BuiltInId::pt01d,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImageRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01e(BuiltInId::pt01e,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImageRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01f(BuiltInId::pt01f,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImageRect, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01g(BuiltInId::pt01g,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtImageBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01h(BuiltInId::pt01h,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtIImageBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01i(BuiltInId::pt01i,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUImageBuffer, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01j(BuiltInId::pt01j,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtSubpassInput, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01k(
        BuiltInId::pt01k,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISubpassInput, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01l(
        BuiltInId::pt01l,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSubpassInput, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01m(
        BuiltInId::pt01m,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtSubpassInputMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01n(
        BuiltInId::pt01n,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtISubpassInputMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt01o(
        BuiltInId::pt01o,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::Get<EbtUSubpassInputMS, EbpUndefined, EvqGlobal, 1, 1>());
    constexpr const TVariable kpt10B(BuiltInId::pt10B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>());
    constexpr const TVariable kpt10C(BuiltInId::pt10C,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>());
    constexpr const TVariable kpt10D(BuiltInId::pt10D,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>());
    constexpr const TVariable kpt10Dx4(
        BuiltInId::pt10Dx4,
        BuiltInName::_empty,
        SymbolType::BuiltIn,
        TExtension::UNDEFINED,
        StaticType::GetArray<EbtInt, EbpUndefined, EvqGlobal, 2, 1, kArraySize4, 1>());
    constexpr const TVariable kpt10E(BuiltInId::pt10E,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>());
    constexpr const TVariable kpt10F(BuiltInId::pt10F,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>());
    constexpr const TVariable kpt20B(BuiltInId::pt20B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>());
    constexpr const TVariable kpt20C(BuiltInId::pt20C,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>());
    constexpr const TVariable kpt20D(BuiltInId::pt20D,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>());
    constexpr const TVariable kpt20E(BuiltInId::pt20E,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>());
    constexpr const TVariable kpt20F(BuiltInId::pt20F,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>());
    constexpr const TVariable kpt30B(BuiltInId::pt30B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>());
    constexpr const TVariable kpt30C(BuiltInId::pt30C,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>());
    constexpr const TVariable kpt30D(BuiltInId::pt30D,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>());
    constexpr const TVariable kpt30E(BuiltInId::pt30E,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>());
    constexpr const TVariable kpt30F(BuiltInId::pt30F,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>());
    constexpr const TVariable kpt50B(BuiltInId::pt50B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>());
    constexpr const TVariable kpt60B(BuiltInId::pt60B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>());
    constexpr const TVariable kpt70B(BuiltInId::pt70B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>());
    constexpr const TVariable kpt90B(BuiltInId::pt90B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>());
    constexpr const TVariable kptA0B(BuiltInId::ptA0B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>());
    constexpr const TVariable kptB0B(BuiltInId::ptB0B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>());
    constexpr const TVariable kptD0B(BuiltInId::ptD0B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>());
    constexpr const TVariable kptE0B(BuiltInId::ptE0B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>());
    constexpr const TVariable kptF0B(BuiltInId::ptF0B,
                                     BuiltInName::_empty,
                                     SymbolType::BuiltIn,
                                     TExtension::UNDEFINED,
                                     StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>());
    constexpr const TVariable kpt_io_00D(BuiltInId::pt_io_00D,
                                         BuiltInName::_empty,
                                         SymbolType::BuiltIn,
                                         TExtension::UNDEFINED,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqInOut, 1, 1>());
    constexpr const TVariable kpt_io_00E(BuiltInId::pt_io_00E,
                                         BuiltInName::_empty,
                                         SymbolType::BuiltIn,
                                         TExtension::UNDEFINED,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqInOut, 1, 1>());
    constexpr const TVariable kpt_o_00B(BuiltInId::pt_o_00B,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 1, 1>());
    constexpr const TVariable kpt_o_00C(BuiltInId::pt_o_00C,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqOut, 1, 1>());
    constexpr const TVariable kpt_o_00D(BuiltInId::pt_o_00D,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtInt, EbpUndefined, EvqOut, 1, 1>());
    constexpr const TVariable kpt_o_00E(BuiltInId::pt_o_00E,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 1, 1>());
    constexpr const TVariable kpt_o_10B(BuiltInId::pt_o_10B,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 2, 1>());
    constexpr const TVariable kpt_o_10C(BuiltInId::pt_o_10C,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqOut, 2, 1>());
    constexpr const TVariable kpt_o_10D(BuiltInId::pt_o_10D,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtInt, EbpUndefined, EvqOut, 2, 1>());
    constexpr const TVariable kpt_o_10E(BuiltInId::pt_o_10E,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 2, 1>());
    constexpr const TVariable kpt_o_20B(BuiltInId::pt_o_20B,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 3, 1>());
    constexpr const TVariable kpt_o_20C(BuiltInId::pt_o_20C,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqOut, 3, 1>());
    constexpr const TVariable kpt_o_20D(BuiltInId::pt_o_20D,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtInt, EbpUndefined, EvqOut, 3, 1>());
    constexpr const TVariable kpt_o_20E(BuiltInId::pt_o_20E,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 3, 1>());
    constexpr const TVariable kpt_o_30B(BuiltInId::pt_o_30B,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqOut, 4, 1>());
    constexpr const TVariable kpt_o_30C(BuiltInId::pt_o_30C,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqOut, 4, 1>());
    constexpr const TVariable kpt_o_30D(BuiltInId::pt_o_30D,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtInt, EbpUndefined, EvqOut, 4, 1>());
    constexpr const TVariable kpt_o_30E(BuiltInId::pt_o_30E,
                                        BuiltInName::_empty,
                                        SymbolType::BuiltIn,
                                        TExtension::UNDEFINED,
                                        StaticType::Get<EbtUInt, EbpUndefined, EvqOut, 4, 1>());
    
    const TVariable *angle_BaseInstance()
    {
        return &kangle_BaseInstance;
    }
    
    const TVariable *angle_BaseVertex()
    {
        return &kangle_BaseVertex;
    }
    
    const TVariable *gl_BaseInstance()
    {
        return &kgl_BaseInstance;
    }
    
    const TVariable *gl_BaseVertex()
    {
        return &kgl_BaseVertex;
    }
    
    const TVariable *gl_DrawID()
    {
        return &kgl_DrawID;
    }
    
    const TVariable *gl_FragColor()
    {
        return &kgl_FragColor;
    }
    
    const TVariable *gl_FragCoord()
    {
        return &kgl_FragCoord;
    }
    
    const TVariable *gl_FragDepth()
    {
        return &kgl_FragDepth;
    }
    
    const TVariable *gl_FrontFacing()
    {
        return &kgl_FrontFacing;
    }
    
    const TVariable *gl_GlobalInvocationID()
    {
        return &kgl_GlobalInvocationID;
    }
    
    const TVariable *gl_HelperInvocation()
    {
        return &kgl_HelperInvocation;
    }
    
    const TVariable *gl_InstanceID()
    {
        return &kgl_InstanceID;
    }
    
    const TVariable *gl_InstanceIndex()
    {
        return &kgl_InstanceIndex;
    }
    
    const TVariable *gl_InvocationID()
    {
        return &kgl_InvocationID;
    }
    
    const TVariable *gl_InvocationIDTCS()
    {
        return &kgl_InvocationIDTCS;
    }
    
    const TVariable *gl_LastFragColor()
    {
        return &kgl_LastFragColor;
    }
    
    const TVariable *gl_LastFragColorARM()
    {
        return &kgl_LastFragColorARM;
    }
    
    const TVariable *gl_Layer()
    {
        return &kgl_Layer;
    }
    
    const TVariable *gl_LayerGS()
    {
        return &kgl_LayerGS;
    }
    
    const TVariable *gl_LayerVS()
    {
        return &kgl_LayerVS;
    }
    
    const TVariable *gl_LocalInvocationID()
    {
        return &kgl_LocalInvocationID;
    }
    
    const TVariable *gl_LocalInvocationIndex()
    {
        return &kgl_LocalInvocationIndex;
    }
    
    const TVariable *gl_NumSamples()
    {
        return &kgl_NumSamples;
    }
    
    const TVariable *gl_NumWorkGroups()
    {
        return &kgl_NumWorkGroups;
    }
    
    const TVariable *gl_PatchVerticesInTCS()
    {
        return &kgl_PatchVerticesInTCS;
    }
    
    const TVariable *gl_PatchVerticesInTES()
    {
        return &kgl_PatchVerticesInTES;
    }
    
    const TVariable *gl_PointCoord()
    {
        return &kgl_PointCoord;
    }
    
    const TVariable *gl_PointSize()
    {
        return &kgl_PointSize;
    }
    
    const TVariable *gl_Position()
    {
        return &kgl_Position;
    }
    
    const TVariable *gl_PrimitiveID()
    {
        return &kgl_PrimitiveID;
    }
    
    const TVariable *gl_PrimitiveIDGS()
    {
        return &kgl_PrimitiveIDGS;
    }
    
    const TVariable *gl_PrimitiveIDIn()
    {
        return &kgl_PrimitiveIDIn;
    }
    
    const TVariable *gl_PrimitiveIDTCS()
    {
        return &kgl_PrimitiveIDTCS;
    }
    
    const TVariable *gl_PrimitiveIDTES()
    {
        return &kgl_PrimitiveIDTES;
    }
    
    const TVariable *gl_SampleID()
    {
        return &kgl_SampleID;
    }
    
    const TVariable *gl_SamplePosition()
    {
        return &kgl_SamplePosition;
    }
    
    const TVariable *gl_SecondaryFragColorEXT()
    {
        return &kgl_SecondaryFragColorEXT;
    }
    
    const TVariable *gl_TessCoord()
    {
        return &kgl_TessCoord;
    }
    
    const TVariable *gl_VertexID()
    {
        return &kgl_VertexID;
    }
    
    const TVariable *gl_VertexIndex()
    {
        return &kgl_VertexIndex;
    }
    
    const TVariable *gl_ViewID_OVR()
    {
        return &kgl_ViewID_OVR;
    }
    
    const TVariable *gl_ViewportIndex()
    {
        return &kgl_ViewportIndex;
    }
    
    const TVariable *gl_WorkGroupID()
    {
        return &kgl_WorkGroupID;
    }
    
    const TVariable *gl_WorkGroupSize()
    {
        return &kgl_WorkGroupSize;
    }
    
    }  // namespace BuiltInVariable
    
    namespace BuiltInParameters
    {
    
    constexpr const TVariable **empty        = nullptr;
    constexpr const TVariable *p00B00B00B[3] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00B00B00F[3] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt00F};
    constexpr const TVariable *p00B00B10B[3] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00B00B20B[3] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00B00B30B[3] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p00B00D[2]    = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00B10B[2]    = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00B20B[2]    = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00B30B[2]    = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt30B};
    constexpr const TVariable *p00B_o_00B[2] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt_o_00B};
    constexpr const TVariable *p00B_o_00D[2] = {&BuiltInVariable::kpt00B, &BuiltInVariable::kpt_o_00D};
    constexpr const TVariable *p00C00C00B[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00C00C00C[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p00C00C00F[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00F};
    constexpr const TVariable *p00C00C10C[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt10C};
    constexpr const TVariable *p00C00C20C[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt20C};
    constexpr const TVariable *p00C00C30C[3] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt30C};
    constexpr const TVariable *p00C00D[2]    = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00C10C[2]    = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt10C};
    constexpr const TVariable *p00C20C[2]    = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt20C};
    constexpr const TVariable *p00C30C[2]    = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt30C};
    constexpr const TVariable *p00C_o_00C[2] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt_o_00C};
    constexpr const TVariable *p00C_o_00D[2] = {&BuiltInVariable::kpt00C, &BuiltInVariable::kpt_o_00D};
    constexpr const TVariable *p00D00D00D00D[4] = {&BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00D00D00F[3]    = {&BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00F};
    constexpr const TVariable *p00D00D_o_00D_o_00D[4] = {
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D, &BuiltInVariable::kpt_o_00D,
        &BuiltInVariable::kpt_o_00D};
    constexpr const TVariable *p00E00D00D[3]    = {&BuiltInVariable::kpt00E, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00E00E00D00D[4] = {&BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00E00E00E[3]    = {&BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00E};
    constexpr const TVariable *p00E00E00F[3]    = {&BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00F};
    constexpr const TVariable *p00E00E_o_00E_o_00E[4] = {
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E, &BuiltInVariable::kpt_o_00E,
        &BuiltInVariable::kpt_o_00E};
    constexpr const TVariable *p00F00F00F[3]    = {&BuiltInVariable::kpt00F, &BuiltInVariable::kpt00F,
                                                &BuiltInVariable::kpt00F};
    constexpr const TVariable *p00G00E00E[3]    = {&BuiltInVariable::kpt00G, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00E};
    constexpr const TVariable *p00I00B00B00B[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00I00D[2]       = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00I10B00B10D[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I10B00D[3]    = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00I10B10B10B10D[5] = {
        &BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I10B10D00B[4]   = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00I10B10D00D[4]   = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00I10B10Dx400D[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00I10D00D10D[4]   = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I20B00B10D[4]   = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I20B10B10B10D[5] = {
        &BuiltInVariable::kpt00I, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I20B10D00B[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00I30B00B10D[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I30B10B10B10D[5] = {
        &BuiltInVariable::kpt00I, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00I30B10D00B[4] = {&BuiltInVariable::kpt00I, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00J00D[2]       = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00J20B00B20D[4] = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00J20B20B20B20D[5] = {
        &BuiltInVariable::kpt00J, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00J20B20D00B[4] = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00J20D00D20D[4] = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00J30B00B20D[4] = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00J30B20B20B20D[5] = {
        &BuiltInVariable::kpt00J, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00J30B20D00B[4] = {&BuiltInVariable::kpt00J, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00K00D[2]       = {&BuiltInVariable::kpt00K, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00K20B00B[3]    = {&BuiltInVariable::kpt00K, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00K20B00D[3]    = {&BuiltInVariable::kpt00K, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00K20B20B20B[4] = {&BuiltInVariable::kpt00K, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00L00D[2]       = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00L10B[2]       = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00L20B00B10D[4] = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00L20B00D[3]    = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00L20B10B10B10D[5] = {
        &BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00L20B10D00B[4]   = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00L20B10D00D[4]   = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00L20B10Dx400D[4] = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00L20D00D10D[4]   = {&BuiltInVariable::kpt00L, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00M00D[2]    = {&BuiltInVariable::kpt00M, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00M10B00B[3] = {&BuiltInVariable::kpt00M, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00M10D00D[3] = {&BuiltInVariable::kpt00M, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00M20B00B[3] = {&BuiltInVariable::kpt00M, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00M30B00B[3] = {&BuiltInVariable::kpt00M, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00N00D[2]    = {&BuiltInVariable::kpt00N, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00N10B00B[3] = {&BuiltInVariable::kpt00N, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00N10D00D[3] = {&BuiltInVariable::kpt00N, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00N20B00B[3] = {&BuiltInVariable::kpt00N, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00N30B00B[3] = {&BuiltInVariable::kpt00N, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00O10B10B10B10D[5] = {
        &BuiltInVariable::kpt00O, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00O10B10D00D[4]   = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00O10B10Dx400D[4] = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00O10D10D[3]      = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00O20B00D[3]      = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00O20B10B10B10D[5] = {
        &BuiltInVariable::kpt00O, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00O20B10D[3] = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00O30B10B10B10D[5] = {
        &BuiltInVariable::kpt00O, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00O30B10D[3]    = {&BuiltInVariable::kpt00O, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00P10D00D[3]    = {&BuiltInVariable::kpt00P, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00Q20D00D[3]    = {&BuiltInVariable::kpt00Q, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00R00B00B00B[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00R00D[2]       = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00R10B00B10D[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R10B00D[3]    = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00R10B10B10B10D[5] = {
        &BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R10B10D00B[4]   = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00R10B10D00D[4]   = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00R10B10Dx400D[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00R10D00D10D[4]   = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R20B00B10D[4]   = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R20B10B10B10D[5] = {
        &BuiltInVariable::kpt00R, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R20B10D00B[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00R30B00B10D[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R30B10B10B10D[5] = {
        &BuiltInVariable::kpt00R, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00R30B10D00B[4] = {&BuiltInVariable::kpt00R, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00S00D[2]       = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00S20B00B20D[4] = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00S20B20B20B20D[5] = {
        &BuiltInVariable::kpt00S, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00S20B20D00B[4] = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00S20D00D20D[4] = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00S30B00B20D[4] = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00S30B20B20B20D[5] = {
        &BuiltInVariable::kpt00S, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00S30B20D00B[4] = {&BuiltInVariable::kpt00S, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00T00D[2]       = {&BuiltInVariable::kpt00T, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00T20B00B[3]    = {&BuiltInVariable::kpt00T, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00T20B00D[3]    = {&BuiltInVariable::kpt00T, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00T20B20B20B[4] = {&BuiltInVariable::kpt00T, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00U00D[2]       = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00U10B[2]       = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00U20B00B10D[4] = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00U20B00D[3]    = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00U20B10B10B10D[5] = {
        &BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00U20B10D00B[4]   = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00U20B10D00D[4]   = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00U20B10Dx400D[4] = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00U20D00D10D[4]   = {&BuiltInVariable::kpt00U, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00V10D00D[3]      = {&BuiltInVariable::kpt00V, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00W20D00D[3]      = {&BuiltInVariable::kpt00W, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00X00B00B00B[4]   = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00X00D[2]       = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00X10B00B10D[4] = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X10B00D[3]    = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00X10B10B10B10D[5] = {
        &BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X10B10D00B[4]   = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00X10B10D00D[4]   = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00X10B10Dx400D[4] = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00X10D00D10D[4]   = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X20B00B10D[4]   = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X20B10B10B10D[5] = {
        &BuiltInVariable::kpt00X, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X20B10D00B[4] = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00X30B00B10D[4] = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X30B10B10B10D[5] = {
        &BuiltInVariable::kpt00X, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00X30B10D00B[4] = {&BuiltInVariable::kpt00X, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00Y00D[2]       = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00Y20B00B20D[4] = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00Y20B20B20B20D[5] = {
        &BuiltInVariable::kpt00Y, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00Y20B20D00B[4] = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00Y20D00D20D[4] = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00Y30B00B20D[4] = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00Y30B20B20B20D[5] = {
        &BuiltInVariable::kpt00Y, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt20B,
        &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p00Y30B20D00B[4] = {&BuiltInVariable::kpt00Y, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00Z00D[2]       = {&BuiltInVariable::kpt00Z, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00Z20B00B[3]    = {&BuiltInVariable::kpt00Z, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00Z20B00D[3]    = {&BuiltInVariable::kpt00Z, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00Z20B20B20B[4] = {&BuiltInVariable::kpt00Z, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00a00D[2]       = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00a10B[2]       = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00a20B00B10D[4] = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00a20B00D[3]    = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00a20B10B10B10D[5] = {
        &BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00a20B10D00B[4]   = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00a20B10D00D[4]   = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00a20B10Dx400D[4] = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00a20D00D10D[4]   = {&BuiltInVariable::kpt00a, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00b10D00D[3]      = {&BuiltInVariable::kpt00b, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00c20D00D[3]      = {&BuiltInVariable::kpt00c, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00d00D[2] = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00d10B00B10Dx4[4] = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt00B,
                                                     &BuiltInVariable::kpt10Dx4};
    constexpr const TVariable *p00d20B00B10D[4]   = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00d20B10B10B10D[5] = {
        &BuiltInVariable::kpt00d, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00d20B10D00B[4] = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00d30B00B10D[4] = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00d30B10B10B10D[5] = {
        &BuiltInVariable::kpt00d, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00d30B10D00B[4] = {&BuiltInVariable::kpt00d, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00e00D[2]       = {&BuiltInVariable::kpt00e, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00e20B00B[3]    = {&BuiltInVariable::kpt00e, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00e30B00B[3]    = {&BuiltInVariable::kpt00e, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00e30B20B20B[4] = {&BuiltInVariable::kpt00e, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00f00D[2]       = {&BuiltInVariable::kpt00f, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00f10B[2]       = {&BuiltInVariable::kpt00f, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00f20B00B10Dx4[4] = {&BuiltInVariable::kpt00f, &BuiltInVariable::kpt20B,
                                                     &BuiltInVariable::kpt00B,
                                                     &BuiltInVariable::kpt10Dx4};
    constexpr const TVariable *p00f30B00B[3]      = {&BuiltInVariable::kpt00f, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00f30B10B10B10D[5] = {
        &BuiltInVariable::kpt00f, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00f30B10D[3] = {&BuiltInVariable::kpt00f, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00g00B00B00B00D[5] = {
        &BuiltInVariable::kpt00g, &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g00B00B00D[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g00B00D00B[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00g00D00D00D[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g10B00B00B00D[5] = {
        &BuiltInVariable::kpt00g, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g10B00B00D[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g10B00D00B[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00g30B00B00B00D[5] = {
        &BuiltInVariable::kpt00g, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g30B00B00D[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00g30B00D00B[4] = {&BuiltInVariable::kpt00g, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00h00B[2]       = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00h00D[2]       = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00h10B00B00B00D[5] = {
        &BuiltInVariable::kpt00h, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00h10B00B00D[4] = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00h10B00D00B[4] = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00h10D00D00D[4] = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00h20B00B[3]    = {&BuiltInVariable::kpt00h, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00i00B[2]       = {&BuiltInVariable::kpt00i, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00i00D[2]       = {&BuiltInVariable::kpt00i, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00i20B00B00B00D[5] = {
        &BuiltInVariable::kpt00i, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00i20B00B00D[4] = {&BuiltInVariable::kpt00i, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00i20B00D00B[4] = {&BuiltInVariable::kpt00i, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00j00D[2]       = {&BuiltInVariable::kpt00j, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00k00D[2]       = {&BuiltInVariable::kpt00k, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00k20B[2]       = {&BuiltInVariable::kpt00k, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00k30B00B[3]    = {&BuiltInVariable::kpt00k, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00k30B00D[3]    = {&BuiltInVariable::kpt00k, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00k30B20B20B[4] = {&BuiltInVariable::kpt00k, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00l00D[2]       = {&BuiltInVariable::kpt00l, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00l20B[2]       = {&BuiltInVariable::kpt00l, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00l30B00B[3]    = {&BuiltInVariable::kpt00l, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00m00B[2]       = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00m00D[2]       = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00m20B00B00B00D[5] = {
        &BuiltInVariable::kpt00m, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00m20B00B00D[4] = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00m20B00D00B[4] = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt20B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00m30B00B00B00D[5] = {
        &BuiltInVariable::kpt00m, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00m30B00B00D[4]   = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00m30B00D00B[4]   = {&BuiltInVariable::kpt00m, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00n10B00B10Dx4[4] = {&BuiltInVariable::kpt00n, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt00B,
                                                     &BuiltInVariable::kpt10Dx4};
    constexpr const TVariable *p00n20B10B10B10D[5] = {
        &BuiltInVariable::kpt00n, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00n20B10D[3] = {&BuiltInVariable::kpt00n, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00n30B10B10B10D[5] = {
        &BuiltInVariable::kpt00n, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00n30B10D[3] = {&BuiltInVariable::kpt00n, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00o00B00B00B00D[5] = {
        &BuiltInVariable::kpt00o, &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o00B00B00D[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o00B00D00B[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00o00D00D00D[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o10B00B00B00D[5] = {
        &BuiltInVariable::kpt00o, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o10B00B00D[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o10B00D00B[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00o30B00B00B00D[5] = {
        &BuiltInVariable::kpt00o, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o30B00B00D[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00o30B00D00B[4] = {&BuiltInVariable::kpt00o, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00p00B[2]       = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00p00D[2]       = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00p10B00B00B00D[5] = {
        &BuiltInVariable::kpt00p, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00p10B00B00D[4] = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00p10B00D00B[4] = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00p10D00D00D[4] = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00p20B00B[3]    = {&BuiltInVariable::kpt00p, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00q10B10B10B10D[5] = {
        &BuiltInVariable::kpt00q, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00q10B10D00D[4]   = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00q10B10Dx400D[4] = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00q10D10D[3]      = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00q20B00D[3]      = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00q20B10B10B10D[5] = {
        &BuiltInVariable::kpt00q, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00q20B10D[3] = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00q30B10B10B10D[5] = {
        &BuiltInVariable::kpt00q, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00q30B10D[3]    = {&BuiltInVariable::kpt00q, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00r00D[2]       = {&BuiltInVariable::kpt00r, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00s00D[2]       = {&BuiltInVariable::kpt00s, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00s20B[2]       = {&BuiltInVariable::kpt00s, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00s30B00B[3]    = {&BuiltInVariable::kpt00s, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00s30B00D[3]    = {&BuiltInVariable::kpt00s, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00s30B20B20B[4] = {&BuiltInVariable::kpt00s, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00t00B00B00B00D[5] = {
        &BuiltInVariable::kpt00t, &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t00B00B00D[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t00B00D00B[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt00B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00t00D00D00D[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t10B00B00B00D[5] = {
        &BuiltInVariable::kpt00t, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t10B00B00D[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t10B00D00B[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00t30B00B00B00D[5] = {
        &BuiltInVariable::kpt00t, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t30B00B00D[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00t30B00D00B[4] = {&BuiltInVariable::kpt00t, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00u00B[2]       = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00u00D[2]       = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00u10B00B00B00D[5] = {
        &BuiltInVariable::kpt00u, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
        &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00u10B00B00D[4] = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00u10B00D00B[4] = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00u10D00D00D[4] = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00u20B00B[3]    = {&BuiltInVariable::kpt00u, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00v10B10B10B10D[5] = {
        &BuiltInVariable::kpt00v, &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00v10B10D00D[4]   = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt10B,
                                                   &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00v10B10Dx400D[4] = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt10B,
                                                     &BuiltInVariable::kpt10Dx4,
                                                     &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00v10D10D[3]      = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00v20B00D[3]      = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00v20B10B10B10D[5] = {
        &BuiltInVariable::kpt00v, &BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00v20B10D[3] = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00v30B10B10B10D[5] = {
        &BuiltInVariable::kpt00v, &BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B,
        &BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00v30B10D[3]    = {&BuiltInVariable::kpt00v, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p00w00D[2]       = {&BuiltInVariable::kpt00w, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00x00D[2]       = {&BuiltInVariable::kpt00x, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00x20B[2]       = {&BuiltInVariable::kpt00x, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00x30B00B[3]    = {&BuiltInVariable::kpt00x, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00x30B00D[3]    = {&BuiltInVariable::kpt00x, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00x30B20B20B[4] = {&BuiltInVariable::kpt00x, &BuiltInVariable::kpt30B,
                                                   &BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p00y10B[2]       = {&BuiltInVariable::kpt00y, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p00z10D00B[3]    = {&BuiltInVariable::kpt00z, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p00z10D00D00D[4] = {&BuiltInVariable::kpt00z, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p00z10D00E00E[4] = {&BuiltInVariable::kpt00z, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p00z10D30B[3]    = {&BuiltInVariable::kpt00z, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01A10D00B[3]    = {&BuiltInVariable::kpt01A, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01A10D00D00D[4] = {&BuiltInVariable::kpt01A, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01A10D00E00E[4] = {&BuiltInVariable::kpt01A, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01A10D30D[3]    = {&BuiltInVariable::kpt01A, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01B10D00B[3]    = {&BuiltInVariable::kpt01B, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01B10D00D00D[4] = {&BuiltInVariable::kpt01B, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01B10D00E00E[4] = {&BuiltInVariable::kpt01B, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01B10D30E[3]    = {&BuiltInVariable::kpt01B, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01C20D00B[3]    = {&BuiltInVariable::kpt01C, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01C20D00D00D[4] = {&BuiltInVariable::kpt01C, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01C20D00E00E[4] = {&BuiltInVariable::kpt01C, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01C20D30B[3]    = {&BuiltInVariable::kpt01C, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01D20D00B[3]    = {&BuiltInVariable::kpt01D, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01D20D00D00D[4] = {&BuiltInVariable::kpt01D, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01D20D00E00E[4] = {&BuiltInVariable::kpt01D, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01D20D30D[3]    = {&BuiltInVariable::kpt01D, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01E20D00B[3]    = {&BuiltInVariable::kpt01E, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01E20D00D00D[4] = {&BuiltInVariable::kpt01E, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01E20D00E00E[4] = {&BuiltInVariable::kpt01E, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01E20D30E[3]    = {&BuiltInVariable::kpt01E, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01F20D00B[3]    = {&BuiltInVariable::kpt01F, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01F20D00D00D[4] = {&BuiltInVariable::kpt01F, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01F20D00E00E[4] = {&BuiltInVariable::kpt01F, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01F20D30B[3]    = {&BuiltInVariable::kpt01F, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01G20D00B[3]    = {&BuiltInVariable::kpt01G, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01G20D00D00D[4] = {&BuiltInVariable::kpt01G, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01G20D00E00E[4] = {&BuiltInVariable::kpt01G, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01G20D30D[3]    = {&BuiltInVariable::kpt01G, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01H20D00B[3]    = {&BuiltInVariable::kpt01H, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01H20D00D00D[4] = {&BuiltInVariable::kpt01H, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01H20D00E00E[4] = {&BuiltInVariable::kpt01H, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01H20D30E[3]    = {&BuiltInVariable::kpt01H, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01I20D00B[3]    = {&BuiltInVariable::kpt01I, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01I20D00D00D[4] = {&BuiltInVariable::kpt01I, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01I20D00E00E[4] = {&BuiltInVariable::kpt01I, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01I20D30B[3]    = {&BuiltInVariable::kpt01I, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01J20D00B[3]    = {&BuiltInVariable::kpt01J, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01J20D00D00D[4] = {&BuiltInVariable::kpt01J, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01J20D00E00E[4] = {&BuiltInVariable::kpt01J, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01J20D30D[3]    = {&BuiltInVariable::kpt01J, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01K20D00B[3]    = {&BuiltInVariable::kpt01K, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01K20D00D00D[4] = {&BuiltInVariable::kpt01K, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01K20D00E00E[4] = {&BuiltInVariable::kpt01K, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01K20D30E[3]    = {&BuiltInVariable::kpt01K, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01L00D00B[3]    = {&BuiltInVariable::kpt01L, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01L00D00D00D[4] = {&BuiltInVariable::kpt01L, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01L00D00E00E[4] = {&BuiltInVariable::kpt01L, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01L00D30B[3]    = {&BuiltInVariable::kpt01L, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01M00D00B[3]    = {&BuiltInVariable::kpt01M, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01M00D00D00D[4] = {&BuiltInVariable::kpt01M, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01M00D00E00E[4] = {&BuiltInVariable::kpt01M, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01M00D30D[3]    = {&BuiltInVariable::kpt01M, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01N00D00B[3]    = {&BuiltInVariable::kpt01N, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01N00D00D00D[4] = {&BuiltInVariable::kpt01N, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01N00D00E00E[4] = {&BuiltInVariable::kpt01N, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01N00D30E[3]    = {&BuiltInVariable::kpt01N, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01O10D00B[3]    = {&BuiltInVariable::kpt01O, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01O10D00D00D[4] = {&BuiltInVariable::kpt01O, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01O10D00E00E[4] = {&BuiltInVariable::kpt01O, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01O10D30B[3]    = {&BuiltInVariable::kpt01O, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01P10D00B[3]    = {&BuiltInVariable::kpt01P, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01P10D00D00D[4] = {&BuiltInVariable::kpt01P, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01P10D00E00E[4] = {&BuiltInVariable::kpt01P, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01P10D30D[3]    = {&BuiltInVariable::kpt01P, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01Q10D00B[3]    = {&BuiltInVariable::kpt01Q, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01Q10D00D00D[4] = {&BuiltInVariable::kpt01Q, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01Q10D00E00E[4] = {&BuiltInVariable::kpt01Q, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01Q10D30E[3]    = {&BuiltInVariable::kpt01Q, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01R10D00D00B[4] = {&BuiltInVariable::kpt01R, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01R10D00D00D00D[5] = {
        &BuiltInVariable::kpt01R, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01R10D00D00E00E[5] = {
        &BuiltInVariable::kpt01R, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01R10D00D30B[4] = {&BuiltInVariable::kpt01R, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01S10D00D00B[4] = {&BuiltInVariable::kpt01S, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01S10D00D00D00D[5] = {
        &BuiltInVariable::kpt01S, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01S10D00D00E00E[5] = {
        &BuiltInVariable::kpt01S, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01S10D00D30D[4] = {&BuiltInVariable::kpt01S, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01T10D00D00B[4] = {&BuiltInVariable::kpt01T, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01T10D00D00D00D[5] = {
        &BuiltInVariable::kpt01T, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01T10D00D00E00E[5] = {
        &BuiltInVariable::kpt01T, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01T10D00D30E[4] = {&BuiltInVariable::kpt01T, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01U20D00D00B[4] = {&BuiltInVariable::kpt01U, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01U20D00D00D00D[5] = {
        &BuiltInVariable::kpt01U, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01U20D00D00E00E[5] = {
        &BuiltInVariable::kpt01U, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01U20D00D30B[4] = {&BuiltInVariable::kpt01U, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01V20D00D00B[4] = {&BuiltInVariable::kpt01V, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01V20D00D00D00D[5] = {
        &BuiltInVariable::kpt01V, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01V20D00D00E00E[5] = {
        &BuiltInVariable::kpt01V, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01V20D00D30D[4] = {&BuiltInVariable::kpt01V, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01W20D00D00B[4] = {&BuiltInVariable::kpt01W, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01W20D00D00D00D[5] = {
        &BuiltInVariable::kpt01W, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01W20D00D00E00E[5] = {
        &BuiltInVariable::kpt01W, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
        &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01W20D00D30E[4] = {&BuiltInVariable::kpt01W, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01X10D00B[3]    = {&BuiltInVariable::kpt01X, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01X10D00D00D[4] = {&BuiltInVariable::kpt01X, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01X10D00E00E[4] = {&BuiltInVariable::kpt01X, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01X10D30B[3]    = {&BuiltInVariable::kpt01X, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01Y10D00B[3]    = {&BuiltInVariable::kpt01Y, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01Y10D00D00D[4] = {&BuiltInVariable::kpt01Y, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01Y10D00E00E[4] = {&BuiltInVariable::kpt01Y, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01Y10D30D[3]    = {&BuiltInVariable::kpt01Y, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01Z10D00B[3]    = {&BuiltInVariable::kpt01Z, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01Z10D00D00D[4] = {&BuiltInVariable::kpt01Z, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01Z10D00E00E[4] = {&BuiltInVariable::kpt01Z, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01Z10D30E[3]    = {&BuiltInVariable::kpt01Z, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01a20D00B[3]    = {&BuiltInVariable::kpt01a, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01a20D00D00D[4] = {&BuiltInVariable::kpt01a, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01a20D00E00E[4] = {&BuiltInVariable::kpt01a, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01a20D30B[3]    = {&BuiltInVariable::kpt01a, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01b20D00B[3]    = {&BuiltInVariable::kpt01b, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01b20D00D00D[4] = {&BuiltInVariable::kpt01b, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01b20D00E00E[4] = {&BuiltInVariable::kpt01b, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01b20D30D[3]    = {&BuiltInVariable::kpt01b, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01c20D00B[3]    = {&BuiltInVariable::kpt01c, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01c20D00D00D[4] = {&BuiltInVariable::kpt01c, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01c20D00E00E[4] = {&BuiltInVariable::kpt01c, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01c20D30E[3]    = {&BuiltInVariable::kpt01c, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01d[1]          = {&BuiltInVariable::kpt01d};
    constexpr const TVariable *p01e[1]          = {&BuiltInVariable::kpt01e};
    constexpr const TVariable *p01f[1]          = {&BuiltInVariable::kpt01f};
    constexpr const TVariable *p01g00D00B[3]    = {&BuiltInVariable::kpt01g, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01g00D00D00D[4] = {&BuiltInVariable::kpt01g, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01g00D00E00E[4] = {&BuiltInVariable::kpt01g, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01g00D30B[3]    = {&BuiltInVariable::kpt01g, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p01h00D00B[3]    = {&BuiltInVariable::kpt01h, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01h00D00D00D[4] = {&BuiltInVariable::kpt01h, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01h00D00E00E[4] = {&BuiltInVariable::kpt01h, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01h00D30D[3]    = {&BuiltInVariable::kpt01h, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p01i00D00B[3]    = {&BuiltInVariable::kpt01i, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p01i00D00D00D[4] = {&BuiltInVariable::kpt01i, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01i00D00E00E[4] = {&BuiltInVariable::kpt01i, &BuiltInVariable::kpt00D,
                                                   &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    constexpr const TVariable *p01i00D30E[3]    = {&BuiltInVariable::kpt01i, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p01j[1]          = {&BuiltInVariable::kpt01j};
    constexpr const TVariable *p01k[1]          = {&BuiltInVariable::kpt01k};
    constexpr const TVariable *p01l[1]          = {&BuiltInVariable::kpt01l};
    constexpr const TVariable *p01m00D[2]       = {&BuiltInVariable::kpt01m, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01n00D[2]       = {&BuiltInVariable::kpt01n, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p01o00D[2]       = {&BuiltInVariable::kpt01o, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10B00B00B[3]    = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p10B00D[2]       = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10B10B00B[3]    = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p10B10B10B[3]    = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt10B};
    constexpr const TVariable *p10B10B10F[3]    = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt10B,
                                                &BuiltInVariable::kpt10F};
    constexpr const TVariable *p10B10D[2]       = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p10B20B[2]       = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p10B30B[2]       = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt30B};
    constexpr const TVariable *p10B_o_10B[2] = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt_o_10B};
    constexpr const TVariable *p10B_o_10D[2] = {&BuiltInVariable::kpt10B, &BuiltInVariable::kpt_o_10D};
    constexpr const TVariable *p10C00C00C[3] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p10C10C00B[3] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt10C,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p10C10C00C[3] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt10C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p10C10C10C[3] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt10C,
                                                &BuiltInVariable::kpt10C};
    constexpr const TVariable *p10C10C10F[3] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt10C,
                                                &BuiltInVariable::kpt10F};
    constexpr const TVariable *p10C10D[2]    = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt10D};
    constexpr const TVariable *p10C_o_10C[2] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt_o_10C};
    constexpr const TVariable *p10C_o_10D[2] = {&BuiltInVariable::kpt10C, &BuiltInVariable::kpt_o_10D};
    constexpr const TVariable *p10D00D00D[3] = {&BuiltInVariable::kpt10D, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10D10D00D00D[4] = {&BuiltInVariable::kpt10D, &BuiltInVariable::kpt10D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10D10D10D[3]    = {&BuiltInVariable::kpt10D, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt10D};
    constexpr const TVariable *p10D10D10F[3]    = {&BuiltInVariable::kpt10D, &BuiltInVariable::kpt10D,
                                                &BuiltInVariable::kpt10F};
    constexpr const TVariable *p10D10D_o_10D_o_10D[4] = {
        &BuiltInVariable::kpt10D, &BuiltInVariable::kpt10D, &BuiltInVariable::kpt_o_10D,
        &BuiltInVariable::kpt_o_10D};
    constexpr const TVariable *p10E00D00D[3]    = {&BuiltInVariable::kpt10E, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10E00E00E[3]    = {&BuiltInVariable::kpt10E, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00E};
    constexpr const TVariable *p10E10E00D00D[4] = {&BuiltInVariable::kpt10E, &BuiltInVariable::kpt10E,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p10E10E10E[3]    = {&BuiltInVariable::kpt10E, &BuiltInVariable::kpt10E,
                                                &BuiltInVariable::kpt10E};
    constexpr const TVariable *p10E10E10F[3]    = {&BuiltInVariable::kpt10E, &BuiltInVariable::kpt10E,
                                                &BuiltInVariable::kpt10F};
    constexpr const TVariable *p10E10E_o_10E_o_10E[4] = {
        &BuiltInVariable::kpt10E, &BuiltInVariable::kpt10E, &BuiltInVariable::kpt_o_10E,
        &BuiltInVariable::kpt_o_10E};
    constexpr const TVariable *p10F10F10F[3] = {&BuiltInVariable::kpt10F, &BuiltInVariable::kpt10F,
                                                &BuiltInVariable::kpt10F};
    constexpr const TVariable *p20B00B00B[3] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p20B00D[2]    = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p20B00H[2]    = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt00H};
    constexpr const TVariable *p20B10B[2]    = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p20B20B00B[3] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p20B20B20B[3] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt20B};
    constexpr const TVariable *p20B20B20F[3] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt20B,
                                                &BuiltInVariable::kpt20F};
    constexpr const TVariable *p20B20D[2]    = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p20B30B[2]    = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt30B};
    constexpr const TVariable *p20B_o_20B[2] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt_o_20B};
    constexpr const TVariable *p20B_o_20D[2] = {&BuiltInVariable::kpt20B, &BuiltInVariable::kpt_o_20D};
    constexpr const TVariable *p20C00C00C[3] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p20C20C00B[3] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt20C,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p20C20C00C[3] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt20C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p20C20C20C[3] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt20C,
                                                &BuiltInVariable::kpt20C};
    constexpr const TVariable *p20C20C20F[3] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt20C,
                                                &BuiltInVariable::kpt20F};
    constexpr const TVariable *p20C20D[2]    = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt20D};
    constexpr const TVariable *p20C_o_20C[2] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt_o_20C};
    constexpr const TVariable *p20C_o_20D[2] = {&BuiltInVariable::kpt20C, &BuiltInVariable::kpt_o_20D};
    constexpr const TVariable *p20D00D00D[3] = {&BuiltInVariable::kpt20D, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p20D20D00D00D[4] = {&BuiltInVariable::kpt20D, &BuiltInVariable::kpt20D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p20D20D20D[3]    = {&BuiltInVariable::kpt20D, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt20D};
    constexpr const TVariable *p20D20D20F[3]    = {&BuiltInVariable::kpt20D, &BuiltInVariable::kpt20D,
                                                &BuiltInVariable::kpt20F};
    constexpr const TVariable *p20D20D_o_20D_o_20D[4] = {
        &BuiltInVariable::kpt20D, &BuiltInVariable::kpt20D, &BuiltInVariable::kpt_o_20D,
        &BuiltInVariable::kpt_o_20D};
    constexpr const TVariable *p20E00D00D[3]    = {&BuiltInVariable::kpt20E, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p20E00E00E[3]    = {&BuiltInVariable::kpt20E, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00E};
    constexpr const TVariable *p20E20E00D00D[4] = {&BuiltInVariable::kpt20E, &BuiltInVariable::kpt20E,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p20E20E20E[3]    = {&BuiltInVariable::kpt20E, &BuiltInVariable::kpt20E,
                                                &BuiltInVariable::kpt20E};
    constexpr const TVariable *p20E20E20F[3]    = {&BuiltInVariable::kpt20E, &BuiltInVariable::kpt20E,
                                                &BuiltInVariable::kpt20F};
    constexpr const TVariable *p20E20E_o_20E_o_20E[4] = {
        &BuiltInVariable::kpt20E, &BuiltInVariable::kpt20E, &BuiltInVariable::kpt_o_20E,
        &BuiltInVariable::kpt_o_20E};
    constexpr const TVariable *p20F20F20F[3] = {&BuiltInVariable::kpt20F, &BuiltInVariable::kpt20F,
                                                &BuiltInVariable::kpt20F};
    constexpr const TVariable *p30B00B00B[3] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt00B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p30B00D[2]    = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p30B10B[2]    = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt10B};
    constexpr const TVariable *p30B20B[2]    = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt20B};
    constexpr const TVariable *p30B30B00B[3] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p30B30B30B[3] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt30B};
    constexpr const TVariable *p30B30B30F[3] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt30B,
                                                &BuiltInVariable::kpt30F};
    constexpr const TVariable *p30B30D[2]    = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt30D};
    constexpr const TVariable *p30B_o_30B[2] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt_o_30B};
    constexpr const TVariable *p30B_o_30D[2] = {&BuiltInVariable::kpt30B, &BuiltInVariable::kpt_o_30D};
    constexpr const TVariable *p30C00C00C[3] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt00C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p30C30C00B[3] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt30C,
                                                &BuiltInVariable::kpt00B};
    constexpr const TVariable *p30C30C00C[3] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt30C,
                                                &BuiltInVariable::kpt00C};
    constexpr const TVariable *p30C30C30C[3] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt30C,
                                                &BuiltInVariable::kpt30C};
    constexpr const TVariable *p30C30C30F[3] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt30C,
                                                &BuiltInVariable::kpt30F};
    constexpr const TVariable *p30C30D[2]    = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt30D};
    constexpr const TVariable *p30C_o_30C[2] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt_o_30C};
    constexpr const TVariable *p30C_o_30D[2] = {&BuiltInVariable::kpt30C, &BuiltInVariable::kpt_o_30D};
    constexpr const TVariable *p30D00D00D[3] = {&BuiltInVariable::kpt30D, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p30D30D00D00D[4] = {&BuiltInVariable::kpt30D, &BuiltInVariable::kpt30D,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p30D30D30D[3]    = {&BuiltInVariable::kpt30D, &BuiltInVariable::kpt30D,
                                                &BuiltInVariable::kpt30D};
    constexpr const TVariable *p30D30D30F[3]    = {&BuiltInVariable::kpt30D, &BuiltInVariable::kpt30D,
                                                &BuiltInVariable::kpt30F};
    constexpr const TVariable *p30D30D_o_30D_o_30D[4] = {
        &BuiltInVariable::kpt30D, &BuiltInVariable::kpt30D, &BuiltInVariable::kpt_o_30D,
        &BuiltInVariable::kpt_o_30D};
    constexpr const TVariable *p30E00D00D[3]    = {&BuiltInVariable::kpt30E, &BuiltInVariable::kpt00D,
                                                &BuiltInVariable::kpt00D};
    constexpr const TVariable *p30E00E00E[3]    = {&BuiltInVariable::kpt30E, &BuiltInVariable::kpt00E,
                                                &BuiltInVariable::kpt00E};
    constexpr const TVariable *p30E30E00D00D[4] = {&BuiltInVariable::kpt30E, &BuiltInVariable::kpt30E,
                                                   &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p30E30E30E[3]    = {&BuiltInVariable::kpt30E, &BuiltInVariable::kpt30E,
                                                &BuiltInVariable::kpt30E};
    constexpr const TVariable *p30E30E30F[3]    = {&BuiltInVariable::kpt30E, &BuiltInVariable::kpt30E,
                                                &BuiltInVariable::kpt30F};
    constexpr const TVariable *p30E30E_o_30E_o_30E[4] = {
        &BuiltInVariable::kpt30E, &BuiltInVariable::kpt30E, &BuiltInVariable::kpt_o_30E,
        &BuiltInVariable::kpt_o_30E};
    constexpr const TVariable *p30F30F30F[3]     = {&BuiltInVariable::kpt30F, &BuiltInVariable::kpt30F,
                                                &BuiltInVariable::kpt30F};
    constexpr const TVariable *p50B50B[2]        = {&BuiltInVariable::kpt50B, &BuiltInVariable::kpt50B};
    constexpr const TVariable *p60B60B[2]        = {&BuiltInVariable::kpt60B, &BuiltInVariable::kpt60B};
    constexpr const TVariable *p70B70B[2]        = {&BuiltInVariable::kpt70B, &BuiltInVariable::kpt70B};
    constexpr const TVariable *p90B90B[2]        = {&BuiltInVariable::kpt90B, &BuiltInVariable::kpt90B};
    constexpr const TVariable *pA0BA0B[2]        = {&BuiltInVariable::kptA0B, &BuiltInVariable::kptA0B};
    constexpr const TVariable *pB0BB0B[2]        = {&BuiltInVariable::kptB0B, &BuiltInVariable::kptB0B};
    constexpr const TVariable *pD0BD0B[2]        = {&BuiltInVariable::kptD0B, &BuiltInVariable::kptD0B};
    constexpr const TVariable *pE0BE0B[2]        = {&BuiltInVariable::kptE0B, &BuiltInVariable::kptE0B};
    constexpr const TVariable *pF0BF0B[2]        = {&BuiltInVariable::kptF0B, &BuiltInVariable::kptF0B};
    constexpr const TVariable *p_io_00D00D00D[3] = {&BuiltInVariable::kpt_io_00D,
                                                    &BuiltInVariable::kpt00D, &BuiltInVariable::kpt00D};
    constexpr const TVariable *p_io_00E00E00E[3] = {&BuiltInVariable::kpt_io_00E,
                                                    &BuiltInVariable::kpt00E, &BuiltInVariable::kpt00E};
    
    }  // namespace BuiltInParameters
    
    // 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 Func
    {
    
    constexpr const TFunction radians_00B(BuiltInId::radians_Float1,
                                          BuiltInName::radians,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B00B30B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpRadians,
                                          true);
    constexpr const TFunction radians_10B(BuiltInId::radians_Float2,
                                          BuiltInName::radians,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10B_o_10B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpRadians,
                                          true);
    constexpr const TFunction radians_20B(BuiltInId::radians_Float3,
                                          BuiltInName::radians,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20B20B00B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpRadians,
                                          true);
    constexpr const TFunction radians_30B(BuiltInId::radians_Float4,
                                          BuiltInName::radians,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30B30D,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpRadians,
                                          true);
    constexpr const TFunction degrees_00B(BuiltInId::degrees_Float1,
                                          BuiltInName::degrees,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B00B30B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpDegrees,
                                          true);
    constexpr const TFunction degrees_10B(BuiltInId::degrees_Float2,
                                          BuiltInName::degrees,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10B_o_10B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpDegrees,
                                          true);
    constexpr const TFunction degrees_20B(BuiltInId::degrees_Float3,
                                          BuiltInName::degrees,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20B20B00B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpDegrees,
                                          true);
    constexpr const TFunction degrees_30B(BuiltInId::degrees_Float4,
                                          BuiltInName::degrees,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30B30D,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpDegrees,
                                          true);
    constexpr const TFunction sin_00B(BuiltInId::sin_Float1,
                                      BuiltInName::sin,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpSin,
                                      true);
    constexpr const TFunction sin_10B(BuiltInId::sin_Float2,
                                      BuiltInName::sin,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpSin,
                                      true);
    constexpr const TFunction sin_20B(BuiltInId::sin_Float3,
                                      BuiltInName::sin,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpSin,
                                      true);
    constexpr const TFunction sin_30B(BuiltInId::sin_Float4,
                                      BuiltInName::sin,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpSin,
                                      true);
    constexpr const TFunction cos_00B(BuiltInId::cos_Float1,
                                      BuiltInName::cos,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpCos,
                                      true);
    constexpr const TFunction cos_10B(BuiltInId::cos_Float2,
                                      BuiltInName::cos,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpCos,
                                      true);
    constexpr const TFunction cos_20B(BuiltInId::cos_Float3,
                                      BuiltInName::cos,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpCos,
                                      true);
    constexpr const TFunction cos_30B(BuiltInId::cos_Float4,
                                      BuiltInName::cos,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpCos,
                                      true);
    constexpr const TFunction tan_00B(BuiltInId::tan_Float1,
                                      BuiltInName::tan,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpTan,
                                      true);
    constexpr const TFunction tan_10B(BuiltInId::tan_Float2,
                                      BuiltInName::tan,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpTan,
                                      true);
    constexpr const TFunction tan_20B(BuiltInId::tan_Float3,
                                      BuiltInName::tan,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpTan,
                                      true);
    constexpr const TFunction tan_30B(BuiltInId::tan_Float4,
                                      BuiltInName::tan,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpTan,
                                      true);
    constexpr const TFunction asin_00B(BuiltInId::asin_Float1,
                                       BuiltInName::asin,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpAsin,
                                       true);
    constexpr const TFunction asin_10B(BuiltInId::asin_Float2,
                                       BuiltInName::asin,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpAsin,
                                       true);
    constexpr const TFunction asin_20B(BuiltInId::asin_Float3,
                                       BuiltInName::asin,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpAsin,
                                       true);
    constexpr const TFunction asin_30B(BuiltInId::asin_Float4,
                                       BuiltInName::asin,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpAsin,
                                       true);
    constexpr const TFunction acos_00B(BuiltInId::acos_Float1,
                                       BuiltInName::acos,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpAcos,
                                       true);
    constexpr const TFunction acos_10B(BuiltInId::acos_Float2,
                                       BuiltInName::acos,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpAcos,
                                       true);
    constexpr const TFunction acos_20B(BuiltInId::acos_Float3,
                                       BuiltInName::acos,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpAcos,
                                       true);
    constexpr const TFunction acos_30B(BuiltInId::acos_Float4,
                                       BuiltInName::acos,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpAcos,
                                       true);
    constexpr const TFunction atan_00B00B(BuiltInId::atan_Float1_Float1,
                                          BuiltInName::atan,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B00B30B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpAtan,
                                          true);
    constexpr const TFunction atan_10B10B(BuiltInId::atan_Float2_Float2,
                                          BuiltInName::atan,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10B10B00B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpAtan,
                                          true);
    constexpr const TFunction atan_20B20B(BuiltInId::atan_Float3_Float3,
                                          BuiltInName::atan,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20B20B00B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpAtan,
                                          true);
    constexpr const TFunction atan_30B30B(BuiltInId::atan_Float4_Float4,
                                          BuiltInName::atan,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30B30B30F,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpAtan,
                                          true);
    constexpr const TFunction atan_00B(BuiltInId::atan_Float1,
                                       BuiltInName::atan,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpAtan,
                                       true);
    constexpr const TFunction atan_10B(BuiltInId::atan_Float2,
                                       BuiltInName::atan,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpAtan,
                                       true);
    constexpr const TFunction atan_20B(BuiltInId::atan_Float3,
                                       BuiltInName::atan,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpAtan,
                                       true);
    constexpr const TFunction atan_30B(BuiltInId::atan_Float4,
                                       BuiltInName::atan,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpAtan,
                                       true);
    constexpr const TFunction sinh_00B(BuiltInId::sinh_Float1,
                                       BuiltInName::sinh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSinh,
                                       true);
    constexpr const TFunction sinh_10B(BuiltInId::sinh_Float2,
                                       BuiltInName::sinh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSinh,
                                       true);
    constexpr const TFunction sinh_20B(BuiltInId::sinh_Float3,
                                       BuiltInName::sinh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSinh,
                                       true);
    constexpr const TFunction sinh_30B(BuiltInId::sinh_Float4,
                                       BuiltInName::sinh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSinh,
                                       true);
    constexpr const TFunction cosh_00B(BuiltInId::cosh_Float1,
                                       BuiltInName::cosh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpCosh,
                                       true);
    constexpr const TFunction cosh_10B(BuiltInId::cosh_Float2,
                                       BuiltInName::cosh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpCosh,
                                       true);
    constexpr const TFunction cosh_20B(BuiltInId::cosh_Float3,
                                       BuiltInName::cosh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpCosh,
                                       true);
    constexpr const TFunction cosh_30B(BuiltInId::cosh_Float4,
                                       BuiltInName::cosh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpCosh,
                                       true);
    constexpr const TFunction tanh_00B(BuiltInId::tanh_Float1,
                                       BuiltInName::tanh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpTanh,
                                       true);
    constexpr const TFunction tanh_10B(BuiltInId::tanh_Float2,
                                       BuiltInName::tanh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpTanh,
                                       true);
    constexpr const TFunction tanh_20B(BuiltInId::tanh_Float3,
                                       BuiltInName::tanh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpTanh,
                                       true);
    constexpr const TFunction tanh_30B(BuiltInId::tanh_Float4,
                                       BuiltInName::tanh,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpTanh,
                                       true);
    constexpr const TFunction asinh_00B(BuiltInId::asinh_Float1,
                                        BuiltInName::asinh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpAsinh,
                                        true);
    constexpr const TFunction asinh_10B(BuiltInId::asinh_Float2,
                                        BuiltInName::asinh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpAsinh,
                                        true);
    constexpr const TFunction asinh_20B(BuiltInId::asinh_Float3,
                                        BuiltInName::asinh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpAsinh,
                                        true);
    constexpr const TFunction asinh_30B(BuiltInId::asinh_Float4,
                                        BuiltInName::asinh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpAsinh,
                                        true);
    constexpr const TFunction acosh_00B(BuiltInId::acosh_Float1,
                                        BuiltInName::acosh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpAcosh,
                                        true);
    constexpr const TFunction acosh_10B(BuiltInId::acosh_Float2,
                                        BuiltInName::acosh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpAcosh,
                                        true);
    constexpr const TFunction acosh_20B(BuiltInId::acosh_Float3,
                                        BuiltInName::acosh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpAcosh,
                                        true);
    constexpr const TFunction acosh_30B(BuiltInId::acosh_Float4,
                                        BuiltInName::acosh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpAcosh,
                                        true);
    constexpr const TFunction atanh_00B(BuiltInId::atanh_Float1,
                                        BuiltInName::atanh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpAtanh,
                                        true);
    constexpr const TFunction atanh_10B(BuiltInId::atanh_Float2,
                                        BuiltInName::atanh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpAtanh,
                                        true);
    constexpr const TFunction atanh_20B(BuiltInId::atanh_Float3,
                                        BuiltInName::atanh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpAtanh,
                                        true);
    constexpr const TFunction atanh_30B(BuiltInId::atanh_Float4,
                                        BuiltInName::atanh,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpAtanh,
                                        true);
    constexpr const TFunction pow_00B00B(BuiltInId::pow_Float1_Float1,
                                         BuiltInName::pow,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpPow,
                                         true);
    constexpr const TFunction pow_10B10B(BuiltInId::pow_Float2_Float2,
                                         BuiltInName::pow,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B10B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpPow,
                                         true);
    constexpr const TFunction pow_20B20B(BuiltInId::pow_Float3_Float3,
                                         BuiltInName::pow,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpPow,
                                         true);
    constexpr const TFunction pow_30B30B(BuiltInId::pow_Float4_Float4,
                                         BuiltInName::pow,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30B30F,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpPow,
                                         true);
    constexpr const TFunction exp_00B(BuiltInId::exp_Float1,
                                      BuiltInName::exp,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpExp,
                                      true);
    constexpr const TFunction exp_10B(BuiltInId::exp_Float2,
                                      BuiltInName::exp,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpExp,
                                      true);
    constexpr const TFunction exp_20B(BuiltInId::exp_Float3,
                                      BuiltInName::exp,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpExp,
                                      true);
    constexpr const TFunction exp_30B(BuiltInId::exp_Float4,
                                      BuiltInName::exp,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpExp,
                                      true);
    constexpr const TFunction log_00B(BuiltInId::log_Float1,
                                      BuiltInName::log,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpLog,
                                      true);
    constexpr const TFunction log_10B(BuiltInId::log_Float2,
                                      BuiltInName::log,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpLog,
                                      true);
    constexpr const TFunction log_20B(BuiltInId::log_Float3,
                                      BuiltInName::log,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpLog,
                                      true);
    constexpr const TFunction log_30B(BuiltInId::log_Float4,
                                      BuiltInName::log,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpLog,
                                      true);
    constexpr const TFunction exp2_00B(BuiltInId::exp2_Float1,
                                       BuiltInName::exp2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpExp2,
                                       true);
    constexpr const TFunction exp2_10B(BuiltInId::exp2_Float2,
                                       BuiltInName::exp2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpExp2,
                                       true);
    constexpr const TFunction exp2_20B(BuiltInId::exp2_Float3,
                                       BuiltInName::exp2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpExp2,
                                       true);
    constexpr const TFunction exp2_30B(BuiltInId::exp2_Float4,
                                       BuiltInName::exp2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpExp2,
                                       true);
    constexpr const TFunction log2_00B(BuiltInId::log2_Float1,
                                       BuiltInName::log2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpLog2,
                                       true);
    constexpr const TFunction log2_10B(BuiltInId::log2_Float2,
                                       BuiltInName::log2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpLog2,
                                       true);
    constexpr const TFunction log2_20B(BuiltInId::log2_Float3,
                                       BuiltInName::log2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpLog2,
                                       true);
    constexpr const TFunction log2_30B(BuiltInId::log2_Float4,
                                       BuiltInName::log2,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpLog2,
                                       true);
    constexpr const TFunction sqrt_00B(BuiltInId::sqrt_Float1,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_10B(BuiltInId::sqrt_Float2,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_20B(BuiltInId::sqrt_Float3,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_30B(BuiltInId::sqrt_Float4,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_00C(BuiltInId::sqrt_Double1,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00C10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_10C(BuiltInId::sqrt_Double2,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10C_o_10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_20C(BuiltInId::sqrt_Double3,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20C20C20F,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction sqrt_30C(BuiltInId::sqrt_Double4,
                                       BuiltInName::sqrt,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30C30C00B,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSqrt,
                                       true);
    constexpr const TFunction inversesqrt_00B(
        BuiltInId::inversesqrt_Float1,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_10B(
        BuiltInId::inversesqrt_Float2,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_20B(
        BuiltInId::inversesqrt_Float3,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_30B(
        BuiltInId::inversesqrt_Float4,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_00C(
        BuiltInId::inversesqrt_Double1,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C10C,
        1,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_10C(
        BuiltInId::inversesqrt_Double2,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C_o_10C,
        1,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_20C(
        BuiltInId::inversesqrt_Double3,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20F,
        1,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction inversesqrt_30C(
        BuiltInId::inversesqrt_Double4,
        BuiltInName::inversesqrt,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C00B,
        1,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpInversesqrt,
        true);
    constexpr const TFunction abs_00B(BuiltInId::abs_Float1,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00B00B30B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_10B(BuiltInId::abs_Float2,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10B_o_10B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_20B(BuiltInId::abs_Float3,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20B20B00B,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_30B(BuiltInId::abs_Float4,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30B30D,
                                      1,
                                      StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_00D(BuiltInId::abs_Int1,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00D00D00D00D,
                                      1,
                                      StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_10D(BuiltInId::abs_Int2,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10D10D_o_10D_o_10D,
                                      1,
                                      StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_20D(BuiltInId::abs_Int3,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20D20D20F,
                                      1,
                                      StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_30D(BuiltInId::abs_Int4,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30D30D30F,
                                      1,
                                      StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_00C(BuiltInId::abs_Double1,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p00C10C,
                                      1,
                                      StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_10C(BuiltInId::abs_Double2,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10C_o_10C,
                                      1,
                                      StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_20C(BuiltInId::abs_Double3,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20C20C20F,
                                      1,
                                      StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction abs_30C(BuiltInId::abs_Double4,
                                      BuiltInName::abs,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30C30C00B,
                                      1,
                                      StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                      EOpAbs,
                                      true);
    constexpr const TFunction sign_00B(BuiltInId::sign_Float1,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_10B(BuiltInId::sign_Float2,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_20B(BuiltInId::sign_Float3,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_30B(BuiltInId::sign_Float4,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_00D(BuiltInId::sign_Int1,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00D00D00D00D,
                                       1,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_10D(BuiltInId::sign_Int2,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10D10D_o_10D_o_10D,
                                       1,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_20D(BuiltInId::sign_Int3,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20D20D20F,
                                       1,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_30D(BuiltInId::sign_Int4,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30D30D30F,
                                       1,
                                       StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_00C(BuiltInId::sign_Double1,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00C10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_10C(BuiltInId::sign_Double2,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10C_o_10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_20C(BuiltInId::sign_Double3,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20C20C20F,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction sign_30C(BuiltInId::sign_Double4,
                                       BuiltInName::sign,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30C30C00B,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpSign,
                                       true);
    constexpr const TFunction floor_00B(BuiltInId::floor_Float1,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_10B(BuiltInId::floor_Float2,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_20B(BuiltInId::floor_Float3,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_30B(BuiltInId::floor_Float4,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_00C(BuiltInId::floor_Double1,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_10C(BuiltInId::floor_Double2,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_20C(BuiltInId::floor_Double3,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction floor_30C(BuiltInId::floor_Double4,
                                        BuiltInName::floor,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpFloor,
                                        true);
    constexpr const TFunction trunc_00B(BuiltInId::trunc_Float1,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_10B(BuiltInId::trunc_Float2,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_20B(BuiltInId::trunc_Float3,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_30B(BuiltInId::trunc_Float4,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_00C(BuiltInId::trunc_Double1,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_10C(BuiltInId::trunc_Double2,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_20C(BuiltInId::trunc_Double3,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction trunc_30C(BuiltInId::trunc_Double4,
                                        BuiltInName::trunc,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpTrunc,
                                        true);
    constexpr const TFunction round_00B(BuiltInId::round_Float1,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_10B(BuiltInId::round_Float2,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_20B(BuiltInId::round_Float3,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_30B(BuiltInId::round_Float4,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_00C(BuiltInId::round_Double1,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_10C(BuiltInId::round_Double2,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_20C(BuiltInId::round_Double3,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction round_30C(BuiltInId::round_Double4,
                                        BuiltInName::round,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpRound,
                                        true);
    constexpr const TFunction roundEven_00B(BuiltInId::roundEven_Float1,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00B00B30B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_10B(BuiltInId::roundEven_Float2,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B_o_10B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_20B(BuiltInId::roundEven_Float3,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B00B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_30B(BuiltInId::roundEven_Float4,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30D,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_00C(BuiltInId::roundEven_Double1,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00C10C,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_10C(BuiltInId::roundEven_Double2,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C_o_10C,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_20C(BuiltInId::roundEven_Double3,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C20F,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction roundEven_30C(BuiltInId::roundEven_Double4,
                                            BuiltInName::roundEven,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C00B,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpRoundEven,
                                            true);
    constexpr const TFunction ceil_00B(BuiltInId::ceil_Float1,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_10B(BuiltInId::ceil_Float2,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_20B(BuiltInId::ceil_Float3,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_30B(BuiltInId::ceil_Float4,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_00C(BuiltInId::ceil_Double1,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00C10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_10C(BuiltInId::ceil_Double2,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10C_o_10C,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_20C(BuiltInId::ceil_Double3,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20C20C20F,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction ceil_30C(BuiltInId::ceil_Double4,
                                       BuiltInName::ceil,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30C30C00B,
                                       1,
                                       StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpCeil,
                                       true);
    constexpr const TFunction fract_00B(BuiltInId::fract_Float1,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_10B(BuiltInId::fract_Float2,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_20B(BuiltInId::fract_Float3,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_30B(BuiltInId::fract_Float4,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_00C(BuiltInId::fract_Double1,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_10C(BuiltInId::fract_Double2,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_20C(BuiltInId::fract_Double3,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction fract_30C(BuiltInId::fract_Double4,
                                        BuiltInName::fract,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpFract,
                                        true);
    constexpr const TFunction mod_00B00B(BuiltInId::mod_Float1_Float1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_10B00B(BuiltInId::mod_Float2_Float1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_20B00B(BuiltInId::mod_Float3_Float1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_30B00B(BuiltInId::mod_Float4_Float1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_10B10B(BuiltInId::mod_Float2_Float2,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B10B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_20B20B(BuiltInId::mod_Float3_Float3,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_30B30B(BuiltInId::mod_Float4_Float4,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30B30F,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_00C00C(BuiltInId::mod_Double1_Double1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00C00C10C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_10C00C(BuiltInId::mod_Double2_Double1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_20C00C(BuiltInId::mod_Double3_Double1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_30C00C(BuiltInId::mod_Double4_Double1,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_10C10C(BuiltInId::mod_Double2_Double2,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C10C10F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_20C20C(BuiltInId::mod_Double3_Double3,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C20C20F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction mod_30C30C(BuiltInId::mod_Double4_Double4,
                                         BuiltInName::mod,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C30C00B,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMod,
                                         true);
    constexpr const TFunction min_00B00B(BuiltInId::min_Float1_Float1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10B00B(BuiltInId::min_Float2_Float1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20B00B(BuiltInId::min_Float3_Float1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30B00B(BuiltInId::min_Float4_Float1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10B10B(BuiltInId::min_Float2_Float2,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B10B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20B20B(BuiltInId::min_Float3_Float3,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30B30B(BuiltInId::min_Float4_Float4,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30B30F,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_00C00C(BuiltInId::min_Double1_Double1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00C00C10C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10C10C(BuiltInId::min_Double2_Double2,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C10C10F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20C20C(BuiltInId::min_Double3_Double3,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C20C20F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30C30C(BuiltInId::min_Double4_Double4,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C30C00B,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10C00C(BuiltInId::min_Double2_Double1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20C00C(BuiltInId::min_Double3_Double1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30C00C(BuiltInId::min_Double4_Double1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_00D00D(BuiltInId::min_Int1_Int1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00D00D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10D10D(BuiltInId::min_Int2_Int2,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10D10D_o_10D_o_10D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20D20D(BuiltInId::min_Int3_Int3,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20D20D20F,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30D30D(BuiltInId::min_Int4_Int4,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30D30D30F,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10D00D(BuiltInId::min_Int2_Int1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20D00D(BuiltInId::min_Int3_Int1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30D00D(BuiltInId::min_Int4_Int1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_00E00E(BuiltInId::min_UInt1_UInt1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10E10E(BuiltInId::min_UInt2_UInt2,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10E10E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20E20E(BuiltInId::min_UInt3_UInt3,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20E20E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30E30E(BuiltInId::min_UInt4_UInt4,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30E30E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_10E00E(BuiltInId::min_UInt2_UInt1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_20E00E(BuiltInId::min_UInt3_UInt1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction min_30E00E(BuiltInId::min_UInt4_UInt1,
                                         BuiltInName::min,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMin,
                                         true);
    constexpr const TFunction max_00B00B(BuiltInId::max_Float1_Float1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10B00B(BuiltInId::max_Float2_Float1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20B00B(BuiltInId::max_Float3_Float1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30B00B(BuiltInId::max_Float4_Float1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B00B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10B10B(BuiltInId::max_Float2_Float2,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B10B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20B20B(BuiltInId::max_Float3_Float3,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30B30B(BuiltInId::max_Float4_Float4,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30B30F,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_00C00C(BuiltInId::max_Double1_Double1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00C00C10C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10C10C(BuiltInId::max_Double2_Double2,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C10C10F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20C20C(BuiltInId::max_Double3_Double3,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C20C20F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30C30C(BuiltInId::max_Double4_Double4,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C30C00B,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10C00C(BuiltInId::max_Double2_Double1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20C00C(BuiltInId::max_Double3_Double1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30C00C(BuiltInId::max_Double4_Double1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C00C00C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_00D00D(BuiltInId::max_Int1_Int1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00D00D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10D10D(BuiltInId::max_Int2_Int2,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10D10D_o_10D_o_10D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20D20D(BuiltInId::max_Int3_Int3,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20D20D20F,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30D30D(BuiltInId::max_Int4_Int4,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30D30D30F,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10D00D(BuiltInId::max_Int2_Int1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20D00D(BuiltInId::max_Int3_Int1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30D00D(BuiltInId::max_Int4_Int1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30D00D00D,
                                         2,
                                         StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_00E00E(BuiltInId::max_UInt1_UInt1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10E10E(BuiltInId::max_UInt2_UInt2,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10E10E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20E20E(BuiltInId::max_UInt3_UInt3,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20E20E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30E30E(BuiltInId::max_UInt4_UInt4,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30E30E00D00D,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_10E00E(BuiltInId::max_UInt2_UInt1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_20E00E(BuiltInId::max_UInt3_UInt1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction max_30E00E(BuiltInId::max_UInt4_UInt1,
                                         BuiltInName::max,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30E00E00E,
                                         2,
                                         StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpMax,
                                         true);
    constexpr const TFunction clamp_00B00B00B(
        BuiltInId::clamp_Float1_Float1_Float1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_10B00B00B(
        BuiltInId::clamp_Float2_Float1_Float1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_20B00B00B(
        BuiltInId::clamp_Float3_Float1_Float1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_30B00B00B(
        BuiltInId::clamp_Float4_Float1_Float1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_10B10B10B(
        BuiltInId::clamp_Float2_Float2_Float2,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B10B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_20B20B20B(
        BuiltInId::clamp_Float3_Float3_Float3,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B20B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_30B30B30B(
        BuiltInId::clamp_Float4_Float4_Float4,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_00C00C00C(
        BuiltInId::clamp_Double1_Double1_Double1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_10C00C00C(
        BuiltInId::clamp_Double2_Double1_Double1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_20C00C00C(
        BuiltInId::clamp_Double3_Double1_Double1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_30C00C00C(
        BuiltInId::clamp_Double4_Double1_Double1,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_10C10C10C(
        BuiltInId::clamp_Double2_Double2_Double2,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C10C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_20C20C20C(
        BuiltInId::clamp_Double3_Double3_Double3,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_30C30C30C(
        BuiltInId::clamp_Double4_Double4_Double4,
        BuiltInName::clamp,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C30C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpClamp,
        true);
    constexpr const TFunction clamp_00D00D00D(BuiltInId::clamp_Int1_Int1_Int1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00D00D00D00D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_10D00D00D(BuiltInId::clamp_Int2_Int1_Int1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10D00D00D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_20D00D00D(BuiltInId::clamp_Int3_Int1_Int1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20D00D00D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_30D00D00D(BuiltInId::clamp_Int4_Int1_Int1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30D00D00D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_10D10D10D(BuiltInId::clamp_Int2_Int2_Int2,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10D10D10D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_20D20D20D(BuiltInId::clamp_Int3_Int3_Int3,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20D20D20D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_30D30D30D(BuiltInId::clamp_Int4_Int4_Int4,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30D30D30D,
                                              3,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_00E00E00E(BuiltInId::clamp_UInt1_UInt1_UInt1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00E00E00E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_10E00E00E(BuiltInId::clamp_UInt2_UInt1_UInt1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10E00E00E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_20E00E00E(BuiltInId::clamp_UInt3_UInt1_UInt1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20E00E00E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_30E00E00E(BuiltInId::clamp_UInt4_UInt1_UInt1,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30E00E00E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_10E10E10E(BuiltInId::clamp_UInt2_UInt2_UInt2,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10E10E10E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_20E20E20E(BuiltInId::clamp_UInt3_UInt3_UInt3,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20E20E20E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction clamp_30E30E30E(BuiltInId::clamp_UInt4_UInt4_UInt4,
                                              BuiltInName::clamp,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30E30E30E,
                                              3,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpClamp,
                                              true);
    constexpr const TFunction mix_00B00B00B(BuiltInId::mix_Float1_Float1_Float1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00B00B00B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10B10B00B(BuiltInId::mix_Float2_Float2_Float1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B10B00B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20B20B00B(BuiltInId::mix_Float3_Float3_Float1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B00B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30B30B00B(BuiltInId::mix_Float4_Float4_Float1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30B00B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10B10B10B(BuiltInId::mix_Float2_Float2_Float2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B10B10B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20B20B20B(BuiltInId::mix_Float3_Float3_Float3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B20B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30B30B30B(BuiltInId::mix_Float4_Float4_Float4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30B30B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00C00C00C(BuiltInId::mix_Double1_Double1_Double1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00C00C00C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10C10C00C(BuiltInId::mix_Double2_Double2_Double1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C10C00C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20C20C00C(BuiltInId::mix_Double3_Double3_Double1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C00C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30C30C00C(BuiltInId::mix_Double4_Double4_Double1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C00C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10C10C10C(BuiltInId::mix_Double2_Double2_Double2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C10C10C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20C20C20C(BuiltInId::mix_Double3_Double3_Double3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C20C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30C30C30C(BuiltInId::mix_Double4_Double4_Double4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C30C,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00B00B00F(BuiltInId::mix_Float1_Float1_Bool1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00B00B00F,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10B10B10F(BuiltInId::mix_Float2_Float2_Bool2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B10B10F,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20B20B20F(BuiltInId::mix_Float3_Float3_Bool3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B20F,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30B30B30F(BuiltInId::mix_Float4_Float4_Bool4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30B30F,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00C00C00F(BuiltInId::mix_Double1_Double1_Bool1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00C00C00F,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10C10C10F(BuiltInId::mix_Double2_Double2_Bool2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C10C10F,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20C20C20F(BuiltInId::mix_Double3_Double3_Bool3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C20F,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30C30C30F(BuiltInId::mix_Double4_Double4_Bool4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C30F,
                                            3,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00D00D00F(BuiltInId::mix_Int1_Int1_Bool1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00D00D00F,
                                            3,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10D10D10F(BuiltInId::mix_Int2_Int2_Bool2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10D10D10F,
                                            3,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20D20D20F(BuiltInId::mix_Int3_Int3_Bool3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20D20D20F,
                                            3,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30D30D30F(BuiltInId::mix_Int4_Int4_Bool4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30D30D30F,
                                            3,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00E00E00F(BuiltInId::mix_UInt1_UInt1_Bool1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00E00E00F,
                                            3,
                                            StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10E10E10F(BuiltInId::mix_UInt2_UInt2_Bool2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10E10E10F,
                                            3,
                                            StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20E20E20F(BuiltInId::mix_UInt3_UInt3_Bool3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20E20E20F,
                                            3,
                                            StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30E30E30F(BuiltInId::mix_UInt4_UInt4_Bool4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30E30E30F,
                                            3,
                                            StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_00F00F00F(BuiltInId::mix_Bool1_Bool1_Bool1,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00F00F00F,
                                            3,
                                            StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_10F10F10F(BuiltInId::mix_Bool2_Bool2_Bool2,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10F10F10F,
                                            3,
                                            StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_20F20F20F(BuiltInId::mix_Bool3_Bool3_Bool3,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20F20F20F,
                                            3,
                                            StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction mix_30F30F30F(BuiltInId::mix_Bool4_Bool4_Bool4,
                                            BuiltInName::mix,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30F30F30F,
                                            3,
                                            StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpMix,
                                            true);
    constexpr const TFunction step_00B00B(BuiltInId::step_Float1_Float1,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B00B30B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_10B10B(BuiltInId::step_Float2_Float2,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10B10B00B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_20B20B(BuiltInId::step_Float3_Float3,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20B20B00B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_30B30B(BuiltInId::step_Float4_Float4,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30B30B30F,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00B10B(BuiltInId::step_Float1_Float2,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B10B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00B20B(BuiltInId::step_Float1_Float3,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B20B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00B30B(BuiltInId::step_Float1_Float4,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B30B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00C00C(BuiltInId::step_Double1_Double1,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00C00C10C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_10C10C(BuiltInId::step_Double2_Double2,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10C10C10F,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_20C20C(BuiltInId::step_Double3_Double3,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20C20C20F,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_30C30C(BuiltInId::step_Double4_Double4,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30C30C00B,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00C10C(BuiltInId::step_Double1_Double2,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00C10C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00C20C(BuiltInId::step_Double1_Double3,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00C20C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction step_00C30C(BuiltInId::step_Double1_Double4,
                                          BuiltInName::step,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00C30C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpStep,
                                          true);
    constexpr const TFunction smoothstep_00C00C00C(
        BuiltInId::smoothstep_Double1_Double1_Double1,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_10C10C10C(
        BuiltInId::smoothstep_Double2_Double2_Double2,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C10C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_20C20C20C(
        BuiltInId::smoothstep_Double3_Double3_Double3,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_30C30C30C(
        BuiltInId::smoothstep_Double4_Double4_Double4,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C30C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00C00C10C(
        BuiltInId::smoothstep_Double1_Double1_Double2,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C10C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00C00C20C(
        BuiltInId::smoothstep_Double1_Double1_Double3,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C20C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00C00C30C(
        BuiltInId::smoothstep_Double1_Double1_Double4,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C30C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00B00B00B(
        BuiltInId::smoothstep_Float1_Float1_Float1,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_10B10B10B(
        BuiltInId::smoothstep_Float2_Float2_Float2,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B10B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_20B20B20B(
        BuiltInId::smoothstep_Float3_Float3_Float3,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B20B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_30B30B30B(
        BuiltInId::smoothstep_Float4_Float4_Float4,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00B00B10B(
        BuiltInId::smoothstep_Float1_Float1_Float2,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B10B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00B00B20B(
        BuiltInId::smoothstep_Float1_Float1_Float3,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B20B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction smoothstep_00B00B30B(
        BuiltInId::smoothstep_Float1_Float1_Float4,
        BuiltInName::smoothstep,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpSmoothstep,
        true);
    constexpr const TFunction modf_00B00B(BuiltInId::modf_Float1_Float1,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00B_o_00B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_10B10B(BuiltInId::modf_Float2_Float2,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10B_o_10B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_20B20B(BuiltInId::modf_Float3_Float3,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20B_o_20B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_30B30B(BuiltInId::modf_Float4_Float4,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30B_o_30B,
                                          2,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_00C00C(BuiltInId::modf_Double1_Double1,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00C_o_00C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_10C10C(BuiltInId::modf_Double2_Double2,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10C_o_10C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_20C20C(BuiltInId::modf_Double3_Double3,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20C_o_20C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction modf_30C30C(BuiltInId::modf_Double4_Double4,
                                          BuiltInName::modf,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30C_o_30C,
                                          2,
                                          StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpModf,
                                          false);
    constexpr const TFunction isnan_00B(BuiltInId::isnan_Float1,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_10B(BuiltInId::isnan_Float2,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_20B(BuiltInId::isnan_Float3,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_30B(BuiltInId::isnan_Float4,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_00C(BuiltInId::isnan_Double1,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_10C(BuiltInId::isnan_Double2,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_20C(BuiltInId::isnan_Double3,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isnan_30C(BuiltInId::isnan_Double4,
                                        BuiltInName::isnan,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpIsnan,
                                        true);
    constexpr const TFunction isinf_00B(BuiltInId::isinf_Float1,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00B00B30B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_10B(BuiltInId::isinf_Float2,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10B_o_10B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_20B(BuiltInId::isinf_Float3,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20B20B00B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_30B(BuiltInId::isinf_Float4,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30B30D,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_00C(BuiltInId::isinf_Double1,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p00C10C,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_10C(BuiltInId::isinf_Double2,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p10C_o_10C,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_20C(BuiltInId::isinf_Double3,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p20C20C20F,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction isinf_30C(BuiltInId::isinf_Double4,
                                        BuiltInName::isinf,
                                        TExtension::UNDEFINED,
                                        BuiltInParameters::p30C30C00B,
                                        1,
                                        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                        EOpIsinf,
                                        true);
    constexpr const TFunction floatBitsToInt_00B(
        BuiltInId::floatBitsToInt_Float1,
        BuiltInName::floatBitsToInt,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpFloatBitsToInt,
        true);
    constexpr const TFunction floatBitsToInt_10B(
        BuiltInId::floatBitsToInt_Float2,
        BuiltInName::floatBitsToInt,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpFloatBitsToInt,
        true);
    constexpr const TFunction floatBitsToInt_20B(
        BuiltInId::floatBitsToInt_Float3,
        BuiltInName::floatBitsToInt,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpFloatBitsToInt,
        true);
    constexpr const TFunction floatBitsToInt_30B(
        BuiltInId::floatBitsToInt_Float4,
        BuiltInName::floatBitsToInt,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpFloatBitsToInt,
        true);
    constexpr const TFunction floatBitsToUint_00B(
        BuiltInId::floatBitsToUint_Float1,
        BuiltInName::floatBitsToUint,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpFloatBitsToUint,
        true);
    constexpr const TFunction floatBitsToUint_10B(
        BuiltInId::floatBitsToUint_Float2,
        BuiltInName::floatBitsToUint,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpFloatBitsToUint,
        true);
    constexpr const TFunction floatBitsToUint_20B(
        BuiltInId::floatBitsToUint_Float3,
        BuiltInName::floatBitsToUint,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpFloatBitsToUint,
        true);
    constexpr const TFunction floatBitsToUint_30B(
        BuiltInId::floatBitsToUint_Float4,
        BuiltInName::floatBitsToUint,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpFloatBitsToUint,
        true);
    constexpr const TFunction intBitsToFloat_00D(
        BuiltInId::intBitsToFloat_Int1,
        BuiltInName::intBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpIntBitsToFloat,
        true);
    constexpr const TFunction intBitsToFloat_10D(
        BuiltInId::intBitsToFloat_Int2,
        BuiltInName::intBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpIntBitsToFloat,
        true);
    constexpr const TFunction intBitsToFloat_20D(
        BuiltInId::intBitsToFloat_Int3,
        BuiltInName::intBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D20F,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpIntBitsToFloat,
        true);
    constexpr const TFunction intBitsToFloat_30D(
        BuiltInId::intBitsToFloat_Int4,
        BuiltInName::intBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D30F,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpIntBitsToFloat,
        true);
    constexpr const TFunction uintBitsToFloat_00E(
        BuiltInId::uintBitsToFloat_UInt1,
        BuiltInName::uintBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUintBitsToFloat,
        true);
    constexpr const TFunction uintBitsToFloat_10E(
        BuiltInId::uintBitsToFloat_UInt2,
        BuiltInName::uintBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUintBitsToFloat,
        true);
    constexpr const TFunction uintBitsToFloat_20E(
        BuiltInId::uintBitsToFloat_UInt3,
        BuiltInName::uintBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpUintBitsToFloat,
        true);
    constexpr const TFunction uintBitsToFloat_30E(
        BuiltInId::uintBitsToFloat_UInt4,
        BuiltInName::uintBitsToFloat,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpUintBitsToFloat,
        true);
    constexpr const TFunction fma_00B00B00B(BuiltInId::fma_Float1_Float1_Float1,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00B00B00B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_10B10B10B(BuiltInId::fma_Float2_Float2_Float2,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B10B10B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_20B20B20B(BuiltInId::fma_Float3_Float3_Float3,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B20B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_30B30B30B(BuiltInId::fma_Float4_Float4_Float4,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30B30B,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fmaExt_00B00B00B(
        BuiltInId::fmaExt_Float1_Float1_Float1,
        BuiltInName::fmaExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpFma,
        true);
    constexpr const TFunction fmaExt_10B10B10B(
        BuiltInId::fmaExt_Float2_Float2_Float2,
        BuiltInName::fmaExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p10B10B10B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpFma,
        true);
    constexpr const TFunction fmaExt_20B20B20B(
        BuiltInId::fmaExt_Float3_Float3_Float3,
        BuiltInName::fmaExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p20B20B20B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpFma,
        true);
    constexpr const TFunction fmaExt_30B30B30B(
        BuiltInId::fmaExt_Float4_Float4_Float4,
        BuiltInName::fmaExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p30B30B30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpFma,
        true);
    constexpr const TFunction fma_00C00C00C(BuiltInId::fma_Double1_Double1_Double1,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00C00C00C,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_10C10C10C(BuiltInId::fma_Double2_Double2_Double2,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C10C10C,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_20C20C20C(BuiltInId::fma_Double3_Double3_Double3,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C20C,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction fma_30C30C30C(BuiltInId::fma_Double4_Double4_Double4,
                                            BuiltInName::fma,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C30C,
                                            3,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpFma,
                                            true);
    constexpr const TFunction frexp_00B00D(BuiltInId::frexp_Float1_Int1,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00B_o_00D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_10B10D(BuiltInId::frexp_Float2_Int2,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10B_o_10D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_20B20D(BuiltInId::frexp_Float3_Int3,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B_o_20D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_30B30D(BuiltInId::frexp_Float4_Int4,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30B_o_30D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_00C00D(BuiltInId::frexp_Double1_Int1,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00C_o_00D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_10C10D(BuiltInId::frexp_Double2_Int2,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10C_o_10D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_20C20D(BuiltInId::frexp_Double3_Int3,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20C_o_20D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction frexp_30C30D(BuiltInId::frexp_Double4_Int4,
                                           BuiltInName::frexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30C_o_30D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpFrexp,
                                           false);
    constexpr const TFunction ldexp_00B00D(BuiltInId::ldexp_Float1_Int1,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00B00D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_10B10D(BuiltInId::ldexp_Float2_Int2,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10B10D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_20B20D(BuiltInId::ldexp_Float3_Int3,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B20D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_30B30D(BuiltInId::ldexp_Float4_Int4,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30B30D,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_00C00D(BuiltInId::ldexp_Double1_Int1,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00C00D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_10C10D(BuiltInId::ldexp_Double2_Int2,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10C10D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_20C20D(BuiltInId::ldexp_Double3_Int3,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20C20D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction ldexp_30C30D(BuiltInId::ldexp_Double4_Int4,
                                           BuiltInName::ldexp,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30C30D,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpLdexp,
                                           true);
    constexpr const TFunction packSnorm2x16_10B(
        BuiltInId::packSnorm2x16_Float2,
        BuiltInName::packSnorm2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackSnorm2x16,
        true);
    constexpr const TFunction packHalf2x16_10B(
        BuiltInId::packHalf2x16_Float2,
        BuiltInName::packHalf2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackHalf2x16,
        true);
    constexpr const TFunction unpackSnorm2x16_00E(
        BuiltInId::unpackSnorm2x16_UInt1,
        BuiltInName::unpackSnorm2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUnpackSnorm2x16,
        true);
    constexpr const TFunction unpackHalf2x16_00E(
        BuiltInId::unpackHalf2x16_UInt1,
        BuiltInName::unpackHalf2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUnpackHalf2x16,
        true);
    constexpr const TFunction packUnorm2x16_10B(
        BuiltInId::packUnorm2x16_Float2,
        BuiltInName::packUnorm2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackUnorm2x16,
        true);
    constexpr const TFunction unpackUnorm2x16_00E(
        BuiltInId::unpackUnorm2x16_UInt1,
        BuiltInName::unpackUnorm2x16,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUnpackUnorm2x16,
        true);
    constexpr const TFunction packUnorm4x8_30B(
        BuiltInId::packUnorm4x8_Float4,
        BuiltInName::packUnorm4x8,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackUnorm4x8,
        true);
    constexpr const TFunction packSnorm4x8_30B(
        BuiltInId::packSnorm4x8_Float4,
        BuiltInName::packSnorm4x8,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackSnorm4x8,
        true);
    constexpr const TFunction unpackUnorm4x8_00E(
        BuiltInId::unpackUnorm4x8_UInt1,
        BuiltInName::unpackUnorm4x8,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpUnpackUnorm4x8,
        true);
    constexpr const TFunction unpackSnorm4x8_00E(
        BuiltInId::unpackSnorm4x8_UInt1,
        BuiltInName::unpackSnorm4x8,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpUnpackSnorm4x8,
        true);
    constexpr const TFunction packDouble2x32_10E(
        BuiltInId::packDouble2x32_UInt2,
        BuiltInName::packDouble2x32,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        1,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpPackDouble2x32,
        true);
    constexpr const TFunction unpackDouble2x32_00C(
        BuiltInId::unpackDouble2x32_Double1,
        BuiltInName::unpackDouble2x32,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C10C,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUnpackDouble2x32,
        true);
    constexpr const TFunction length_00B(BuiltInId::length_Float1,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_10B(BuiltInId::length_Float2,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_20B(BuiltInId::length_Float3,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_30B(BuiltInId::length_Float4,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_00C(BuiltInId::length_Double1,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00C10C,
                                         1,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_10C(BuiltInId::length_Double2,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C_o_10C,
                                         1,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_20C(BuiltInId::length_Double3,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C20C20F,
                                         1,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction length_30C(BuiltInId::length_Double4,
                                         BuiltInName::length,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C30C00B,
                                         1,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpLength,
                                         true);
    constexpr const TFunction distance_00B00B(
        BuiltInId::distance_Float1_Float1,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_10B10B(
        BuiltInId::distance_Float2_Float2,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_20B20B(
        BuiltInId::distance_Float3_Float3,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_30B30B(
        BuiltInId::distance_Float4_Float4,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30F,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_00C00C(
        BuiltInId::distance_Double1_Double1,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C10C,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_10C10C(
        BuiltInId::distance_Double2_Double2,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C10F,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_20C20C(
        BuiltInId::distance_Double3_Double3,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20F,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction distance_30C30C(
        BuiltInId::distance_Double4_Double4,
        BuiltInName::distance,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C00B,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDistance,
        true);
    constexpr const TFunction dot_00B00B(BuiltInId::dot_Float1_Float1,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_10B10B(BuiltInId::dot_Float2_Float2,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B10B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_20B20B(BuiltInId::dot_Float3_Float3,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_30B30B(BuiltInId::dot_Float4_Float4,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30B30F,
                                         2,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_00C00C(BuiltInId::dot_Double1_Double1,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00C00C10C,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_10C10C(BuiltInId::dot_Double2_Double2,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10C10C10F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_20C20C(BuiltInId::dot_Double3_Double3,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20C20C20F,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction dot_30C30C(BuiltInId::dot_Double4_Double4,
                                         BuiltInName::dot,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30C30C00B,
                                         2,
                                         StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpDot,
                                         true);
    constexpr const TFunction cross_20B20B(BuiltInId::cross_Float3_Float3,
                                           BuiltInName::cross,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B20B00B,
                                           2,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpCross,
                                           true);
    constexpr const TFunction cross_20C20C(BuiltInId::cross_Double3_Double3,
                                           BuiltInName::cross,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20C20C20F,
                                           2,
                                           StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpCross,
                                           true);
    constexpr const TFunction normalize_00B(BuiltInId::normalize_Float1,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00B00B30B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_10B(BuiltInId::normalize_Float2,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10B_o_10B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_20B(BuiltInId::normalize_Float3,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20B20B00B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_30B(BuiltInId::normalize_Float4,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30B30D,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_00C(BuiltInId::normalize_Double1,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00C10C,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_10C(BuiltInId::normalize_Double2,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p10C_o_10C,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_20C(BuiltInId::normalize_Double3,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p20C20C20F,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction normalize_30C(BuiltInId::normalize_Double4,
                                            BuiltInName::normalize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p30C30C00B,
                                            1,
                                            StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpNormalize,
                                            true);
    constexpr const TFunction faceforward_00B00B00B(
        BuiltInId::faceforward_Float1_Float1_Float1,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_10B10B10B(
        BuiltInId::faceforward_Float2_Float2_Float2,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B10B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_20B20B20B(
        BuiltInId::faceforward_Float3_Float3_Float3,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B20B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_30B30B30B(
        BuiltInId::faceforward_Float4_Float4_Float4,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_00C00C00C(
        BuiltInId::faceforward_Double1_Double1_Double1,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C00C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_10C10C10C(
        BuiltInId::faceforward_Double2_Double2_Double2,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C10C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_20C20C20C(
        BuiltInId::faceforward_Double3_Double3_Double3,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction faceforward_30C30C30C(
        BuiltInId::faceforward_Double4_Double4_Double4,
        BuiltInName::faceforward,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C30C,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpFaceforward,
        true);
    constexpr const TFunction reflect_00B00B(BuiltInId::reflect_Float1_Float1,
                                             BuiltInName::reflect,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00B00B30B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpReflect,
                                             true);
    constexpr const TFunction reflect_10B10B(BuiltInId::reflect_Float2_Float2,
                                             BuiltInName::reflect,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p10B10B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                             EOpReflect,
                                             true);
    constexpr const TFunction reflect_20B20B(BuiltInId::reflect_Float3_Float3,
                                             BuiltInName::reflect,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p20B20B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                             EOpReflect,
                                             true);
    constexpr const TFunction reflect_30B30B(BuiltInId::reflect_Float4_Float4,
                                             BuiltInName::reflect,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p30B30B30F,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpReflect,
                                             true);
    constexpr const TFunction reflect_00C00C(
        BuiltInId::reflect_Double1_Double1,
        BuiltInName::reflect,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C10C,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpReflect,
        true);
    constexpr const TFunction reflect_10C10C(
        BuiltInId::reflect_Double2_Double2,
        BuiltInName::reflect,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C10F,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpReflect,
        true);
    constexpr const TFunction reflect_20C20C(
        BuiltInId::reflect_Double3_Double3,
        BuiltInName::reflect,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C20F,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpReflect,
        true);
    constexpr const TFunction reflect_30C30C(
        BuiltInId::reflect_Double4_Double4,
        BuiltInName::reflect,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C00B,
        2,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpReflect,
        true);
    constexpr const TFunction refract_00B00B00B(
        BuiltInId::refract_Float1_Float1_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_10B10B00B(
        BuiltInId::refract_Float2_Float2_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_20B20B00B(
        BuiltInId::refract_Float3_Float3_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_30B30B00B(
        BuiltInId::refract_Float4_Float4_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_00C00C00B(
        BuiltInId::refract_Double1_Double1_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p00C00C00B,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_10C10C00B(
        BuiltInId::refract_Double2_Double2_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p10C10C00B,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_20C20C00B(
        BuiltInId::refract_Double3_Double3_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p20C20C00B,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction refract_30C30C00B(
        BuiltInId::refract_Double4_Double4_Float1,
        BuiltInName::refract,
        TExtension::UNDEFINED,
        BuiltInParameters::p30C30C00B,
        3,
        StaticType::Get<EbtDouble, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpRefract,
        true);
    constexpr const TFunction ftransform_(BuiltInId::ftransform,
                                          BuiltInName::ftransform,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::empty,
                                          0,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpCallBuiltInFunction,
                                          false);
    constexpr const TFunction matrixCompMult_50B50B(
        BuiltInId::matrixCompMult_Float2x2_Float2x2,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::p50B50B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_A0BA0B(
        BuiltInId::matrixCompMult_Float3x3_Float3x3,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::pA0BA0B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_F0BF0B(
        BuiltInId::matrixCompMult_Float4x4_Float4x4,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::pF0BF0B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_90B90B(
        BuiltInId::matrixCompMult_Float2x3_Float2x3,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::p90B90B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_60B60B(
        BuiltInId::matrixCompMult_Float3x2_Float3x2,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::p60B60B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_D0BD0B(
        BuiltInId::matrixCompMult_Float2x4_Float2x4,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::pD0BD0B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_70B70B(
        BuiltInId::matrixCompMult_Float4x2_Float4x2,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::p70B70B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_E0BE0B(
        BuiltInId::matrixCompMult_Float3x4_Float3x4,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::pE0BE0B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction matrixCompMult_B0BB0B(
        BuiltInId::matrixCompMult_Float4x3_Float4x3,
        BuiltInName::matrixCompMult,
        TExtension::UNDEFINED,
        BuiltInParameters::pB0BB0B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
        EOpMulMatrixComponentWise,
        true);
    constexpr const TFunction outerProduct_10B10B(
        BuiltInId::outerProduct_Float2_Float2,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_20B20B(
        BuiltInId::outerProduct_Float3_Float3,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_30B30B(
        BuiltInId::outerProduct_Float4_Float4,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30F,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_20B10B(
        BuiltInId::outerProduct_Float3_Float2,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_10B20B(
        BuiltInId::outerProduct_Float2_Float3,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_30B10B(
        BuiltInId::outerProduct_Float4_Float2,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_10B30B(
        BuiltInId::outerProduct_Float2_Float4,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B30B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_30B20B(
        BuiltInId::outerProduct_Float4_Float3,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction outerProduct_20B30B(
        BuiltInId::outerProduct_Float3_Float4,
        BuiltInName::outerProduct,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B30B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
        EOpOuterProduct,
        true);
    constexpr const TFunction transpose_50B(BuiltInId::transpose_Float2x2,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p50B50B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_A0B(BuiltInId::transpose_Float3x3,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::pA0BA0B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_F0B(BuiltInId::transpose_Float4x4,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::pF0BF0B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_60B(BuiltInId::transpose_Float3x2,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p60B60B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 3>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_90B(BuiltInId::transpose_Float2x3,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p90B90B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 2>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_70B(BuiltInId::transpose_Float4x2,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p70B70B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 4>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_D0B(BuiltInId::transpose_Float2x4,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::pD0BD0B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 2>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_B0B(BuiltInId::transpose_Float4x3,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::pB0BB0B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 4>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction transpose_E0B(BuiltInId::transpose_Float3x4,
                                            BuiltInName::transpose,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::pE0BE0B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 3>(),
                                            EOpTranspose,
                                            true);
    constexpr const TFunction determinant_50B(
        BuiltInId::determinant_Float2x2,
        BuiltInName::determinant,
        TExtension::UNDEFINED,
        BuiltInParameters::p50B50B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDeterminant,
        true);
    constexpr const TFunction determinant_A0B(
        BuiltInId::determinant_Float3x3,
        BuiltInName::determinant,
        TExtension::UNDEFINED,
        BuiltInParameters::pA0BA0B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDeterminant,
        true);
    constexpr const TFunction determinant_F0B(
        BuiltInId::determinant_Float4x4,
        BuiltInName::determinant,
        TExtension::UNDEFINED,
        BuiltInParameters::pF0BF0B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpDeterminant,
        true);
    constexpr const TFunction inverse_50B(BuiltInId::inverse_Float2x2,
                                          BuiltInName::inverse,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p50B50B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 2>(),
                                          EOpInverse,
                                          true);
    constexpr const TFunction inverse_A0B(BuiltInId::inverse_Float3x3,
                                          BuiltInName::inverse,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::pA0BA0B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 3>(),
                                          EOpInverse,
                                          true);
    constexpr const TFunction inverse_F0B(BuiltInId::inverse_Float4x4,
                                          BuiltInName::inverse,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::pF0BF0B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 4>(),
                                          EOpInverse,
                                          true);
    constexpr const TFunction lessThan_10B10B(BuiltInId::lessThan_Float2_Float2,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10B10B00B,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_20B20B(BuiltInId::lessThan_Float3_Float3,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20B20B00B,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_30B30B(BuiltInId::lessThan_Float4_Float4,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30B30B30F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_10D10D(BuiltInId::lessThan_Int2_Int2,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10D10D_o_10D_o_10D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_20D20D(BuiltInId::lessThan_Int3_Int3,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20D20D20F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_30D30D(BuiltInId::lessThan_Int4_Int4,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30D30D30F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_10E10E(BuiltInId::lessThan_UInt2_UInt2,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10E10E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_20E20E(BuiltInId::lessThan_UInt3_UInt3,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20E20E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThan_30E30E(BuiltInId::lessThan_UInt4_UInt4,
                                              BuiltInName::lessThan,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30E30E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpLessThanComponentWise,
                                              true);
    constexpr const TFunction lessThanEqual_10B10B(
        BuiltInId::lessThanEqual_Float2_Float2,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_20B20B(
        BuiltInId::lessThanEqual_Float3_Float3,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_30B30B(
        BuiltInId::lessThanEqual_Float4_Float4,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_10D10D(
        BuiltInId::lessThanEqual_Int2_Int2,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_20D20D(
        BuiltInId::lessThanEqual_Int3_Int3,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D20F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_30D30D(
        BuiltInId::lessThanEqual_Int4_Int4,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_10E10E(
        BuiltInId::lessThanEqual_UInt2_UInt2,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_20E20E(
        BuiltInId::lessThanEqual_UInt3_UInt3,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction lessThanEqual_30E30E(
        BuiltInId::lessThanEqual_UInt4_UInt4,
        BuiltInName::lessThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpLessThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThan_10B10B(
        BuiltInId::greaterThan_Float2_Float2,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_20B20B(
        BuiltInId::greaterThan_Float3_Float3,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_30B30B(
        BuiltInId::greaterThan_Float4_Float4,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_10D10D(
        BuiltInId::greaterThan_Int2_Int2,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_20D20D(
        BuiltInId::greaterThan_Int3_Int3,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D20F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_30D30D(
        BuiltInId::greaterThan_Int4_Int4,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_10E10E(
        BuiltInId::greaterThan_UInt2_UInt2,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_20E20E(
        BuiltInId::greaterThan_UInt3_UInt3,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThan_30E30E(
        BuiltInId::greaterThan_UInt4_UInt4,
        BuiltInName::greaterThan,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_10B10B(
        BuiltInId::greaterThanEqual_Float2_Float2,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_20B20B(
        BuiltInId::greaterThanEqual_Float3_Float3,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_30B30B(
        BuiltInId::greaterThanEqual_Float4_Float4,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30B30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_10D10D(
        BuiltInId::greaterThanEqual_Int2_Int2,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_20D20D(
        BuiltInId::greaterThanEqual_Int3_Int3,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D20F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_30D30D(
        BuiltInId::greaterThanEqual_Int4_Int4,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D30F,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_10E10E(
        BuiltInId::greaterThanEqual_UInt2_UInt2,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_20E20E(
        BuiltInId::greaterThanEqual_UInt3_UInt3,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction greaterThanEqual_30E30E(
        BuiltInId::greaterThanEqual_UInt4_UInt4,
        BuiltInName::greaterThanEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        2,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpGreaterThanEqualComponentWise,
        true);
    constexpr const TFunction equal_10B10B(BuiltInId::equal_Float2_Float2,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10B10B00B,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_20B20B(BuiltInId::equal_Float3_Float3,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B20B00B,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_30B30B(BuiltInId::equal_Float4_Float4,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30B30B30F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_10D10D(BuiltInId::equal_Int2_Int2,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10D10D_o_10D_o_10D,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_20D20D(BuiltInId::equal_Int3_Int3,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20D20D20F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_30D30D(BuiltInId::equal_Int4_Int4,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30D30D30F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_10E10E(BuiltInId::equal_UInt2_UInt2,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10E10E00D00D,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_20E20E(BuiltInId::equal_UInt3_UInt3,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20E20E00D00D,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_30E30E(BuiltInId::equal_UInt4_UInt4,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30E30E00D00D,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_10F10F(BuiltInId::equal_Bool2_Bool2,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10F10F10F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_20F20F(BuiltInId::equal_Bool3_Bool3,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20F20F20F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction equal_30F30F(BuiltInId::equal_Bool4_Bool4,
                                           BuiltInName::equal,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30F30F30F,
                                           2,
                                           StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpEqualComponentWise,
                                           true);
    constexpr const TFunction notEqual_10B10B(BuiltInId::notEqual_Float2_Float2,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10B10B00B,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_20B20B(BuiltInId::notEqual_Float3_Float3,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20B20B00B,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_30B30B(BuiltInId::notEqual_Float4_Float4,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30B30B30F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_10D10D(BuiltInId::notEqual_Int2_Int2,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10D10D_o_10D_o_10D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_20D20D(BuiltInId::notEqual_Int3_Int3,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20D20D20F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_30D30D(BuiltInId::notEqual_Int4_Int4,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30D30D30F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_10E10E(BuiltInId::notEqual_UInt2_UInt2,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10E10E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_20E20E(BuiltInId::notEqual_UInt3_UInt3,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20E20E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_30E30E(BuiltInId::notEqual_UInt4_UInt4,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30E30E00D00D,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_10F10F(BuiltInId::notEqual_Bool2_Bool2,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p10F10F10F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_20F20F(BuiltInId::notEqual_Bool3_Bool3,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p20F20F20F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction notEqual_30F30F(BuiltInId::notEqual_Bool4_Bool4,
                                              BuiltInName::notEqual,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p30F30F30F,
                                              2,
                                              StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpNotEqualComponentWise,
                                              true);
    constexpr const TFunction any_10F(BuiltInId::any_Bool2,
                                      BuiltInName::any,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10F10F10F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAny,
                                      true);
    constexpr const TFunction any_20F(BuiltInId::any_Bool3,
                                      BuiltInName::any,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20F20F20F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAny,
                                      true);
    constexpr const TFunction any_30F(BuiltInId::any_Bool4,
                                      BuiltInName::any,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30F30F30F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAny,
                                      true);
    constexpr const TFunction all_10F(BuiltInId::all_Bool2,
                                      BuiltInName::all,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p10F10F10F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAll,
                                      true);
    constexpr const TFunction all_20F(BuiltInId::all_Bool3,
                                      BuiltInName::all,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p20F20F20F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAll,
                                      true);
    constexpr const TFunction all_30F(BuiltInId::all_Bool4,
                                      BuiltInName::all,
                                      TExtension::UNDEFINED,
                                      BuiltInParameters::p30F30F30F,
                                      1,
                                      StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
                                      EOpAll,
                                      true);
    constexpr const TFunction notFunc_10F(BuiltInId::notFunc_Bool2,
                                          BuiltInName::notFunc,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10F10F10F,
                                          1,
                                          StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpLogicalNotComponentWise,
                                          true);
    constexpr const TFunction notFunc_20F(BuiltInId::notFunc_Bool3,
                                          BuiltInName::notFunc,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20F20F20F,
                                          1,
                                          StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpLogicalNotComponentWise,
                                          true);
    constexpr const TFunction notFunc_30F(BuiltInId::notFunc_Bool4,
                                          BuiltInName::notFunc,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30F30F30F,
                                          1,
                                          StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpLogicalNotComponentWise,
                                          true);
    constexpr const TFunction bitfieldExtract_00D00D00D(
        BuiltInId::bitfieldExtract_Int1_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_10D00D00D(
        BuiltInId::bitfieldExtract_Int2_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_20D00D00D(
        BuiltInId::bitfieldExtract_Int3_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_30D00D00D(
        BuiltInId::bitfieldExtract_Int4_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_00E00D00D(
        BuiltInId::bitfieldExtract_UInt1_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_10E00D00D(
        BuiltInId::bitfieldExtract_UInt2_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_20E00D00D(
        BuiltInId::bitfieldExtract_UInt3_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldExtract_30E00D00D(
        BuiltInId::bitfieldExtract_UInt4_Int1_Int1,
        BuiltInName::bitfieldExtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldExtract,
        true);
    constexpr const TFunction bitfieldInsert_00D00D00D00D(
        BuiltInId::bitfieldInsert_Int1_Int1_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_10D10D00D00D(
        BuiltInId::bitfieldInsert_Int2_Int2_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_20D20D00D00D(
        BuiltInId::bitfieldInsert_Int3_Int3_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_30D30D00D00D(
        BuiltInId::bitfieldInsert_Int4_Int4_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_00E00E00D00D(
        BuiltInId::bitfieldInsert_UInt1_UInt1_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_10E10E00D00D(
        BuiltInId::bitfieldInsert_UInt2_UInt2_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_20E20E00D00D(
        BuiltInId::bitfieldInsert_UInt3_UInt3_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldInsert_30E30E00D00D(
        BuiltInId::bitfieldInsert_UInt4_UInt4_Int1_Int1,
        BuiltInName::bitfieldInsert,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldInsert,
        true);
    constexpr const TFunction bitfieldReverse_00D(
        BuiltInId::bitfieldReverse_Int1,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_10D(
        BuiltInId::bitfieldReverse_Int2,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_20D(
        BuiltInId::bitfieldReverse_Int3,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D20F,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_30D(
        BuiltInId::bitfieldReverse_Int4,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D30F,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_00E(
        BuiltInId::bitfieldReverse_UInt1,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E00E,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_10E(
        BuiltInId::bitfieldReverse_UInt2,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E00D00D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_20E(
        BuiltInId::bitfieldReverse_UInt3,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E00D00D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitfieldReverse_30E(
        BuiltInId::bitfieldReverse_UInt4,
        BuiltInName::bitfieldReverse,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E00D00D,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpBitfieldReverse,
        true);
    constexpr const TFunction bitCount_00D(BuiltInId::bitCount_Int1,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00D00D00D00D,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_10D(BuiltInId::bitCount_Int2,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10D10D_o_10D_o_10D,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_20D(BuiltInId::bitCount_Int3,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20D20D20F,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_30D(BuiltInId::bitCount_Int4,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30D30D30F,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_00E(BuiltInId::bitCount_UInt1,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00E00E00E,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_10E(BuiltInId::bitCount_UInt2,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10E10E00D00D,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_20E(BuiltInId::bitCount_UInt3,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20E20E00D00D,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction bitCount_30E(BuiltInId::bitCount_UInt4,
                                           BuiltInName::bitCount,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30E30E00D00D,
                                           1,
                                           StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpBitCount,
                                           true);
    constexpr const TFunction findLSB_00D(BuiltInId::findLSB_Int1,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00D00D00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_10D(BuiltInId::findLSB_Int2,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10D10D_o_10D_o_10D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_20D(BuiltInId::findLSB_Int3,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20D20D20F,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_30D(BuiltInId::findLSB_Int4,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30D30D30F,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_00E(BuiltInId::findLSB_UInt1,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00E00E00E,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_10E(BuiltInId::findLSB_UInt2,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10E10E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_20E(BuiltInId::findLSB_UInt3,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20E20E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findLSB_30E(BuiltInId::findLSB_UInt4,
                                          BuiltInName::findLSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30E30E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpFindLSB,
                                          true);
    constexpr const TFunction findMSB_00D(BuiltInId::findMSB_Int1,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00D00D00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_10D(BuiltInId::findMSB_Int2,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10D10D_o_10D_o_10D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_20D(BuiltInId::findMSB_Int3,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20D20D20F,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_30D(BuiltInId::findMSB_Int4,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30D30D30F,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_00E(BuiltInId::findMSB_UInt1,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p00E00E00E,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_10E(BuiltInId::findMSB_UInt2,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p10E10E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_20E(BuiltInId::findMSB_UInt3,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p20E20E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction findMSB_30E(BuiltInId::findMSB_UInt4,
                                          BuiltInName::findMSB,
                                          TExtension::UNDEFINED,
                                          BuiltInParameters::p30E30E00D00D,
                                          1,
                                          StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpFindMSB,
                                          true);
    constexpr const TFunction uaddCarry_00E00E00E(
        BuiltInId::uaddCarry_UInt1_UInt1_UInt1,
        BuiltInName::uaddCarry,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E_o_00E_o_00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUaddCarry,
        false);
    constexpr const TFunction uaddCarry_10E10E10E(
        BuiltInId::uaddCarry_UInt2_UInt2_UInt2,
        BuiltInName::uaddCarry,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E_o_10E_o_10E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUaddCarry,
        false);
    constexpr const TFunction uaddCarry_20E20E20E(
        BuiltInId::uaddCarry_UInt3_UInt3_UInt3,
        BuiltInName::uaddCarry,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E_o_20E_o_20E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpUaddCarry,
        false);
    constexpr const TFunction uaddCarry_30E30E30E(
        BuiltInId::uaddCarry_UInt4_UInt4_UInt4,
        BuiltInName::uaddCarry,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E_o_30E_o_30E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpUaddCarry,
        false);
    constexpr const TFunction usubBorrow_00E00E00E(
        BuiltInId::usubBorrow_UInt1_UInt1_UInt1,
        BuiltInName::usubBorrow,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E_o_00E_o_00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUsubBorrow,
        false);
    constexpr const TFunction usubBorrow_10E10E10E(
        BuiltInId::usubBorrow_UInt2_UInt2_UInt2,
        BuiltInName::usubBorrow,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E_o_10E_o_10E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpUsubBorrow,
        false);
    constexpr const TFunction usubBorrow_20E20E20E(
        BuiltInId::usubBorrow_UInt3_UInt3_UInt3,
        BuiltInName::usubBorrow,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E_o_20E_o_20E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpUsubBorrow,
        false);
    constexpr const TFunction usubBorrow_30E30E30E(
        BuiltInId::usubBorrow_UInt4_UInt4_UInt4,
        BuiltInName::usubBorrow,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E_o_30E_o_30E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpUsubBorrow,
        false);
    constexpr const TFunction umulExtended_00E00E00E00E(
        BuiltInId::umulExtended_UInt1_UInt1_UInt1_UInt1,
        BuiltInName::umulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p00E00E_o_00E_o_00E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUmulExtended,
        false);
    constexpr const TFunction umulExtended_10E10E10E10E(
        BuiltInId::umulExtended_UInt2_UInt2_UInt2_UInt2,
        BuiltInName::umulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p10E10E_o_10E_o_10E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUmulExtended,
        false);
    constexpr const TFunction umulExtended_20E20E20E20E(
        BuiltInId::umulExtended_UInt3_UInt3_UInt3_UInt3,
        BuiltInName::umulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p20E20E_o_20E_o_20E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUmulExtended,
        false);
    constexpr const TFunction umulExtended_30E30E30E30E(
        BuiltInId::umulExtended_UInt4_UInt4_UInt4_UInt4,
        BuiltInName::umulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p30E30E_o_30E_o_30E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpUmulExtended,
        false);
    constexpr const TFunction imulExtended_00D00D00D00D(
        BuiltInId::imulExtended_Int1_Int1_Int1_Int1,
        BuiltInName::imulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D_o_00D_o_00D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpImulExtended,
        false);
    constexpr const TFunction imulExtended_10D10D10D10D(
        BuiltInId::imulExtended_Int2_Int2_Int2_Int2,
        BuiltInName::imulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p10D10D_o_10D_o_10D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpImulExtended,
        false);
    constexpr const TFunction imulExtended_20D20D20D20D(
        BuiltInId::imulExtended_Int3_Int3_Int3_Int3,
        BuiltInName::imulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p20D20D_o_20D_o_20D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpImulExtended,
        false);
    constexpr const TFunction imulExtended_30D30D30D30D(
        BuiltInId::imulExtended_Int4_Int4_Int4_Int4,
        BuiltInName::imulExtended,
        TExtension::UNDEFINED,
        BuiltInParameters::p30D30D_o_30D_o_30D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpImulExtended,
        false);
    constexpr const TFunction texture2D_00I10B(
        BuiltInId::texture2D_Sampler2D1_Float2,
        BuiltInName::texture2D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00I20B(
        BuiltInId::texture2DProj_Sampler2D1_Float3,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00I30B(
        BuiltInId::texture2DProj_Sampler2D1_Float4,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureCube_00K20B(
        BuiltInId::textureCube_SamplerCube1_Float3,
        BuiltInName::textureCube,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B20B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1D_00g00B(
        BuiltInId::texture1D_Sampler1D1_Float1,
        BuiltInName::texture1D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProj_00g10B(
        BuiltInId::texture1DProj_Sampler1D1_Float2,
        BuiltInName::texture1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProj_00g30B(
        BuiltInId::texture1DProj_Sampler1D1_Float4,
        BuiltInName::texture1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3D_00J20B(
        BuiltInId::texture3D_Sampler3D1_Float3,
        BuiltInName::texture3D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3DProj_00J30B(
        BuiltInId::texture3DProj_Sampler3D1_Float4,
        BuiltInName::texture3DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20B20B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1D_00m20B(
        BuiltInId::shadow1D_Sampler1DShadow1_Float3,
        BuiltInName::shadow1D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1DProj_00m30B(
        BuiltInId::shadow1DProj_Sampler1DShadow1_Float4,
        BuiltInName::shadow1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00D00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2D_00d20B(
        BuiltInId::shadow2D_Sampler2DShadow1_Float3,
        BuiltInName::shadow2D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DProj_00d30B(
        BuiltInId::shadow2DProj_Sampler2DShadow1_Float4,
        BuiltInName::shadow2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2D_00M10B(
        BuiltInId::texture2D_SamplerExternalOES1_Float2,
        BuiltInName::texture2D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00M10B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00M20B(
        BuiltInId::texture2DProj_SamplerExternalOES1_Float3,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00M20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00M30B(
        BuiltInId::texture2DProj_SamplerExternalOES1_Float4,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00M30B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DRect_00O10B(
        BuiltInId::texture2DRect_Sampler2DRect1_Float2,
        BuiltInName::texture2DRect,
        TExtension::ARB_texture_rectangle,
        BuiltInParameters::p00O10B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DRectProj_00O20B(
        BuiltInId::texture2DRectProj_Sampler2DRect1_Float3,
        BuiltInName::texture2DRectProj,
        TExtension::ARB_texture_rectangle,
        BuiltInParameters::p00O20B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DRectProj_00O30B(
        BuiltInId::texture2DRectProj_Sampler2DRect1_Float4,
        BuiltInName::texture2DRectProj,
        TExtension::ARB_texture_rectangle,
        BuiltInParameters::p00O30B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00O10B(BuiltInId::texture_Sampler2DRect1_Float2,
                                             BuiltInName::texture,
                                             TExtension::ARB_texture_rectangle,
                                             BuiltInParameters::p00O10B10B10B10D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction textureProj_00O20B(
        BuiltInId::textureProj_Sampler2DRect1_Float3,
        BuiltInName::textureProj,
        TExtension::ARB_texture_rectangle,
        BuiltInParameters::p00O20B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00O30B(
        BuiltInId::textureProj_Sampler2DRect1_Float4,
        BuiltInName::textureProj,
        TExtension::ARB_texture_rectangle,
        BuiltInParameters::p00O30B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DGradEXT_00I10B10B10B(
        BuiltInId::texture2DGradEXT_Sampler2D1_Float2_Float2_Float2,
        BuiltInName::texture2DGradEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I10B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjGradEXT_00I20B10B10B(
        BuiltInId::texture2DProjGradEXT_Sampler2D1_Float3_Float2_Float2,
        BuiltInName::texture2DProjGradEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjGradEXT_00I30B10B10B(
        BuiltInId::texture2DProjGradEXT_Sampler2D1_Float4_Float2_Float2,
        BuiltInName::texture2DProjGradEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureCubeGradEXT_00K20B20B20B(
        BuiltInId::textureCubeGradEXT_SamplerCube1_Float3_Float3_Float3,
        BuiltInName::textureCubeGradEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00K20B20B20B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2D_00I10B00B(
        BuiltInId::texture2D_Sampler2D1_Float2_Float1,
        BuiltInName::texture2D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00I20B00B(
        BuiltInId::texture2DProj_Sampler2D1_Float3_Float1,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProj_00I30B00B(
        BuiltInId::texture2DProj_Sampler2D1_Float4_Float1,
        BuiltInName::texture2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureCube_00K20B00B(
        BuiltInId::textureCube_SamplerCube1_Float3_Float1,
        BuiltInName::textureCube,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3D_00J20B00B(
        BuiltInId::texture3D_Sampler3D1_Float3_Float1,
        BuiltInName::texture3D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3DProj_00J30B00B(
        BuiltInId::texture3DProj_Sampler3D1_Float4_Float1,
        BuiltInName::texture3DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3DLod_00J20B00B(
        BuiltInId::texture3DLod_Sampler3D1_Float3_Float1,
        BuiltInName::texture3DLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture3DProjLod_00J30B00B(
        BuiltInId::texture3DProjLod_Sampler3D1_Float4_Float1,
        BuiltInName::texture3DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1D_00g00B00B(
        BuiltInId::texture1D_Sampler1D1_Float1_Float1,
        BuiltInName::texture1D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProj_00g10B00B(
        BuiltInId::texture1DProj_Sampler1D1_Float2_Float1,
        BuiltInName::texture1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProj_00g30B00B(
        BuiltInId::texture1DProj_Sampler1D1_Float4_Float1,
        BuiltInName::texture1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1D_00m20B00B(
        BuiltInId::shadow1D_Sampler1DShadow1_Float3_Float1,
        BuiltInName::shadow1D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1DProj_00m30B00B(
        BuiltInId::shadow1DProj_Sampler1DShadow1_Float4_Float1,
        BuiltInName::shadow1DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2D_00d20B00B(
        BuiltInId::shadow2D_Sampler2DShadow1_Float3_Float1,
        BuiltInName::shadow2D,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DProj_00d30B00B(
        BuiltInId::shadow2DProj_Sampler2DShadow1_Float4_Float1,
        BuiltInName::shadow2DProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction dFdxExt_00B(BuiltInId::dFdxExt_Float1,
                                          BuiltInName::dFdxExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p00B00B30B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpDFdx,
                                          false);
    constexpr const TFunction dFdxExt_10B(BuiltInId::dFdxExt_Float2,
                                          BuiltInName::dFdxExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p10B_o_10B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpDFdx,
                                          false);
    constexpr const TFunction dFdxExt_20B(BuiltInId::dFdxExt_Float3,
                                          BuiltInName::dFdxExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p20B20B00B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpDFdx,
                                          false);
    constexpr const TFunction dFdxExt_30B(BuiltInId::dFdxExt_Float4,
                                          BuiltInName::dFdxExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p30B30D,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpDFdx,
                                          false);
    constexpr const TFunction dFdyExt_00B(BuiltInId::dFdyExt_Float1,
                                          BuiltInName::dFdyExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p00B00B30B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpDFdy,
                                          false);
    constexpr const TFunction dFdyExt_10B(BuiltInId::dFdyExt_Float2,
                                          BuiltInName::dFdyExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p10B_o_10B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                          EOpDFdy,
                                          false);
    constexpr const TFunction dFdyExt_20B(BuiltInId::dFdyExt_Float3,
                                          BuiltInName::dFdyExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p20B20B00B,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                          EOpDFdy,
                                          false);
    constexpr const TFunction dFdyExt_30B(BuiltInId::dFdyExt_Float4,
                                          BuiltInName::dFdyExt,
                                          TExtension::OES_standard_derivatives,
                                          BuiltInParameters::p30B30D,
                                          1,
                                          StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                          EOpDFdy,
                                          false);
    constexpr const TFunction fwidthExt_00B(BuiltInId::fwidthExt_Float1,
                                            BuiltInName::fwidthExt,
                                            TExtension::OES_standard_derivatives,
                                            BuiltInParameters::p00B00B30B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpFwidth,
                                            false);
    constexpr const TFunction fwidthExt_10B(BuiltInId::fwidthExt_Float2,
                                            BuiltInName::fwidthExt,
                                            TExtension::OES_standard_derivatives,
                                            BuiltInParameters::p10B_o_10B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpFwidth,
                                            false);
    constexpr const TFunction fwidthExt_20B(BuiltInId::fwidthExt_Float3,
                                            BuiltInName::fwidthExt,
                                            TExtension::OES_standard_derivatives,
                                            BuiltInParameters::p20B20B00B,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpFwidth,
                                            false);
    constexpr const TFunction fwidthExt_30B(BuiltInId::fwidthExt_Float4,
                                            BuiltInName::fwidthExt,
                                            TExtension::OES_standard_derivatives,
                                            BuiltInParameters::p30B30D,
                                            1,
                                            StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                            EOpFwidth,
                                            false);
    constexpr const TFunction texture2DLodEXT_00I10B00B(
        BuiltInId::texture2DLodEXT_Sampler2D1_Float2_Float1,
        BuiltInName::texture2DLodEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I10B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjLodEXT_00I20B00B(
        BuiltInId::texture2DProjLodEXT_Sampler2D1_Float3_Float1,
        BuiltInName::texture2DProjLodEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjLodEXT_00I30B00B(
        BuiltInId::texture2DProjLodEXT_Sampler2D1_Float4_Float1,
        BuiltInName::texture2DProjLodEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00I30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureCubeLodEXT_00K20B00B(
        BuiltInId::textureCubeLodEXT_SamplerCube1_Float3_Float1,
        BuiltInName::textureCubeLodEXT,
        TExtension::EXT_shader_texture_lod,
        BuiltInParameters::p00K20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DEXT_00d20B(
        BuiltInId::shadow2DEXT_Sampler2DShadow1_Float3,
        BuiltInName::shadow2DEXT,
        TExtension::EXT_shadow_samplers,
        BuiltInParameters::p00d20B00B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DProjEXT_00d30B(
        BuiltInId::shadow2DProjEXT_Sampler2DShadow1_Float4,
        BuiltInName::shadow2DProjEXT,
        TExtension::EXT_shadow_samplers,
        BuiltInParameters::p00d30B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DLod_00I10B00B(
        BuiltInId::texture2DLod_Sampler2D1_Float2_Float1,
        BuiltInName::texture2DLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjLod_00I20B00B(
        BuiltInId::texture2DProjLod_Sampler2D1_Float3_Float1,
        BuiltInName::texture2DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture2DProjLod_00I30B00B(
        BuiltInId::texture2DProjLod_Sampler2D1_Float4_Float1,
        BuiltInName::texture2DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureCubeLod_00K20B00B(
        BuiltInId::textureCubeLod_SamplerCube1_Float3_Float1,
        BuiltInName::textureCubeLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DLod_00g00B00B(
        BuiltInId::texture1DLod_Sampler1D1_Float1_Float1,
        BuiltInName::texture1DLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProjLod_00g10B00B(
        BuiltInId::texture1DProjLod_Sampler1D1_Float2_Float1,
        BuiltInName::texture1DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture1DProjLod_00g30B00B(
        BuiltInId::texture1DProjLod_Sampler1D1_Float4_Float1,
        BuiltInName::texture1DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1DLod_00m20B00B(
        BuiltInId::shadow1DLod_Sampler1DShadow1_Float3_Float1,
        BuiltInName::shadow1DLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow1DProjLod_00m30B00B(
        BuiltInId::shadow1DProjLod_Sampler1DShadow1_Float4_Float1,
        BuiltInName::shadow1DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DLod_00d20B00B(
        BuiltInId::shadow2DLod_Sampler2DShadow1_Float3_Float1,
        BuiltInName::shadow2DLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction shadow2DProjLod_00d30B00B(
        BuiltInId::shadow2DProjLod_Sampler2DShadow1_Float4_Float1,
        BuiltInName::shadow2DProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00I10B(BuiltInId::texture_Sampler2D1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00I10B00D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00R10B(BuiltInId::texture_ISampler2D1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00R10B10D00B,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00X10B(BuiltInId::texture_USampler2D1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00X10B10D00B,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00J20B(BuiltInId::texture_Sampler3D1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00J20B00B20D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00S20B(BuiltInId::texture_ISampler3D1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00S20B20B20B20D,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00Y20B(BuiltInId::texture_USampler3D1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00Y20B20B20B20D,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00K20B(BuiltInId::texture_SamplerCube1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00K20B20B20B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00T20B(BuiltInId::texture_ISamplerCube1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00T20B20B20B,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00Z20B(BuiltInId::texture_USamplerCube1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00Z20B00B,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00L20B(BuiltInId::texture_Sampler2DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00L20B10D00D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00U20B(BuiltInId::texture_ISampler2DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00U20B10D00D,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00a20B(BuiltInId::texture_USampler2DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00a20B10Dx400D,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00d20B(BuiltInId::texture_Sampler2DShadow1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00d20B00B10D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00e30B(BuiltInId::texture_SamplerCubeShadow1_Float4,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00e30B20B20B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00f30B(BuiltInId::texture_Sampler2DArrayShadow1_Float4,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00f30B10B10B10D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00g00B(BuiltInId::texture_Sampler1D1_Float1,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00g00B00B00B00D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00o00B(BuiltInId::texture_ISampler1D1_Float1,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00o00B00B00D,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00t00B(BuiltInId::texture_USampler1D1_Float1,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00t00B00B00D,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00m20B(BuiltInId::texture_Sampler1DShadow1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00m20B00B00D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00h20B(BuiltInId::texture_Sampler1DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00h20B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00p20B(BuiltInId::texture_ISampler1DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00p20B00B,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00u20B(BuiltInId::texture_USampler1DArray1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00u20B00B,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00i20B(BuiltInId::texture_Sampler1DArrayShadow1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00i20B00B00D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00q10B(BuiltInId::texture_ISampler2DRect1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00q10B10D00D,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00v10B(BuiltInId::texture_USampler2DRect1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00v10B10Dx400D,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00n20B(BuiltInId::texture_Sampler2DRectShadow1_Float3,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00n20B10B10B10D,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00l30B00B(
        BuiltInId::texture_SamplerCubeArrayShadow1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00l30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00I20B(
        BuiltInId::textureProj_Sampler2D1_Float3,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00R20B(
        BuiltInId::textureProj_ISampler2D1_Float3,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B00B10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00X20B(
        BuiltInId::textureProj_USampler2D1_Float3,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B10D00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00I30B(
        BuiltInId::textureProj_Sampler2D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00R30B(
        BuiltInId::textureProj_ISampler2D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B10B10B10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00X30B(
        BuiltInId::textureProj_USampler2D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B10D00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00J30B(
        BuiltInId::textureProj_Sampler3D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20B20B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00S30B(
        BuiltInId::textureProj_ISampler3D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20D00B,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00Y30B(
        BuiltInId::textureProj_USampler3D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B20B20B20D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00d30B(
        BuiltInId::textureProj_Sampler2DShadow1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10B10B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00g10B(
        BuiltInId::textureProj_Sampler1D1_Float2,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00o10B(
        BuiltInId::textureProj_ISampler1D1_Float2,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00B00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00t10B(
        BuiltInId::textureProj_USampler1D1_Float2,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00D00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00g30B(
        BuiltInId::textureProj_Sampler1D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00o30B(
        BuiltInId::textureProj_ISampler1D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00D00B,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00t30B(
        BuiltInId::textureProj_USampler1D1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00D00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00m30B(
        BuiltInId::textureProj_Sampler1DShadow1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00D00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00q20B(
        BuiltInId::textureProj_ISampler2DRect1_Float3,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B10B10B10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00v20B(
        BuiltInId::textureProj_USampler2DRect1_Float3,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B00D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00q30B(
        BuiltInId::textureProj_ISampler2DRect1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q30B10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00v30B(
        BuiltInId::textureProj_USampler2DRect1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v30B10D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00n30B(
        BuiltInId::textureProj_Sampler2DRectShadow1_Float4,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n30B10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00I10B00B(
        BuiltInId::textureLod_Sampler2D1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00R10B00B(
        BuiltInId::textureLod_ISampler2D1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00X10B00B(
        BuiltInId::textureLod_USampler2D1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00J20B00B(
        BuiltInId::textureLod_Sampler3D1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00S20B00B(
        BuiltInId::textureLod_ISampler3D1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B00B20D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00Y20B00B(
        BuiltInId::textureLod_USampler3D1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B00B20D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00K20B00B(
        BuiltInId::textureLod_SamplerCube1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00T20B00B(
        BuiltInId::textureLod_ISamplerCube1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00Z20B00B(
        BuiltInId::textureLod_USamplerCube1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00L20B00B(
        BuiltInId::textureLod_Sampler2DArray1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00U20B00B(
        BuiltInId::textureLod_ISampler2DArray1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00a20B00B(
        BuiltInId::textureLod_USampler2DArray1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00d20B00B(
        BuiltInId::textureLod_Sampler2DShadow1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00g00B00B(
        BuiltInId::textureLod_Sampler1D1_Float1_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00o00B00B(
        BuiltInId::textureLod_ISampler1D1_Float1_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00t00B00B(
        BuiltInId::textureLod_USampler1D1_Float1_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00m20B00B(
        BuiltInId::textureLod_Sampler1DShadow1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00h10B00B(
        BuiltInId::textureLod_Sampler1DArray1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00p10B00B(
        BuiltInId::textureLod_ISampler1DArray1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00u10B00B(
        BuiltInId::textureLod_USampler1DArray1_Float2_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00i20B00B(
        BuiltInId::textureLod_Sampler1DArrayShadow1_Float3_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00k30B00B(
        BuiltInId::textureLod_SamplerCubeArray1_Float4_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00s30B00B(
        BuiltInId::textureLod_ISamplerCubeArray1_Float4_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s30B00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLod_00x30B00B(
        BuiltInId::textureLod_USamplerCubeArray1_Float4_Float1,
        BuiltInName::textureLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x30B00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00I00D(
        BuiltInId::textureSize_Sampler2D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00R00D(
        BuiltInId::textureSize_ISampler2D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00X00D(
        BuiltInId::textureSize_USampler2D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00J00D(
        BuiltInId::textureSize_Sampler3D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00S00D(
        BuiltInId::textureSize_ISampler3D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00Y00D(
        BuiltInId::textureSize_USampler3D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00K00D(
        BuiltInId::textureSize_SamplerCube1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00T00D(
        BuiltInId::textureSize_ISamplerCube1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00Z00D(
        BuiltInId::textureSize_USamplerCube1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00L00D(
        BuiltInId::textureSize_Sampler2DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00U00D(
        BuiltInId::textureSize_ISampler2DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00a00D(
        BuiltInId::textureSize_USampler2DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00d00D(
        BuiltInId::textureSize_Sampler2DShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00e00D(
        BuiltInId::textureSize_SamplerCubeShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00f00D(
        BuiltInId::textureSize_Sampler2DArrayShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00g00D(
        BuiltInId::textureSize_Sampler1D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00D00D00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00o00D(
        BuiltInId::textureSize_ISampler1D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00D00D00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00t00D(
        BuiltInId::textureSize_USampler1D1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00D00D00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00m00D(
        BuiltInId::textureSize_Sampler1DShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00k00D(
        BuiltInId::textureSize_SamplerCubeArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00s00D(
        BuiltInId::textureSize_ISamplerCubeArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00x00D(
        BuiltInId::textureSize_USamplerCubeArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00l00D(
        BuiltInId::textureSize_SamplerCubeArrayShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00l00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00O(BuiltInId::textureSize_Sampler2DRect1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00O20B00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00q(BuiltInId::textureSize_ISampler2DRect1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00q30B10D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00v(BuiltInId::textureSize_USampler2DRect1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00v20B00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00n(BuiltInId::textureSize_Sampler2DRectShadow1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00n10B00B10Dx4,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00h00D(
        BuiltInId::textureSize_Sampler1DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00p00D(
        BuiltInId::textureSize_ISampler1DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00u00D(
        BuiltInId::textureSize_USampler1DArray1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00i00D(
        BuiltInId::textureSize_Sampler1DArrayShadow1_Int1,
        BuiltInName::textureSize,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00j(BuiltInId::textureSize_SamplerBuffer1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00j00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00r(BuiltInId::textureSize_ISamplerBuffer1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00r00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00w(BuiltInId::textureSize_USamplerBuffer1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00w00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureProjLod_00I20B00B(
        BuiltInId::textureProjLod_Sampler2D1_Float3_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00R20B00B(
        BuiltInId::textureProjLod_ISampler2D1_Float3_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00X20B00B(
        BuiltInId::textureProjLod_USampler2D1_Float3_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00I30B00B(
        BuiltInId::textureProjLod_Sampler2D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00R30B00B(
        BuiltInId::textureProjLod_ISampler2D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00X30B00B(
        BuiltInId::textureProjLod_USampler2D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00J30B00B(
        BuiltInId::textureProjLod_Sampler3D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00S30B00B(
        BuiltInId::textureProjLod_ISampler3D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B00B20D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00Y30B00B(
        BuiltInId::textureProjLod_USampler3D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B00B20D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00d30B00B(
        BuiltInId::textureProjLod_Sampler2DShadow1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00g10B00B(
        BuiltInId::textureProjLod_Sampler1D1_Float2_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00o10B00B(
        BuiltInId::textureProjLod_ISampler1D1_Float2_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00t10B00B(
        BuiltInId::textureProjLod_USampler1D1_Float2_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00g30B00B(
        BuiltInId::textureProjLod_Sampler1D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00o30B00B(
        BuiltInId::textureProjLod_ISampler1D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00t30B00B(
        BuiltInId::textureProjLod_USampler1D1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLod_00m30B00B(
        BuiltInId::textureProjLod_Sampler1DShadow1_Float4_Float1,
        BuiltInName::textureProjLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00I10D00D(
        BuiltInId::texelFetch_Sampler2D1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10D00D10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00R10D00D(
        BuiltInId::texelFetch_ISampler2D1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10D00D10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00X10D00D(
        BuiltInId::texelFetch_USampler2D1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10D00D10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00J20D00D(
        BuiltInId::texelFetch_Sampler3D1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20D00D20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00S20D00D(
        BuiltInId::texelFetch_ISampler3D1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20D00D20D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00Y20D00D(
        BuiltInId::texelFetch_USampler3D1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20D00D20D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00L20D00D(
        BuiltInId::texelFetch_Sampler2DArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20D00D10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00U20D00D(
        BuiltInId::texelFetch_ISampler2DArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20D00D10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00a20D00D(
        BuiltInId::texelFetch_USampler2DArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20D00D10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00g00D00D(
        BuiltInId::texelFetch_Sampler1D1_Int1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00D00D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00o00D00D(
        BuiltInId::texelFetch_ISampler1D1_Int1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00t00D00D(
        BuiltInId::texelFetch_USampler1D1_Int1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00D00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00O10D(
        BuiltInId::texelFetch_Sampler2DRect1_Int2,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10D10D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00q10D(
        BuiltInId::texelFetch_ISampler2DRect1_Int2,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10D10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00v10D(
        BuiltInId::texelFetch_USampler2DRect1_Int2,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10D10D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00h10D00D(
        BuiltInId::texelFetch_Sampler1DArray1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10D00D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00p10D00D(
        BuiltInId::texelFetch_ISampler1DArray1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00u10D00D(
        BuiltInId::texelFetch_USampler1DArray1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10D00D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00j00D(
        BuiltInId::texelFetch_SamplerBuffer1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00j00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00r00D(
        BuiltInId::texelFetch_ISamplerBuffer1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00r00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00w00D(
        BuiltInId::texelFetch_USamplerBuffer1_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00w00D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00I10B10B10B(
        BuiltInId::textureGrad_Sampler2D1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00R10B10B10B(
        BuiltInId::textureGrad_ISampler2D1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00X10B10B10B(
        BuiltInId::textureGrad_USampler2D1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00J20B20B20B(
        BuiltInId::textureGrad_Sampler3D1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B20B20B20D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00S20B20B20B(
        BuiltInId::textureGrad_ISampler3D1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B20B20B20D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00Y20B20B20B(
        BuiltInId::textureGrad_USampler3D1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20B20B20D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00K20B20B20B(
        BuiltInId::textureGrad_SamplerCube1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B20B20B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00T20B20B20B(
        BuiltInId::textureGrad_ISamplerCube1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B20B20B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00Z20B20B20B(
        BuiltInId::textureGrad_USamplerCube1_Float3_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B20B20B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00I00B00B00B(
        BuiltInId::textureGrad_Sampler2D1_Float1_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I00B00B00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00R00B00B00B(
        BuiltInId::textureGrad_ISampler2D1_Float1_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R00B00B00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00X00B00B00B(
        BuiltInId::textureGrad_USampler2D1_Float1_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X00B00B00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00O10B10B10B(
        BuiltInId::textureGrad_Sampler2DRect1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00q10B10B10B(
        BuiltInId::textureGrad_ISampler2DRect1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00v10B10B10B(
        BuiltInId::textureGrad_USampler2DRect1_Float2_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00n20B10B10B(
        BuiltInId::textureGrad_Sampler2DRectShadow1_Float3_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00d20B10B10B(
        BuiltInId::textureGrad_Sampler2DShadow1_Float3_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00e30B20B20B(
        BuiltInId::textureGrad_SamplerCubeShadow1_Float4_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e30B20B20B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00L20B10B10B(
        BuiltInId::textureGrad_Sampler2DArray1_Float3_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00U20B10B10B(
        BuiltInId::textureGrad_ISampler2DArray1_Float3_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00a20B10B10B(
        BuiltInId::textureGrad_USampler2DArray1_Float3_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00f30B10B10B(
        BuiltInId::textureGrad_Sampler2DArrayShadow1_Float4_Float2_Float2,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00m20B00B00B(
        BuiltInId::textureGrad_Sampler1DShadow1_Float3_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00h10B00B00B(
        BuiltInId::textureGrad_Sampler1DArray1_Float2_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00p10B00B00B(
        BuiltInId::textureGrad_ISampler1DArray1_Float2_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00u10B00B00B(
        BuiltInId::textureGrad_USampler1DArray1_Float2_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00i20B00B00B(
        BuiltInId::textureGrad_Sampler1DArrayShadow1_Float3_Float1_Float1,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00k30B20B20B(
        BuiltInId::textureGrad_SamplerCubeArray1_Float4_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B20B20B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00s30B20B20B(
        BuiltInId::textureGrad_ISamplerCubeArray1_Float4_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s30B20B20B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGrad_00x30B20B20B(
        BuiltInId::textureGrad_USamplerCubeArray1_Float4_Float3_Float3,
        BuiltInName::textureGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x30B20B20B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00I20B10B10B(
        BuiltInId::textureProjGrad_Sampler2D1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00R20B10B10B(
        BuiltInId::textureProjGrad_ISampler2D1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00X20B10B10B(
        BuiltInId::textureProjGrad_USampler2D1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00I30B10B10B(
        BuiltInId::textureProjGrad_Sampler2D1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00R30B10B10B(
        BuiltInId::textureProjGrad_ISampler2D1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00X30B10B10B(
        BuiltInId::textureProjGrad_USampler2D1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00J30B20B20B(
        BuiltInId::textureProjGrad_Sampler3D1_Float4_Float3_Float3,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20B20B20D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00S30B20B20B(
        BuiltInId::textureProjGrad_ISampler3D1_Float4_Float3_Float3,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20B20B20D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00Y30B20B20B(
        BuiltInId::textureProjGrad_USampler3D1_Float4_Float3_Float3,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B20B20B20D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00d30B10B10B(
        BuiltInId::textureProjGrad_Sampler2DShadow1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00g10B00B00B(
        BuiltInId::textureProjGrad_Sampler1D1_Float2_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00o10B00B00B(
        BuiltInId::textureProjGrad_ISampler1D1_Float2_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00t10B00B00B(
        BuiltInId::textureProjGrad_USampler1D1_Float2_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00g30B00B00B(
        BuiltInId::textureProjGrad_Sampler1D1_Float4_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00o30B00B00B(
        BuiltInId::textureProjGrad_ISampler1D1_Float4_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00t30B00B00B(
        BuiltInId::textureProjGrad_USampler1D1_Float4_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00m30B00B00B(
        BuiltInId::textureProjGrad_Sampler1DShadow1_Float4_Float1_Float1,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00O20B10B10B(
        BuiltInId::textureProjGrad_Sampler2DRect1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O20B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00q20B10B10B(
        BuiltInId::textureProjGrad_ISampler2DRect1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00v20B10B10B(
        BuiltInId::textureProjGrad_USampler2DRect1_Float3_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00O30B10B10B(
        BuiltInId::textureProjGrad_Sampler2DRect1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00q30B10B10B(
        BuiltInId::textureProjGrad_ISampler2DRect1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q30B10B10B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00v30B10B10B(
        BuiltInId::textureProjGrad_USampler2DRect1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v30B10B10B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGrad_00n30B10B10B(
        BuiltInId::textureProjGrad_Sampler2DRectShadow1_Float4_Float2_Float2,
        BuiltInName::textureProjGrad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n30B10B10B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00g(
        BuiltInId::textureQueryLevels_Sampler1D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00o(
        BuiltInId::textureQueryLevels_ISampler1D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00t(
        BuiltInId::textureQueryLevels_USampler1D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00D00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00I(
        BuiltInId::textureQueryLevels_Sampler2D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00R(
        BuiltInId::textureQueryLevels_ISampler2D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00X(
        BuiltInId::textureQueryLevels_USampler2D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10D00D10D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00J(
        BuiltInId::textureQueryLevels_Sampler3D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20B20B20D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00S(
        BuiltInId::textureQueryLevels_ISampler3D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20D00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00Y(
        BuiltInId::textureQueryLevels_USampler3D1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20B20B20D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00K(
        BuiltInId::textureQueryLevels_SamplerCube1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00T(
        BuiltInId::textureQueryLevels_ISamplerCube1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00Z(
        BuiltInId::textureQueryLevels_USamplerCube1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00h(
        BuiltInId::textureQueryLevels_Sampler1DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00B00B00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00p(
        BuiltInId::textureQueryLevels_ISampler1DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00u(
        BuiltInId::textureQueryLevels_USampler1DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00L(
        BuiltInId::textureQueryLevels_Sampler2DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00U(
        BuiltInId::textureQueryLevels_ISampler2DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00a(
        BuiltInId::textureQueryLevels_USampler2DArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00k(
        BuiltInId::textureQueryLevels_SamplerCubeArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00s(
        BuiltInId::textureQueryLevels_ISamplerCubeArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s20B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00x(
        BuiltInId::textureQueryLevels_USamplerCubeArray1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x20B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00m(
        BuiltInId::textureQueryLevels_Sampler1DShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00D00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00d(
        BuiltInId::textureQueryLevels_Sampler2DShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00e(
        BuiltInId::textureQueryLevels_SamplerCubeShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e20B00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00i(
        BuiltInId::textureQueryLevels_Sampler1DArrayShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00f(
        BuiltInId::textureQueryLevels_Sampler2DArrayShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f10B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLevels_00l(
        BuiltInId::textureQueryLevels_SamplerCubeArrayShadow1,
        BuiltInName::textureQueryLevels,
        TExtension::UNDEFINED,
        BuiltInParameters::p00l30B00B,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00P(
        BuiltInId::textureSamples_Sampler2DMS1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00P10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00V(
        BuiltInId::textureSamples_ISampler2DMS1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00V10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00b(
        BuiltInId::textureSamples_USampler2DMS1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00b10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00Q(
        BuiltInId::textureSamples_Sampler2DMSArray1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Q20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00W(
        BuiltInId::textureSamples_ISampler2DMSArray1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00W20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSamples_00c(
        BuiltInId::textureSamples_USampler2DMSArray1,
        BuiltInName::textureSamples,
        TExtension::UNDEFINED,
        BuiltInParameters::p00c20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00P(BuiltInId::textureSize_Sampler2DMS1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00P10D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00V(BuiltInId::textureSize_ISampler2DMS1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00V10D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00b(BuiltInId::textureSize_USampler2DMS1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00b10D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSizeExt_00P(
        BuiltInId::textureSizeExt_Sampler2DMS1,
        BuiltInName::textureSizeExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00P10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSizeExt_00V(
        BuiltInId::textureSizeExt_ISampler2DMS1,
        BuiltInName::textureSizeExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00V10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSizeExt_00b(
        BuiltInId::textureSizeExt_USampler2DMS1,
        BuiltInName::textureSizeExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00b10D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00Q(BuiltInId::textureSize_Sampler2DMSArray1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00Q20D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00W(BuiltInId::textureSize_ISampler2DMSArray1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00W20D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSize_00c(BuiltInId::textureSize_USampler2DMSArray1,
                                              BuiltInName::textureSize,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p00c20D00D,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction textureSizeExt_00Q(
        BuiltInId::textureSizeExt_Sampler2DMSArray1,
        BuiltInName::textureSizeExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00Q20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSizeExt_00W(
        BuiltInId::textureSizeExt_ISampler2DMSArray1,
        BuiltInName::textureSizeExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00W20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSizeExt_00c(
        BuiltInId::textureSizeExt_USampler2DMSArray1,
        BuiltInName::textureSizeExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00c20D00D,
        1,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00k30B(BuiltInId::texture_SamplerCubeArray1_Float4,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00k30B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00s30B(BuiltInId::texture_ISamplerCubeArray1_Float4,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00s30B00B,
                                             2,
                                             StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00x30B(BuiltInId::texture_USamplerCubeArray1_Float4,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00x30B00B,
                                             2,
                                             StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction texture_00k30B00B(
        BuiltInId::texture_SamplerCubeArray1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00s30B00B(
        BuiltInId::texture_ISamplerCubeArray1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s30B00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00x30B00B(
        BuiltInId::texture_USamplerCubeArray1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x30B00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00k30B(
        BuiltInId::textureGather_SamplerCubeArray1_Float4,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00s30B(
        BuiltInId::textureGather_ISamplerCubeArray1_Float4,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s30B00B,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00x30B(
        BuiltInId::textureGather_USamplerCubeArray1_Float4,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x30B00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00k30B00D(
        BuiltInId::textureGather_SamplerCubeArray1_Float4_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k30B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00s30B00D(
        BuiltInId::textureGather_ISamplerCubeArray1_Float4_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s30B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00x30B00D(
        BuiltInId::textureGather_USamplerCubeArray1_Float4_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x30B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00l30B00B(
        BuiltInId::textureGather_SamplerCubeArrayShadow1_Float4_Float1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00l30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00P10D00D(
        BuiltInId::texelFetch_Sampler2DMS1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00P10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00V10D00D(
        BuiltInId::texelFetch_ISampler2DMS1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00V10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00b10D00D(
        BuiltInId::texelFetch_USampler2DMS1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00b10D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00P10D00D(
        BuiltInId::texelFetchExt_Sampler2DMS1_Int2_Int1,
        BuiltInName::texelFetchExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00P10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00V10D00D(
        BuiltInId::texelFetchExt_ISampler2DMS1_Int2_Int1,
        BuiltInName::texelFetchExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00V10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00b10D00D(
        BuiltInId::texelFetchExt_USampler2DMS1_Int2_Int1,
        BuiltInName::texelFetchExt,
        TExtension::ANGLE_texture_multisample,
        BuiltInParameters::p00b10D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00Q20D00D(
        BuiltInId::texelFetch_Sampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Q20D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00W20D00D(
        BuiltInId::texelFetch_ISampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00W20D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00c20D00D(
        BuiltInId::texelFetch_USampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetch,
        TExtension::UNDEFINED,
        BuiltInParameters::p00c20D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00Q20D00D(
        BuiltInId::texelFetchExt_Sampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetchExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00Q20D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00W20D00D(
        BuiltInId::texelFetchExt_ISampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetchExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00W20D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchExt_00c20D00D(
        BuiltInId::texelFetchExt_USampler2DMSArray1_Int3_Int1,
        BuiltInName::texelFetchExt,
        TExtension::OES_texture_storage_multisample_2d_array,
        BuiltInParameters::p00c20D00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00I10B00B(
        BuiltInId::texture_Sampler2D1_Float2_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00R10B00B(
        BuiltInId::texture_ISampler2D1_Float2_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00X10B00B(
        BuiltInId::texture_USampler2D1_Float2_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00J20B00B(
        BuiltInId::texture_Sampler3D1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00S20B00B(
        BuiltInId::texture_ISampler3D1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B00B20D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00Y20B00B(
        BuiltInId::texture_USampler3D1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B00B20D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00K20B00B(
        BuiltInId::texture_SamplerCube1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00T20B00B(
        BuiltInId::texture_ISamplerCube1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00Z20B00B(
        BuiltInId::texture_USamplerCube1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00L20B00B(
        BuiltInId::texture_Sampler2DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00U20B00B(
        BuiltInId::texture_ISampler2DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00a20B00B(
        BuiltInId::texture_USampler2DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00I20B00B(
        BuiltInId::textureProj_Sampler2D1_Float3_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00R20B00B(
        BuiltInId::textureProj_ISampler2D1_Float3_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00X20B00B(
        BuiltInId::textureProj_USampler2D1_Float3_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00I30B00B(
        BuiltInId::textureProj_Sampler2D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00R30B00B(
        BuiltInId::textureProj_ISampler2D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B00B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00X30B00B(
        BuiltInId::textureProj_USampler2D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B00B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00J30B00B(
        BuiltInId::textureProj_Sampler3D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B00B20D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00S30B00B(
        BuiltInId::textureProj_ISampler3D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B00B20D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00Y30B00B(
        BuiltInId::textureProj_USampler3D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B00B20D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00d20B00B(
        BuiltInId::texture_Sampler2DShadow1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00e30B00B(
        BuiltInId::texture_SamplerCubeShadow1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00d30B00B(
        BuiltInId::textureProj_Sampler2DShadow1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B00B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00g00B00B(
        BuiltInId::texture_Sampler1D1_Float1_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00o00B00B(
        BuiltInId::texture_ISampler1D1_Float1_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00t00B00B(
        BuiltInId::texture_USampler1D1_Float1_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00m20B00B(
        BuiltInId::texture_Sampler1DShadow1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00h20B00B(
        BuiltInId::texture_Sampler1DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00p20B00B(
        BuiltInId::texture_ISampler1DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p20B00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00u20B00B(
        BuiltInId::texture_USampler1DArray1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u20B00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00i20B00B(
        BuiltInId::texture_Sampler1DArrayShadow1_Float3_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00f30B00B(
        BuiltInId::texture_Sampler2DArrayShadow1_Float4_Float1,
        BuiltInName::texture,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00g10B00B(
        BuiltInId::textureProj_Sampler1D1_Float2_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00o10B00B(
        BuiltInId::textureProj_ISampler1D1_Float2_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00t10B00B(
        BuiltInId::textureProj_USampler1D1_Float2_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00g30B00B(
        BuiltInId::textureProj_Sampler1D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00o30B00B(
        BuiltInId::textureProj_ISampler1D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00t30B00B(
        BuiltInId::textureProj_USampler1D1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00m30B00B(
        BuiltInId::textureProj_Sampler1DShadow1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00M10B00B(
        BuiltInId::texture_SamplerExternalOES1_Float2_Float1,
        BuiltInName::texture,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M10B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00M20B00B(
        BuiltInId::textureProj_SamplerExternalOES1_Float3_Float1,
        BuiltInName::textureProj,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00M30B00B(
        BuiltInId::textureProj_SamplerExternalOES1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00N10B00B(
        BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2_Float1,
        BuiltInName::texture,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N10B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00N20B00B(
        BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3_Float1,
        BuiltInName::textureProj,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00N30B00B(
        BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4_Float1,
        BuiltInName::textureProj,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N30B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00g00B(
        BuiltInId::textureQueryLod_Sampler1D1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00o00B(
        BuiltInId::textureQueryLod_ISampler1D1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00t00B(
        BuiltInId::textureQueryLod_USampler1D1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00I10B(
        BuiltInId::textureQueryLod_Sampler2D1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00R10B(
        BuiltInId::textureQueryLod_ISampler2D1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00X10B(
        BuiltInId::textureQueryLod_USampler2D1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00J20B(
        BuiltInId::textureQueryLod_Sampler3D1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00S20B(
        BuiltInId::textureQueryLod_ISampler3D1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B20B20B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00Y20B(
        BuiltInId::textureQueryLod_USampler3D1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20B20B20D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00K20B(
        BuiltInId::textureQueryLod_SamplerCube1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B20B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00T20B(
        BuiltInId::textureQueryLod_ISamplerCube1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B20B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00Z20B(
        BuiltInId::textureQueryLod_USamplerCube1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00h00B(
        BuiltInId::textureQueryLod_Sampler1DArray1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00p00B(
        BuiltInId::textureQueryLod_ISampler1DArray1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00u00B(
        BuiltInId::textureQueryLod_USampler1DArray1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00L10B(
        BuiltInId::textureQueryLod_Sampler2DArray1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00U10B(
        BuiltInId::textureQueryLod_ISampler2DArray1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00a10B(
        BuiltInId::textureQueryLod_USampler2DArray1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00k20B(
        BuiltInId::textureQueryLod_SamplerCubeArray1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00k20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00s20B(
        BuiltInId::textureQueryLod_ISamplerCubeArray1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00s20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00x20B(
        BuiltInId::textureQueryLod_USamplerCubeArray1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00x20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00m00B(
        BuiltInId::textureQueryLod_Sampler1DShadow1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00d10B(
        BuiltInId::textureQueryLod_Sampler2DShadow1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d10B00B10Dx4,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00e20B(
        BuiltInId::textureQueryLod_SamplerCubeShadow1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00i00B(
        BuiltInId::textureQueryLod_Sampler1DArrayShadow1_Float1,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00f10B(
        BuiltInId::textureQueryLod_Sampler2DArrayShadow1_Float2,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureQueryLod_00l20B(
        BuiltInId::textureQueryLod_SamplerCubeArrayShadow1_Float3,
        BuiltInName::textureQueryLod,
        TExtension::UNDEFINED,
        BuiltInParameters::p00l20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00I10B10D(
        BuiltInId::textureOffset_Sampler2D1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00R10B10D(
        BuiltInId::textureOffset_ISampler2D1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00X10B10D(
        BuiltInId::textureOffset_USampler2D1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00J20B20D(
        BuiltInId::textureOffset_Sampler3D1_Float3_Int3,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B20D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00S20B20D(
        BuiltInId::textureOffset_ISampler3D1_Float3_Int3,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00Y20B20D(
        BuiltInId::textureOffset_USampler3D1_Float3_Int3,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00d20B10D(
        BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00L20B10D(
        BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00U20B10D(
        BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00a20B10D(
        BuiltInId::textureOffset_USampler2DArray1_Float3_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00g00B00D(
        BuiltInId::textureOffset_Sampler1D1_Float1_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00o00B00D(
        BuiltInId::textureOffset_ISampler1D1_Float1_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00t00B00D(
        BuiltInId::textureOffset_USampler1D1_Float1_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00O10B10D(
        BuiltInId::textureOffset_Sampler2DRect1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00q10B10D(
        BuiltInId::textureOffset_ISampler2DRect1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00v10B10D(
        BuiltInId::textureOffset_USampler2DRect1_Float2_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00n20B10D(
        BuiltInId::textureOffset_Sampler2DRectShadow1_Float3_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n20B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00m20B00D(
        BuiltInId::textureOffset_Sampler1DShadow1_Float3_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00h10B00D(
        BuiltInId::textureOffset_Sampler1DArray1_Float2_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00p10B00D(
        BuiltInId::textureOffset_ISampler1DArray1_Float2_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00u10B00D(
        BuiltInId::textureOffset_USampler1DArray1_Float2_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00i20B00D(
        BuiltInId::textureOffset_Sampler1DArrayShadow1_Float3_Int1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00f30B10D(
        BuiltInId::textureOffset_Sampler2DArrayShadow1_Float4_Int2,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f30B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00I20B10D(
        BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00R20B10D(
        BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00X20B10D(
        BuiltInId::textureProjOffset_USampler2D1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B10D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00I30B10D(
        BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00R30B10D(
        BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00X30B10D(
        BuiltInId::textureProjOffset_USampler2D1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B10D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00J30B20D(
        BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00S30B20D(
        BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00Y30B20D(
        BuiltInId::textureProjOffset_USampler3D1_Float4_Int3,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B20D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00d30B10D(
        BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00g10B00D(
        BuiltInId::textureProjOffset_Sampler1D1_Float2_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00o10B00D(
        BuiltInId::textureProjOffset_ISampler1D1_Float2_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00t10B00D(
        BuiltInId::textureProjOffset_USampler1D1_Float2_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00g30B00D(
        BuiltInId::textureProjOffset_Sampler1D1_Float4_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00o30B00D(
        BuiltInId::textureProjOffset_ISampler1D1_Float4_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00t30B00D(
        BuiltInId::textureProjOffset_USampler1D1_Float4_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00O20B10D(
        BuiltInId::textureProjOffset_Sampler2DRect1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O20B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00q20B10D(
        BuiltInId::textureProjOffset_ISampler2DRect1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00v20B10D(
        BuiltInId::textureProjOffset_USampler2DRect1_Float3_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00O30B10D(
        BuiltInId::textureProjOffset_Sampler2DRect1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O30B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00q30B10D(
        BuiltInId::textureProjOffset_ISampler2DRect1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q30B10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00v30B10D(
        BuiltInId::textureProjOffset_USampler2DRect1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v30B10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00n30B10D(
        BuiltInId::textureProjOffset_Sampler2DRectShadow1_Float4_Int2,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n30B10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00m30B00D(
        BuiltInId::textureProjOffset_Sampler1DShadow1_Float4_Int1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00I10B00B10D(
        BuiltInId::textureLodOffset_Sampler2D1_Float2_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00R10B00B10D(
        BuiltInId::textureLodOffset_ISampler2D1_Float2_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B00B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00X10B00B10D(
        BuiltInId::textureLodOffset_USampler2D1_Float2_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B00B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00J20B00B20D(
        BuiltInId::textureLodOffset_Sampler3D1_Float3_Float1_Int3,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B00B20D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00S20B00B20D(
        BuiltInId::textureLodOffset_ISampler3D1_Float3_Float1_Int3,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B00B20D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00Y20B00B20D(
        BuiltInId::textureLodOffset_USampler3D1_Float3_Float1_Int3,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B00B20D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00d20B00B10D(
        BuiltInId::textureLodOffset_Sampler2DShadow1_Float3_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00L20B00B10D(
        BuiltInId::textureLodOffset_Sampler2DArray1_Float3_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00U20B00B10D(
        BuiltInId::textureLodOffset_ISampler2DArray1_Float3_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B00B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00a20B00B10D(
        BuiltInId::textureLodOffset_USampler2DArray1_Float3_Float1_Int2,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B00B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00g00B00B00D(
        BuiltInId::textureLodOffset_Sampler1D1_Float1_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00o00B00B00D(
        BuiltInId::textureLodOffset_ISampler1D1_Float1_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00t00B00B00D(
        BuiltInId::textureLodOffset_USampler1D1_Float1_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00m20B00B00D(
        BuiltInId::textureLodOffset_Sampler1DShadow1_Float3_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00h10B00B00D(
        BuiltInId::textureLodOffset_Sampler1DArray1_Float2_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00p10B00B00D(
        BuiltInId::textureLodOffset_ISampler1DArray1_Float2_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00u10B00B00D(
        BuiltInId::textureLodOffset_USampler1DArray1_Float2_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureLodOffset_00i20B00B00D(
        BuiltInId::textureLodOffset_Sampler1DArrayShadow1_Float3_Float1_Int1,
        BuiltInName::textureLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00I20B00B10D(
        BuiltInId::textureProjLodOffset_Sampler2D1_Float3_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00R20B00B10D(
        BuiltInId::textureProjLodOffset_ISampler2D1_Float3_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B00B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00X20B00B10D(
        BuiltInId::textureProjLodOffset_USampler2D1_Float3_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B00B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00I30B00B10D(
        BuiltInId::textureProjLodOffset_Sampler2D1_Float4_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00R30B00B10D(
        BuiltInId::textureProjLodOffset_ISampler2D1_Float4_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B00B10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00X30B00B10D(
        BuiltInId::textureProjLodOffset_USampler2D1_Float4_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B00B10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00J30B00B20D(
        BuiltInId::textureProjLodOffset_Sampler3D1_Float4_Float1_Int3,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B00B20D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00S30B00B20D(
        BuiltInId::textureProjLodOffset_ISampler3D1_Float4_Float1_Int3,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B00B20D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00Y30B00B20D(
        BuiltInId::textureProjLodOffset_USampler3D1_Float4_Float1_Int3,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B00B20D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00d30B00B10D(
        BuiltInId::textureProjLodOffset_Sampler2DShadow1_Float4_Float1_Int2,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B00B10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00g10B00B00D(
        BuiltInId::textureProjLodOffset_Sampler1D1_Float2_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00o10B00B00D(
        BuiltInId::textureProjLodOffset_ISampler1D1_Float2_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00t10B00B00D(
        BuiltInId::textureProjLodOffset_USampler1D1_Float2_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00g30B00B00D(
        BuiltInId::textureProjLodOffset_Sampler1D1_Float4_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00o30B00B00D(
        BuiltInId::textureProjLodOffset_ISampler1D1_Float4_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00B00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00t30B00B00D(
        BuiltInId::textureProjLodOffset_USampler1D1_Float4_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00B00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjLodOffset_00m30B00B00D(
        BuiltInId::textureProjLodOffset_Sampler1DShadow1_Float4_Float1_Int1,
        BuiltInName::textureProjLodOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00I10D00D10D(
        BuiltInId::texelFetchOffset_Sampler2D1_Int2_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10D00D10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00R10D00D10D(
        BuiltInId::texelFetchOffset_ISampler2D1_Int2_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10D00D10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00X10D00D10D(
        BuiltInId::texelFetchOffset_USampler2D1_Int2_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10D00D10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00J20D00D20D(
        BuiltInId::texelFetchOffset_Sampler3D1_Int3_Int1_Int3,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20D00D20D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00S20D00D20D(
        BuiltInId::texelFetchOffset_ISampler3D1_Int3_Int1_Int3,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20D00D20D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00Y20D00D20D(
        BuiltInId::texelFetchOffset_USampler3D1_Int3_Int1_Int3,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20D00D20D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00L20D00D10D(
        BuiltInId::texelFetchOffset_Sampler2DArray1_Int3_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20D00D10D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00U20D00D10D(
        BuiltInId::texelFetchOffset_ISampler2DArray1_Int3_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20D00D10D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00a20D00D10D(
        BuiltInId::texelFetchOffset_USampler2DArray1_Int3_Int1_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20D00D10D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00g00D00D00D(
        BuiltInId::texelFetchOffset_Sampler1D1_Int1_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00D00D00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00o00D00D00D(
        BuiltInId::texelFetchOffset_ISampler1D1_Int1_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00t00D00D00D(
        BuiltInId::texelFetchOffset_USampler1D1_Int1_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00D00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00O10D10D(
        BuiltInId::texelFetchOffset_Sampler2DRect1_Int2_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10D10D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00q10D10D(
        BuiltInId::texelFetchOffset_ISampler2DRect1_Int2_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10D10D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00v10D10D(
        BuiltInId::texelFetchOffset_USampler2DRect1_Int2_Int2,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10D10D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00h10D00D00D(
        BuiltInId::texelFetchOffset_Sampler1DArray1_Int2_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10D00D00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00p10D00D00D(
        BuiltInId::texelFetchOffset_ISampler1DArray1_Int2_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetchOffset_00u10D00D00D(
        BuiltInId::texelFetchOffset_USampler1DArray1_Int2_Int1_Int1,
        BuiltInName::texelFetchOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10D00D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00I10B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2D1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00R10B10B10B10D(
        BuiltInId::textureGradOffset_ISampler2D1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00X10B10B10B10D(
        BuiltInId::textureGradOffset_USampler2D1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00J20B20B20B20D(
        BuiltInId::textureGradOffset_Sampler3D1_Float3_Float3_Float3_Int3,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B20B20B20D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00S20B20B20B20D(
        BuiltInId::textureGradOffset_ISampler3D1_Float3_Float3_Float3_Int3,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B20B20B20D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00Y20B20B20B20D(
        BuiltInId::textureGradOffset_USampler3D1_Float3_Float3_Float3_Int3,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20B20B20D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00d20B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2DShadow1_Float3_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00L20B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2DArray1_Float3_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00U20B10B10B10D(
        BuiltInId::textureGradOffset_ISampler2DArray1_Float3_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00a20B10B10B10D(
        BuiltInId::textureGradOffset_USampler2DArray1_Float3_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00f30B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2DArrayShadow1_Float4_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f30B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00g00B00B00B00D(
        BuiltInId::textureGradOffset_Sampler1D1_Float1_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00o00B00B00B00D(
        BuiltInId::textureGradOffset_ISampler1D1_Float1_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00B00B00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00t00B00B00B00D(
        BuiltInId::textureGradOffset_USampler1D1_Float1_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00B00B00D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00O10B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2DRect1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00q10B10B10B10D(
        BuiltInId::textureGradOffset_ISampler2DRect1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00v10B10B10B10D(
        BuiltInId::textureGradOffset_USampler2DRect1_Float2_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00n20B10B10B10D(
        BuiltInId::textureGradOffset_Sampler2DRectShadow1_Float3_Float2_Float2_Int2,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n20B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00m20B00B00B00D(
        BuiltInId::textureGradOffset_Sampler1DShadow1_Float3_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00h10B00B00B00D(
        BuiltInId::textureGradOffset_Sampler1DArray1_Float2_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00p10B00B00B00D(
        BuiltInId::textureGradOffset_ISampler1DArray1_Float2_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00B00B00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00u10B00B00B00D(
        BuiltInId::textureGradOffset_USampler1DArray1_Float2_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00B00B00D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGradOffset_00i20B00B00B00D(
        BuiltInId::textureGradOffset_Sampler1DArrayShadow1_Float3_Float1_Float1_Int1,
        BuiltInName::textureGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00I20B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2D1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00R20B10B10B10D(
        BuiltInId::textureProjGradOffset_ISampler2D1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00X20B10B10B10D(
        BuiltInId::textureProjGradOffset_USampler2D1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00I30B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2D1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00R30B10B10B10D(
        BuiltInId::textureProjGradOffset_ISampler2D1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00X30B10B10B10D(
        BuiltInId::textureProjGradOffset_USampler2D1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00J30B20B20B20D(
        BuiltInId::textureProjGradOffset_Sampler3D1_Float4_Float3_Float3_Int3,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20B20B20D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00S30B20B20B20D(
        BuiltInId::textureProjGradOffset_ISampler3D1_Float4_Float3_Float3_Int3,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20B20B20D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00Y30B20B20B20D(
        BuiltInId::textureProjGradOffset_USampler3D1_Float4_Float3_Float3_Int3,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B20B20B20D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00d30B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2DShadow1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00g10B00B00B00D(
        BuiltInId::textureProjGradOffset_Sampler1D1_Float2_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00o10B00B00B00D(
        BuiltInId::textureProjGradOffset_ISampler1D1_Float2_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00B00B00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00t10B00B00B00D(
        BuiltInId::textureProjGradOffset_USampler1D1_Float2_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00B00B00D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00g30B00B00B00D(
        BuiltInId::textureProjGradOffset_Sampler1D1_Float4_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00o30B00B00B00D(
        BuiltInId::textureProjGradOffset_ISampler1D1_Float4_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00B00B00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00t30B00B00B00D(
        BuiltInId::textureProjGradOffset_USampler1D1_Float4_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00B00B00D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00O20B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2DRect1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O20B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00q20B10B10B10D(
        BuiltInId::textureProjGradOffset_ISampler2DRect1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00v20B10B10B10D(
        BuiltInId::textureProjGradOffset_USampler2DRect1_Float3_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00O30B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2DRect1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O30B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00q30B10B10B10D(
        BuiltInId::textureProjGradOffset_ISampler2DRect1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q30B10B10B10D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00v30B10B10B10D(
        BuiltInId::textureProjGradOffset_USampler2DRect1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v30B10B10B10D,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00n30B10B10B10D(
        BuiltInId::textureProjGradOffset_Sampler2DRectShadow1_Float4_Float2_Float2_Int2,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n30B10B10B10D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjGradOffset_00m30B00B00B00D(
        BuiltInId::textureProjGradOffset_Sampler1DShadow1_Float4_Float1_Float1_Int1,
        BuiltInName::textureProjGradOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00B00B00D,
        5,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00I10B10D00B(
        BuiltInId::textureOffset_Sampler2D1_Float2_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00R10B10D00B(
        BuiltInId::textureOffset_ISampler2D1_Float2_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00X10B10D00B(
        BuiltInId::textureOffset_USampler2D1_Float2_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00J20B20D00B(
        BuiltInId::textureOffset_Sampler3D1_Float3_Int3_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J20B20D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00S20B20D00B(
        BuiltInId::textureOffset_ISampler3D1_Float3_Int3_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S20B20D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00Y20B20D00B(
        BuiltInId::textureOffset_USampler3D1_Float3_Int3_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y20B20D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00d20B10D00B(
        BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d20B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00L20B10D00B(
        BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00U20B10D00B(
        BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00a20B10D00B(
        BuiltInId::textureOffset_USampler2DArray1_Float3_Int2_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00g00B00D00B(
        BuiltInId::textureOffset_Sampler1D1_Float1_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g00B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00o00B00D00B(
        BuiltInId::textureOffset_ISampler1D1_Float1_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o00B00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00t00B00D00B(
        BuiltInId::textureOffset_USampler1D1_Float1_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t00B00D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00m20B00D00B(
        BuiltInId::textureOffset_Sampler1DShadow1_Float3_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m20B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00h10B00D00B(
        BuiltInId::textureOffset_Sampler1DArray1_Float2_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00h10B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00p10B00D00B(
        BuiltInId::textureOffset_ISampler1DArray1_Float2_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00p10B00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00u10B00D00B(
        BuiltInId::textureOffset_USampler1DArray1_Float2_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00u10B00D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureOffset_00i20B00D00B(
        BuiltInId::textureOffset_Sampler1DArrayShadow1_Float3_Int1_Float1,
        BuiltInName::textureOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00i20B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00I20B10D00B(
        BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I20B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00R20B10D00B(
        BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R20B10D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00X20B10D00B(
        BuiltInId::textureProjOffset_USampler2D1_Float3_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X20B10D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00I30B10D00B(
        BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I30B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00R30B10D00B(
        BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R30B10D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00X30B10D00B(
        BuiltInId::textureProjOffset_USampler2D1_Float4_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X30B10D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00J30B20D00B(
        BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00J30B20D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00S30B20D00B(
        BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00S30B20D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00Y30B20D00B(
        BuiltInId::textureProjOffset_USampler3D1_Float4_Int3_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Y30B20D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00d30B10D00B(
        BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d30B10D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00g10B00D00B(
        BuiltInId::textureProjOffset_Sampler1D1_Float2_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g10B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00o10B00D00B(
        BuiltInId::textureProjOffset_ISampler1D1_Float2_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o10B00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00t10B00D00B(
        BuiltInId::textureProjOffset_USampler1D1_Float2_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t10B00D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00g30B00D00B(
        BuiltInId::textureProjOffset_Sampler1D1_Float4_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00g30B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00o30B00D00B(
        BuiltInId::textureProjOffset_ISampler1D1_Float4_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00o30B00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00t30B00D00B(
        BuiltInId::textureProjOffset_USampler1D1_Float4_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00t30B00D00B,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProjOffset_00m30B00D00B(
        BuiltInId::textureProjOffset_Sampler1DShadow1_Float4_Int1_Float1,
        BuiltInName::textureProjOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00m30B00D00B,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00M10B(BuiltInId::texture_SamplerExternalOES1_Float2,
                                             BuiltInName::texture,
                                             TExtension::OES_EGL_image_external_essl3,
                                             BuiltInParameters::p00M10B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction textureProj_00M20B(
        BuiltInId::textureProj_SamplerExternalOES1_Float3,
        BuiltInName::textureProj,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00M30B(
        BuiltInId::textureProj_SamplerExternalOES1_Float4,
        BuiltInName::textureProj,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M30B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00M00D(
        BuiltInId::textureSize_SamplerExternalOES1_Int1,
        BuiltInName::textureSize,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00M10D00D(
        BuiltInId::texelFetch_SamplerExternalOES1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::OES_EGL_image_external_essl3,
        BuiltInParameters::p00M10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00N10B(BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2,
                                             BuiltInName::texture,
                                             TExtension::EXT_YUV_target,
                                             BuiltInParameters::p00N10B00B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction textureProj_00N20B(
        BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3,
        BuiltInName::textureProj,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureProj_00N30B(
        BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4,
        BuiltInName::textureProj,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N30B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction rgb_2_yuv_20B00H(
        BuiltInId::rgb_2_yuv_Float3_YuvCscStandardEXT1,
        BuiltInName::rgb_2_yuv,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p20B00H,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction yuv_2_rgb_20B00H(
        BuiltInId::yuv_2_rgb_Float3_YuvCscStandardEXT1,
        BuiltInName::yuv_2_rgb,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p20B00H,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureSize_00N00D(
        BuiltInId::textureSize_SamplerExternal2DY2YEXT1_Int1,
        BuiltInName::textureSize,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texelFetch_00N10D00D(
        BuiltInId::texelFetch_SamplerExternal2DY2YEXT1_Int2_Int1,
        BuiltInName::texelFetch,
        TExtension::EXT_YUV_target,
        BuiltInParameters::p00N10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00I10B(
        BuiltInId::textureGather_Sampler2D1_Float2,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00R10B(
        BuiltInId::textureGather_ISampler2D1_Float2,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00X10B(
        BuiltInId::textureGather_USampler2D1_Float2,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00I10B00D(
        BuiltInId::textureGather_Sampler2D1_Float2_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00R10B00D(
        BuiltInId::textureGather_ISampler2D1_Float2_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00X10B00D(
        BuiltInId::textureGather_USampler2D1_Float2_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00L20B(
        BuiltInId::textureGather_Sampler2DArray1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00U20B(
        BuiltInId::textureGather_ISampler2DArray1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00a20B(
        BuiltInId::textureGather_USampler2DArray1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00L20B00D(
        BuiltInId::textureGather_Sampler2DArray1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00U20B00D(
        BuiltInId::textureGather_ISampler2DArray1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00a20B00D(
        BuiltInId::textureGather_USampler2DArray1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00K20B(
        BuiltInId::textureGather_SamplerCube1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B20B20B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00T20B(
        BuiltInId::textureGather_ISamplerCube1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B20B20B,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00Z20B(
        BuiltInId::textureGather_USamplerCube1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B00B,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00K20B00D(
        BuiltInId::textureGather_SamplerCube1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00K20B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00T20B00D(
        BuiltInId::textureGather_ISamplerCube1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00T20B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00Z20B00D(
        BuiltInId::textureGather_USamplerCube1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00Z20B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00O20B(
        BuiltInId::textureGather_Sampler2DRect1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O20B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00q20B(
        BuiltInId::textureGather_ISampler2DRect1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B10B10B10D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00v20B(
        BuiltInId::textureGather_USampler2DRect1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B00D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00O20B00D(
        BuiltInId::textureGather_Sampler2DRect1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O20B00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00q20B00D(
        BuiltInId::textureGather_ISampler2DRect1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q20B00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00v20B00D(
        BuiltInId::textureGather_USampler2DRect1_Float3_Int1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v20B00D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00d10B(
        BuiltInId::textureGather_Sampler2DShadow1_Float2,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d10B00B10Dx4,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00d10B00B(
        BuiltInId::textureGather_Sampler2DShadow1_Float2_Float1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d10B00B10Dx4,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00f20B(
        BuiltInId::textureGather_Sampler2DArrayShadow1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f20B00B10Dx4,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00f20B00B(
        BuiltInId::textureGather_Sampler2DArrayShadow1_Float3_Float1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f20B00B10Dx4,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00e20B(
        BuiltInId::textureGather_SamplerCubeShadow1_Float3,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e20B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00e20B00B(
        BuiltInId::textureGather_SamplerCubeShadow1_Float3_Float1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00e20B00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGather_00n10B00B(
        BuiltInId::textureGather_Sampler2DRectShadow1_Float2_Float1,
        BuiltInName::textureGather,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n10B00B10Dx4,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00I10B10Dx400D(
        BuiltInId::textureGatherOffsets_Sampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10Dx400D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00R10B10Dx400D(
        BuiltInId::textureGatherOffsets_ISampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10Dx400D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00X10B10Dx400D(
        BuiltInId::textureGatherOffsets_USampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10Dx400D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00L20B10Dx400D(
        BuiltInId::textureGatherOffsets_Sampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10Dx400D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00U20B10Dx400D(
        BuiltInId::textureGatherOffsets_ISampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10Dx400D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00a20B10Dx400D(
        BuiltInId::textureGatherOffsets_USampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00I10B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_Sampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00I10B10Dx400D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00R10B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_ISampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00R10B10Dx400D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00X10B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_USampler2D1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00X10B10Dx400D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00L20B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_Sampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00L20B10Dx400D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00U20B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_ISampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00U20B10Dx400D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00a20B10Dx400D(
        BuiltInId::textureGatherOffsetsExt_USampler2DArray1_Float3_4xInt2_Int1,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00a20B10Dx400D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00O10B10Dx400D(
        BuiltInId::textureGatherOffsets_Sampler2DRect1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10Dx400D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00q10B10Dx400D(
        BuiltInId::textureGatherOffsets_ISampler2DRect1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10Dx400D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00v10B10Dx400D(
        BuiltInId::textureGatherOffsets_USampler2DRect1_Float2_4xInt2_Int1,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10Dx400D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00I10B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00R10B10Dx4(
        BuiltInId::textureGatherOffsets_ISampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10Dx400D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00X10B10Dx4(
        BuiltInId::textureGatherOffsets_USampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00L20B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00U20B10Dx4(
        BuiltInId::textureGatherOffsets_ISampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10Dx400D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00a20B10Dx4(
        BuiltInId::textureGatherOffsets_USampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00d10B00B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2DShadow1_Float2_Float1_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d10B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00f20B00B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2DArrayShadow1_Float3_Float1_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f20B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00I10B10Dx4(
        BuiltInId::textureGatherOffsetsExt_Sampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00I10B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00R10B10Dx4(
        BuiltInId::textureGatherOffsetsExt_ISampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00R10B10Dx400D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00X10B10Dx4(
        BuiltInId::textureGatherOffsetsExt_USampler2D1_Float2_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00X10B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00L20B10Dx4(
        BuiltInId::textureGatherOffsetsExt_Sampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00L20B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00U20B10Dx4(
        BuiltInId::textureGatherOffsetsExt_ISampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00U20B10Dx400D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00a20B10Dx4(
        BuiltInId::textureGatherOffsetsExt_USampler2DArray1_Float3_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00a20B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00d10B00B10Dx4(
        BuiltInId::textureGatherOffsetsExt_Sampler2DShadow1_Float2_Float1_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00d10B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsetsExt_00f20B00B10Dx4(
        BuiltInId::textureGatherOffsetsExt_Sampler2DArrayShadow1_Float3_Float1_4xInt2,
        BuiltInName::textureGatherOffsetsExt,
        TExtension::EXT_gpu_shader5,
        BuiltInParameters::p00f20B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00O10B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2DRect1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00q10B10Dx4(
        BuiltInId::textureGatherOffsets_ISampler2DRect1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10Dx400D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00v10B10Dx4(
        BuiltInId::textureGatherOffsets_USampler2DRect1_Float2_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffsets_00n10B00B10Dx4(
        BuiltInId::textureGatherOffsets_Sampler2DRectShadow1_Float2_Float1_4xInt2,
        BuiltInName::textureGatherOffsets,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n10B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00I10B10D00D(
        BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10D00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00R10B10D00D(
        BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00X10B10D00D(
        BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00L20B10D00D(
        BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00U20B10D00D(
        BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00a20B10D00D(
        BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00O10B10D00D(
        BuiltInId::textureGatherOffset_Sampler2DRect1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10D00D,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00q10B10D00D(
        BuiltInId::textureGatherOffset_ISampler2DRect1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00v10B10D00D(
        BuiltInId::textureGatherOffset_USampler2DRect1_Float2_Int2_Int1,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10D00D,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00I10B10D(
        BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00I10B10D00B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00R10B10D(
        BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00R10B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00X10B10D(
        BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00X10B10D00B,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00L20B10D(
        BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00L20B10D00D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00U20B10D(
        BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00U20B10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00a20B10D(
        BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00a20B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00d10B00B10D(
        BuiltInId::textureGatherOffset_Sampler2DShadow1_Float2_Float1_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00d10B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00f20B00B10D(
        BuiltInId::textureGatherOffset_Sampler2DArrayShadow1_Float3_Float1_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00f20B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00O10B10D(
        BuiltInId::textureGatherOffset_Sampler2DRect1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00O10B10Dx400D,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00q10B10D(
        BuiltInId::textureGatherOffset_ISampler2DRect1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00q10B10D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00v10B10D(
        BuiltInId::textureGatherOffset_USampler2DRect1_Float2_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00v10B10Dx400D,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureGatherOffset_00n10B00B10D(
        BuiltInId::textureGatherOffset_Sampler2DRectShadow1_Float2_Float1_Int2,
        BuiltInName::textureGatherOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00n10B00B10Dx4,
        4,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction dFdx_00B(BuiltInId::dFdx_Float1,
                                       BuiltInName::dFdx,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpDFdx,
                                       false);
    constexpr const TFunction dFdx_10B(BuiltInId::dFdx_Float2,
                                       BuiltInName::dFdx,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpDFdx,
                                       false);
    constexpr const TFunction dFdx_20B(BuiltInId::dFdx_Float3,
                                       BuiltInName::dFdx,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpDFdx,
                                       false);
    constexpr const TFunction dFdx_30B(BuiltInId::dFdx_Float4,
                                       BuiltInName::dFdx,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpDFdx,
                                       false);
    constexpr const TFunction dFdy_00B(BuiltInId::dFdy_Float1,
                                       BuiltInName::dFdy,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p00B00B30B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpDFdy,
                                       false);
    constexpr const TFunction dFdy_10B(BuiltInId::dFdy_Float2,
                                       BuiltInName::dFdy,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p10B_o_10B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                       EOpDFdy,
                                       false);
    constexpr const TFunction dFdy_20B(BuiltInId::dFdy_Float3,
                                       BuiltInName::dFdy,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p20B20B00B,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                       EOpDFdy,
                                       false);
    constexpr const TFunction dFdy_30B(BuiltInId::dFdy_Float4,
                                       BuiltInName::dFdy,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::p30B30D,
                                       1,
                                       StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                       EOpDFdy,
                                       false);
    constexpr const TFunction fwidth_00B(BuiltInId::fwidth_Float1,
                                         BuiltInName::fwidth,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpFwidth,
                                         false);
    constexpr const TFunction fwidth_10B(BuiltInId::fwidth_Float2,
                                         BuiltInName::fwidth,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpFwidth,
                                         false);
    constexpr const TFunction fwidth_20B(BuiltInId::fwidth_Float3,
                                         BuiltInName::fwidth,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpFwidth,
                                         false);
    constexpr const TFunction fwidth_30B(BuiltInId::fwidth_Float4,
                                         BuiltInName::fwidth,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpFwidth,
                                         false);
    constexpr const TFunction dFdxFine_00B(BuiltInId::dFdxFine_Float1,
                                           BuiltInName::dFdxFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00B00B30B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdxFine_10B(BuiltInId::dFdxFine_Float2,
                                           BuiltInName::dFdxFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10B_o_10B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdxFine_20B(BuiltInId::dFdxFine_Float3,
                                           BuiltInName::dFdxFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B20B00B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdxFine_30B(BuiltInId::dFdxFine_Float4,
                                           BuiltInName::dFdxFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30B30D,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdyFine_00B(BuiltInId::dFdyFine_Float1,
                                           BuiltInName::dFdyFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p00B00B30B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdyFine_10B(BuiltInId::dFdyFine_Float2,
                                           BuiltInName::dFdyFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p10B_o_10B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdyFine_20B(BuiltInId::dFdyFine_Float3,
                                           BuiltInName::dFdyFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p20B20B00B,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdyFine_30B(BuiltInId::dFdyFine_Float4,
                                           BuiltInName::dFdyFine,
                                           TExtension::UNDEFINED,
                                           BuiltInParameters::p30B30D,
                                           1,
                                           StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                           EOpCallBuiltInFunction,
                                           false);
    constexpr const TFunction dFdxCoarse_00B(BuiltInId::dFdxCoarse_Float1,
                                             BuiltInName::dFdxCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00B00B30B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdxCoarse_10B(BuiltInId::dFdxCoarse_Float2,
                                             BuiltInName::dFdxCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p10B_o_10B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdxCoarse_20B(BuiltInId::dFdxCoarse_Float3,
                                             BuiltInName::dFdxCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p20B20B00B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdxCoarse_30B(BuiltInId::dFdxCoarse_Float4,
                                             BuiltInName::dFdxCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p30B30D,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdyCoarse_00B(BuiltInId::dFdyCoarse_Float1,
                                             BuiltInName::dFdyCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00B00B30B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdyCoarse_10B(BuiltInId::dFdyCoarse_Float2,
                                             BuiltInName::dFdyCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p10B_o_10B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdyCoarse_20B(BuiltInId::dFdyCoarse_Float3,
                                             BuiltInName::dFdyCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p20B20B00B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction dFdyCoarse_30B(BuiltInId::dFdyCoarse_Float4,
                                             BuiltInName::dFdyCoarse,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p30B30D,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction fwidthFine_00B(BuiltInId::fwidthFine_Float1,
                                             BuiltInName::fwidthFine,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00B00B30B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction fwidthFine_10B(BuiltInId::fwidthFine_Float2,
                                             BuiltInName::fwidthFine,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p10B_o_10B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction fwidthFine_20B(BuiltInId::fwidthFine_Float3,
                                             BuiltInName::fwidthFine,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p20B20B00B,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction fwidthFine_30B(BuiltInId::fwidthFine_Float4,
                                             BuiltInName::fwidthFine,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p30B30D,
                                             1,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    constexpr const TFunction fwidthCoarse_00B(
        BuiltInId::fwidthCoarse_Float1,
        BuiltInName::fwidthCoarse,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction fwidthCoarse_10B(
        BuiltInId::fwidthCoarse_Float2,
        BuiltInName::fwidthCoarse,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction fwidthCoarse_20B(
        BuiltInId::fwidthCoarse_Float3,
        BuiltInName::fwidthCoarse,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction fwidthCoarse_30B(
        BuiltInId::fwidthCoarse_Float4,
        BuiltInName::fwidthCoarse,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroid_00B(
        BuiltInId::interpolateAtCentroid_Float1,
        BuiltInName::interpolateAtCentroid,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroid_10B(
        BuiltInId::interpolateAtCentroid_Float2,
        BuiltInName::interpolateAtCentroid,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroid_20B(
        BuiltInId::interpolateAtCentroid_Float3,
        BuiltInName::interpolateAtCentroid,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroid_30B(
        BuiltInId::interpolateAtCentroid_Float4,
        BuiltInName::interpolateAtCentroid,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSample_00B00D(
        BuiltInId::interpolateAtSample_Float1_Int1,
        BuiltInName::interpolateAtSample,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSample_10B00D(
        BuiltInId::interpolateAtSample_Float2_Int1,
        BuiltInName::interpolateAtSample,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSample_20B00D(
        BuiltInId::interpolateAtSample_Float3_Int1,
        BuiltInName::interpolateAtSample,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSample_30B00D(
        BuiltInId::interpolateAtSample_Float4_Int1,
        BuiltInName::interpolateAtSample,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffset_00B10B(
        BuiltInId::interpolateAtOffset_Float1_Float2,
        BuiltInName::interpolateAtOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p00B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffset_10B10B(
        BuiltInId::interpolateAtOffset_Float2_Float2,
        BuiltInName::interpolateAtOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffset_20B10B(
        BuiltInId::interpolateAtOffset_Float3_Float2,
        BuiltInName::interpolateAtOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p20B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffset_30B10B(
        BuiltInId::interpolateAtOffset_Float4_Float2,
        BuiltInName::interpolateAtOffset,
        TExtension::UNDEFINED,
        BuiltInParameters::p30B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroidExt_00B(
        BuiltInId::interpolateAtCentroidExt_Float1,
        BuiltInName::interpolateAtCentroidExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p00B00B30B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroidExt_10B(
        BuiltInId::interpolateAtCentroidExt_Float2,
        BuiltInName::interpolateAtCentroidExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p10B_o_10B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroidExt_20B(
        BuiltInId::interpolateAtCentroidExt_Float3,
        BuiltInName::interpolateAtCentroidExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p20B20B00B,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtCentroidExt_30B(
        BuiltInId::interpolateAtCentroidExt_Float4,
        BuiltInName::interpolateAtCentroidExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p30B30D,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSampleExt_00B00D(
        BuiltInId::interpolateAtSampleExt_Float1_Int1,
        BuiltInName::interpolateAtSampleExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p00B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSampleExt_10B00D(
        BuiltInId::interpolateAtSampleExt_Float2_Int1,
        BuiltInName::interpolateAtSampleExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p10B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSampleExt_20B00D(
        BuiltInId::interpolateAtSampleExt_Float3_Int1,
        BuiltInName::interpolateAtSampleExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p20B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtSampleExt_30B00D(
        BuiltInId::interpolateAtSampleExt_Float4_Int1,
        BuiltInName::interpolateAtSampleExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p30B00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffsetExt_00B10B(
        BuiltInId::interpolateAtOffsetExt_Float1_Float2,
        BuiltInName::interpolateAtOffsetExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p00B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffsetExt_10B10B(
        BuiltInId::interpolateAtOffsetExt_Float2_Float2,
        BuiltInName::interpolateAtOffsetExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p10B10B00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffsetExt_20B10B(
        BuiltInId::interpolateAtOffsetExt_Float3_Float2,
        BuiltInName::interpolateAtOffsetExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p20B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction interpolateAtOffsetExt_30B10B(
        BuiltInId::interpolateAtOffsetExt_Float4_Float2,
        BuiltInName::interpolateAtOffsetExt,
        TExtension::OES_shader_multisample_interpolation,
        BuiltInParameters::p30B10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounter_00G(
        BuiltInId::atomicCounter_AtomicCounter1,
        BuiltInName::atomicCounter,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterIncrement_00G(
        BuiltInId::atomicCounterIncrement_AtomicCounter1,
        BuiltInName::atomicCounterIncrement,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterDecrement_00G(
        BuiltInId::atomicCounterDecrement_AtomicCounter1,
        BuiltInName::atomicCounterDecrement,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        1,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterAdd_00G00E(
        BuiltInId::atomicCounterAdd_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterSubtract_00G00E(
        BuiltInId::atomicCounterSubtract_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterSubtract,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterMin_00G00E(
        BuiltInId::atomicCounterMin_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterMax_00G00E(
        BuiltInId::atomicCounterMax_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterAnd_00G00E(
        BuiltInId::atomicCounterAnd_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterOr_00G00E(
        BuiltInId::atomicCounterOr_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterXor_00G00E(
        BuiltInId::atomicCounterXor_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterExchange_00G00E(
        BuiltInId::atomicCounterExchange_AtomicCounter1_UInt1,
        BuiltInName::atomicCounterExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicCounterCompSwap_00G00E00E(
        BuiltInId::atomicCounterCompSwap_AtomicCounter1_UInt1_UInt1,
        BuiltInName::atomicCounterCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p00G00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction atomicAdd_00E00E(
        BuiltInId::atomicAdd_UInt1_UInt1,
        BuiltInName::atomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicAdd,
        false);
    constexpr const TFunction atomicAdd_00D00D(BuiltInId::atomicAdd_Int1_Int1,
                                               BuiltInName::atomicAdd,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p_io_00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpAtomicAdd,
                                               false);
    constexpr const TFunction atomicMin_00E00E(
        BuiltInId::atomicMin_UInt1_UInt1,
        BuiltInName::atomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicMin,
        false);
    constexpr const TFunction atomicMin_00D00D(BuiltInId::atomicMin_Int1_Int1,
                                               BuiltInName::atomicMin,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p_io_00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpAtomicMin,
                                               false);
    constexpr const TFunction atomicMax_00E00E(
        BuiltInId::atomicMax_UInt1_UInt1,
        BuiltInName::atomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicMax,
        false);
    constexpr const TFunction atomicMax_00D00D(BuiltInId::atomicMax_Int1_Int1,
                                               BuiltInName::atomicMax,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p_io_00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpAtomicMax,
                                               false);
    constexpr const TFunction atomicAnd_00E00E(
        BuiltInId::atomicAnd_UInt1_UInt1,
        BuiltInName::atomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicAnd,
        false);
    constexpr const TFunction atomicAnd_00D00D(BuiltInId::atomicAnd_Int1_Int1,
                                               BuiltInName::atomicAnd,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p_io_00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpAtomicAnd,
                                               false);
    constexpr const TFunction atomicOr_00E00E(BuiltInId::atomicOr_UInt1_UInt1,
                                              BuiltInName::atomicOr,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p_io_00E00E00E,
                                              2,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpAtomicOr,
                                              false);
    constexpr const TFunction atomicOr_00D00D(BuiltInId::atomicOr_Int1_Int1,
                                              BuiltInName::atomicOr,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p_io_00D00D00D,
                                              2,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                              EOpAtomicOr,
                                              false);
    constexpr const TFunction atomicXor_00E00E(
        BuiltInId::atomicXor_UInt1_UInt1,
        BuiltInName::atomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicXor,
        false);
    constexpr const TFunction atomicXor_00D00D(BuiltInId::atomicXor_Int1_Int1,
                                               BuiltInName::atomicXor,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p_io_00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpAtomicXor,
                                               false);
    constexpr const TFunction atomicExchange_00E00E(
        BuiltInId::atomicExchange_UInt1_UInt1,
        BuiltInName::atomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicExchange,
        false);
    constexpr const TFunction atomicExchange_00D00D(
        BuiltInId::atomicExchange_Int1_Int1,
        BuiltInName::atomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00D00D00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicExchange,
        false);
    constexpr const TFunction atomicCompSwap_00E00E00E(
        BuiltInId::atomicCompSwap_UInt1_UInt1_UInt1,
        BuiltInName::atomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00E00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicCompSwap,
        false);
    constexpr const TFunction atomicCompSwap_00D00D00D(
        BuiltInId::atomicCompSwap_Int1_Int1_Int1,
        BuiltInName::atomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p_io_00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpAtomicCompSwap,
        false);
    constexpr const TFunction imageSize_00z(BuiltInId::imageSize_Image2D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p00z10D00B,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01A(BuiltInId::imageSize_IImage2D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01A10D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01B(BuiltInId::imageSize_UImage2D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01B10D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01C(BuiltInId::imageSize_Image3D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01C20D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01D(BuiltInId::imageSize_IImage3D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01D20D00B,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01E(BuiltInId::imageSize_UImage3D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01E20D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01F(BuiltInId::imageSize_Image2DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01F20D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01G(BuiltInId::imageSize_IImage2DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01G20D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01H(BuiltInId::imageSize_UImage2DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01H20D30E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01I(BuiltInId::imageSize_ImageCube1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01I20D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01J(BuiltInId::imageSize_IImageCube1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01J20D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01K(BuiltInId::imageSize_UImageCube1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01K20D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01a(BuiltInId::imageSize_ImageCubeArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01a20D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01b(BuiltInId::imageSize_IImageCubeArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01b20D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01c(BuiltInId::imageSize_UImageCubeArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01c20D30E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01g(BuiltInId::imageSize_ImageBuffer1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01g00D30B,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01h(BuiltInId::imageSize_IImageBuffer1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01h00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01i(BuiltInId::imageSize_UImageBuffer1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01i00D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01L(BuiltInId::imageSize_Image1D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01L00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01M(BuiltInId::imageSize_IImage1D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01M00D00D00D,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01N(BuiltInId::imageSize_UImage1D1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01N00D30E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01d(BuiltInId::imageSize_ImageRect1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01d,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01e(BuiltInId::imageSize_IImageRect1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01e,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01f(BuiltInId::imageSize_UImageRect1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01f,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01O(BuiltInId::imageSize_Image1DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01O10D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01P(BuiltInId::imageSize_IImage1DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01P10D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01Q(BuiltInId::imageSize_UImage1DArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01Q10D30E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01R(BuiltInId::imageSize_Image2DMS1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01R10D00D00B,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01S(BuiltInId::imageSize_IImage2DMS1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01S10D00D00B,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01T(BuiltInId::imageSize_UImage2DMS1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01T10D00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 2, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01U(BuiltInId::imageSize_Image2DMSArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01U20D00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01V(BuiltInId::imageSize_IImage2DMSArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01V20D00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSize_01W(BuiltInId::imageSize_UImage2DMSArray1,
                                            BuiltInName::imageSize,
                                            TExtension::UNDEFINED,
                                            BuiltInParameters::p01W20D00D00E00E,
                                            1,
                                            StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 3, 1>(),
                                            EOpCallBuiltInFunction,
                                            false);
    constexpr const TFunction imageSamples_01R(BuiltInId::imageSamples_Image2DMS1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01R10D00D00B,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageSamples_01S(BuiltInId::imageSamples_IImage2DMS1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01S10D00D00B,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageSamples_01T(BuiltInId::imageSamples_UImage2DMS1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01T10D00D00E00E,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageSamples_01U(BuiltInId::imageSamples_Image2DMSArray1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01U20D00D00E00E,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageSamples_01V(BuiltInId::imageSamples_IImage2DMSArray1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01V20D00D00E00E,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageSamples_01W(BuiltInId::imageSamples_UImage2DMSArray1,
                                               BuiltInName::imageSamples,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01W20D00D00E00E,
                                               1,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_00z10D(
        BuiltInId::imageLoad_Image2D1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01A10D(BuiltInId::imageLoad_IImage2D1_Int2,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01A10D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01B10D(
        BuiltInId::imageLoad_UImage2D1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01C20D(
        BuiltInId::imageLoad_Image3D1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01D20D(BuiltInId::imageLoad_IImage3D1_Int3,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01D20D00B,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01E20D(
        BuiltInId::imageLoad_UImage3D1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01F20D(
        BuiltInId::imageLoad_Image2DArray1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01G20D(BuiltInId::imageLoad_IImage2DArray1_Int3,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01G20D00E00E,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01H20D(
        BuiltInId::imageLoad_UImage2DArray1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D30E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01I20D(
        BuiltInId::imageLoad_ImageCube1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01J20D(BuiltInId::imageLoad_IImageCube1_Int3,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01J20D00E00E,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01K20D(
        BuiltInId::imageLoad_UImageCube1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01a20D(
        BuiltInId::imageLoad_ImageCubeArray1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01b20D(BuiltInId::imageLoad_IImageCubeArray1_Int3,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01b20D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01c20D(
        BuiltInId::imageLoad_UImageCubeArray1_Int3,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D30E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01g00D(
        BuiltInId::imageLoad_ImageBuffer1_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D30B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01h00D(BuiltInId::imageLoad_IImageBuffer1_Int1,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01h00D00E00E,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01i00D(
        BuiltInId::imageLoad_UImageBuffer1_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01L00D(
        BuiltInId::imageLoad_Image1D1_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01M00D(BuiltInId::imageLoad_IImage1D1_Int1,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01M00D00D00D,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01N00D(
        BuiltInId::imageLoad_UImage1D1_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D30E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01O10D(
        BuiltInId::imageLoad_Image1DArray1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01P10D(BuiltInId::imageLoad_IImage1DArray1_Int2,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01P10D00E00E,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01Q10D(
        BuiltInId::imageLoad_UImage1DArray1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D30E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01X10D(
        BuiltInId::imageLoad_Image2DRect1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01Y10D(BuiltInId::imageLoad_IImage2DRect1_Int2,
                                               BuiltInName::imageLoad,
                                               TExtension::UNDEFINED,
                                               BuiltInParameters::p01Y10D00B,
                                               2,
                                               StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                               EOpCallBuiltInFunction,
                                               false);
    constexpr const TFunction imageLoad_01Z10D(
        BuiltInId::imageLoad_UImage2DRect1_Int2,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01R10D00D(
        BuiltInId::imageLoad_Image2DMS1_Int2_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D30B,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01S10D00D(
        BuiltInId::imageLoad_IImage2DMS1_Int2_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01T10D00D(
        BuiltInId::imageLoad_UImage2DMS1_Int2_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01U20D00D(
        BuiltInId::imageLoad_Image2DMSArray1_Int3_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        3,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01V20D00D(
        BuiltInId::imageLoad_IImage2DMSArray1_Int3_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageLoad_01W20D00D(
        BuiltInId::imageLoad_UImage2DMSArray1_Int3_Int1,
        BuiltInName::imageLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D30E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_00z10D00E(
        BuiltInId::imageAtomicAdd_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01A10D00E(
        BuiltInId::imageAtomicAdd_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01B10D00E(
        BuiltInId::imageAtomicAdd_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01C20D00E(
        BuiltInId::imageAtomicAdd_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01D20D00E(
        BuiltInId::imageAtomicAdd_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01E20D00E(
        BuiltInId::imageAtomicAdd_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01I20D00E(
        BuiltInId::imageAtomicAdd_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01J20D00E(
        BuiltInId::imageAtomicAdd_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01K20D00E(
        BuiltInId::imageAtomicAdd_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01g00D00E(
        BuiltInId::imageAtomicAdd_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01h00D00E(
        BuiltInId::imageAtomicAdd_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01i00D00E(
        BuiltInId::imageAtomicAdd_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01F20D00E(
        BuiltInId::imageAtomicAdd_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01G20D00E(
        BuiltInId::imageAtomicAdd_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01H20D00E(
        BuiltInId::imageAtomicAdd_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01a20D00E(
        BuiltInId::imageAtomicAdd_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01b20D00E(
        BuiltInId::imageAtomicAdd_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01c20D00E(
        BuiltInId::imageAtomicAdd_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01L00D00E(
        BuiltInId::imageAtomicAdd_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01M00D00E(
        BuiltInId::imageAtomicAdd_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01N00D00E(
        BuiltInId::imageAtomicAdd_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01O10D00E(
        BuiltInId::imageAtomicAdd_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01P10D00E(
        BuiltInId::imageAtomicAdd_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Q10D00E(
        BuiltInId::imageAtomicAdd_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01X10D00E(
        BuiltInId::imageAtomicAdd_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Y10D00E(
        BuiltInId::imageAtomicAdd_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Z10D00E(
        BuiltInId::imageAtomicAdd_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01R10D00D00E(
        BuiltInId::imageAtomicAdd_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01S10D00D00E(
        BuiltInId::imageAtomicAdd_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01T10D00D00E(
        BuiltInId::imageAtomicAdd_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01U20D00D00E(
        BuiltInId::imageAtomicAdd_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01V20D00D00E(
        BuiltInId::imageAtomicAdd_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01W20D00D00E(
        BuiltInId::imageAtomicAdd_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_00z10D00D(
        BuiltInId::imageAtomicAdd_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01A10D00D(
        BuiltInId::imageAtomicAdd_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01B10D00D(
        BuiltInId::imageAtomicAdd_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01C20D00D(
        BuiltInId::imageAtomicAdd_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01D20D00D(
        BuiltInId::imageAtomicAdd_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01E20D00D(
        BuiltInId::imageAtomicAdd_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01I20D00D(
        BuiltInId::imageAtomicAdd_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01J20D00D(
        BuiltInId::imageAtomicAdd_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01K20D00D(
        BuiltInId::imageAtomicAdd_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01g00D00D(
        BuiltInId::imageAtomicAdd_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01h00D00D(
        BuiltInId::imageAtomicAdd_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01i00D00D(
        BuiltInId::imageAtomicAdd_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01F20D00D(
        BuiltInId::imageAtomicAdd_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01G20D00D(
        BuiltInId::imageAtomicAdd_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01H20D00D(
        BuiltInId::imageAtomicAdd_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01a20D00D(
        BuiltInId::imageAtomicAdd_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01b20D00D(
        BuiltInId::imageAtomicAdd_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01c20D00D(
        BuiltInId::imageAtomicAdd_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01L00D00D(
        BuiltInId::imageAtomicAdd_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01M00D00D(
        BuiltInId::imageAtomicAdd_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01N00D00D(
        BuiltInId::imageAtomicAdd_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01O10D00D(
        BuiltInId::imageAtomicAdd_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01P10D00D(
        BuiltInId::imageAtomicAdd_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Q10D00D(
        BuiltInId::imageAtomicAdd_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01X10D00D(
        BuiltInId::imageAtomicAdd_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Y10D00D(
        BuiltInId::imageAtomicAdd_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01Z10D00D(
        BuiltInId::imageAtomicAdd_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01R10D00D00D(
        BuiltInId::imageAtomicAdd_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01S10D00D00D(
        BuiltInId::imageAtomicAdd_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01T10D00D00D(
        BuiltInId::imageAtomicAdd_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01U20D00D00D(
        BuiltInId::imageAtomicAdd_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01V20D00D00D(
        BuiltInId::imageAtomicAdd_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAdd_01W20D00D00D(
        BuiltInId::imageAtomicAdd_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAdd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_00z10D00E(
        BuiltInId::imageAtomicMin_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01A10D00E(
        BuiltInId::imageAtomicMin_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01B10D00E(
        BuiltInId::imageAtomicMin_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01C20D00E(
        BuiltInId::imageAtomicMin_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01D20D00E(
        BuiltInId::imageAtomicMin_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01E20D00E(
        BuiltInId::imageAtomicMin_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01I20D00E(
        BuiltInId::imageAtomicMin_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01J20D00E(
        BuiltInId::imageAtomicMin_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01K20D00E(
        BuiltInId::imageAtomicMin_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01g00D00E(
        BuiltInId::imageAtomicMin_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01h00D00E(
        BuiltInId::imageAtomicMin_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01i00D00E(
        BuiltInId::imageAtomicMin_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01F20D00E(
        BuiltInId::imageAtomicMin_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01G20D00E(
        BuiltInId::imageAtomicMin_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01H20D00E(
        BuiltInId::imageAtomicMin_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01a20D00E(
        BuiltInId::imageAtomicMin_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01b20D00E(
        BuiltInId::imageAtomicMin_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01c20D00E(
        BuiltInId::imageAtomicMin_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01L00D00E(
        BuiltInId::imageAtomicMin_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01M00D00E(
        BuiltInId::imageAtomicMin_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01N00D00E(
        BuiltInId::imageAtomicMin_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01O10D00E(
        BuiltInId::imageAtomicMin_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01P10D00E(
        BuiltInId::imageAtomicMin_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Q10D00E(
        BuiltInId::imageAtomicMin_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01X10D00E(
        BuiltInId::imageAtomicMin_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Y10D00E(
        BuiltInId::imageAtomicMin_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Z10D00E(
        BuiltInId::imageAtomicMin_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01R10D00D00E(
        BuiltInId::imageAtomicMin_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01S10D00D00E(
        BuiltInId::imageAtomicMin_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01T10D00D00E(
        BuiltInId::imageAtomicMin_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01U20D00D00E(
        BuiltInId::imageAtomicMin_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01V20D00D00E(
        BuiltInId::imageAtomicMin_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01W20D00D00E(
        BuiltInId::imageAtomicMin_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_00z10D00D(
        BuiltInId::imageAtomicMin_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01A10D00D(
        BuiltInId::imageAtomicMin_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01B10D00D(
        BuiltInId::imageAtomicMin_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01C20D00D(
        BuiltInId::imageAtomicMin_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01D20D00D(
        BuiltInId::imageAtomicMin_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01E20D00D(
        BuiltInId::imageAtomicMin_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01I20D00D(
        BuiltInId::imageAtomicMin_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01J20D00D(
        BuiltInId::imageAtomicMin_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01K20D00D(
        BuiltInId::imageAtomicMin_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01g00D00D(
        BuiltInId::imageAtomicMin_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01h00D00D(
        BuiltInId::imageAtomicMin_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01i00D00D(
        BuiltInId::imageAtomicMin_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01F20D00D(
        BuiltInId::imageAtomicMin_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01G20D00D(
        BuiltInId::imageAtomicMin_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01H20D00D(
        BuiltInId::imageAtomicMin_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01a20D00D(
        BuiltInId::imageAtomicMin_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01b20D00D(
        BuiltInId::imageAtomicMin_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01c20D00D(
        BuiltInId::imageAtomicMin_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01L00D00D(
        BuiltInId::imageAtomicMin_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01M00D00D(
        BuiltInId::imageAtomicMin_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01N00D00D(
        BuiltInId::imageAtomicMin_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01O10D00D(
        BuiltInId::imageAtomicMin_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01P10D00D(
        BuiltInId::imageAtomicMin_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Q10D00D(
        BuiltInId::imageAtomicMin_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01X10D00D(
        BuiltInId::imageAtomicMin_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Y10D00D(
        BuiltInId::imageAtomicMin_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01Z10D00D(
        BuiltInId::imageAtomicMin_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01R10D00D00D(
        BuiltInId::imageAtomicMin_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01S10D00D00D(
        BuiltInId::imageAtomicMin_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01T10D00D00D(
        BuiltInId::imageAtomicMin_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01U20D00D00D(
        BuiltInId::imageAtomicMin_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01V20D00D00D(
        BuiltInId::imageAtomicMin_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMin_01W20D00D00D(
        BuiltInId::imageAtomicMin_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMin,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_00z10D00E(
        BuiltInId::imageAtomicMax_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01A10D00E(
        BuiltInId::imageAtomicMax_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01B10D00E(
        BuiltInId::imageAtomicMax_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01C20D00E(
        BuiltInId::imageAtomicMax_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01D20D00E(
        BuiltInId::imageAtomicMax_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01E20D00E(
        BuiltInId::imageAtomicMax_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01I20D00E(
        BuiltInId::imageAtomicMax_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01J20D00E(
        BuiltInId::imageAtomicMax_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01K20D00E(
        BuiltInId::imageAtomicMax_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01g00D00E(
        BuiltInId::imageAtomicMax_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01h00D00E(
        BuiltInId::imageAtomicMax_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01i00D00E(
        BuiltInId::imageAtomicMax_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01F20D00E(
        BuiltInId::imageAtomicMax_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01G20D00E(
        BuiltInId::imageAtomicMax_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01H20D00E(
        BuiltInId::imageAtomicMax_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01a20D00E(
        BuiltInId::imageAtomicMax_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01b20D00E(
        BuiltInId::imageAtomicMax_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01c20D00E(
        BuiltInId::imageAtomicMax_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01L00D00E(
        BuiltInId::imageAtomicMax_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01M00D00E(
        BuiltInId::imageAtomicMax_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01N00D00E(
        BuiltInId::imageAtomicMax_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01O10D00E(
        BuiltInId::imageAtomicMax_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01P10D00E(
        BuiltInId::imageAtomicMax_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Q10D00E(
        BuiltInId::imageAtomicMax_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01X10D00E(
        BuiltInId::imageAtomicMax_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Y10D00E(
        BuiltInId::imageAtomicMax_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Z10D00E(
        BuiltInId::imageAtomicMax_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01R10D00D00E(
        BuiltInId::imageAtomicMax_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01S10D00D00E(
        BuiltInId::imageAtomicMax_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01T10D00D00E(
        BuiltInId::imageAtomicMax_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01U20D00D00E(
        BuiltInId::imageAtomicMax_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01V20D00D00E(
        BuiltInId::imageAtomicMax_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01W20D00D00E(
        BuiltInId::imageAtomicMax_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_00z10D00D(
        BuiltInId::imageAtomicMax_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01A10D00D(
        BuiltInId::imageAtomicMax_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01B10D00D(
        BuiltInId::imageAtomicMax_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01C20D00D(
        BuiltInId::imageAtomicMax_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01D20D00D(
        BuiltInId::imageAtomicMax_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01E20D00D(
        BuiltInId::imageAtomicMax_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01I20D00D(
        BuiltInId::imageAtomicMax_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01J20D00D(
        BuiltInId::imageAtomicMax_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01K20D00D(
        BuiltInId::imageAtomicMax_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01g00D00D(
        BuiltInId::imageAtomicMax_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01h00D00D(
        BuiltInId::imageAtomicMax_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01i00D00D(
        BuiltInId::imageAtomicMax_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01F20D00D(
        BuiltInId::imageAtomicMax_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01G20D00D(
        BuiltInId::imageAtomicMax_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01H20D00D(
        BuiltInId::imageAtomicMax_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01a20D00D(
        BuiltInId::imageAtomicMax_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01b20D00D(
        BuiltInId::imageAtomicMax_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01c20D00D(
        BuiltInId::imageAtomicMax_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01L00D00D(
        BuiltInId::imageAtomicMax_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01M00D00D(
        BuiltInId::imageAtomicMax_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01N00D00D(
        BuiltInId::imageAtomicMax_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01O10D00D(
        BuiltInId::imageAtomicMax_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01P10D00D(
        BuiltInId::imageAtomicMax_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Q10D00D(
        BuiltInId::imageAtomicMax_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01X10D00D(
        BuiltInId::imageAtomicMax_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Y10D00D(
        BuiltInId::imageAtomicMax_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01Z10D00D(
        BuiltInId::imageAtomicMax_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01R10D00D00D(
        BuiltInId::imageAtomicMax_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01S10D00D00D(
        BuiltInId::imageAtomicMax_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01T10D00D00D(
        BuiltInId::imageAtomicMax_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01U20D00D00D(
        BuiltInId::imageAtomicMax_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01V20D00D00D(
        BuiltInId::imageAtomicMax_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMax_01W20D00D00D(
        BuiltInId::imageAtomicMax_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMax,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_00z10D00E(
        BuiltInId::imageAtomicAnd_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01A10D00E(
        BuiltInId::imageAtomicAnd_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01B10D00E(
        BuiltInId::imageAtomicAnd_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01C20D00E(
        BuiltInId::imageAtomicAnd_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01D20D00E(
        BuiltInId::imageAtomicAnd_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01E20D00E(
        BuiltInId::imageAtomicAnd_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01I20D00E(
        BuiltInId::imageAtomicAnd_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01J20D00E(
        BuiltInId::imageAtomicAnd_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01K20D00E(
        BuiltInId::imageAtomicAnd_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01g00D00E(
        BuiltInId::imageAtomicAnd_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01h00D00E(
        BuiltInId::imageAtomicAnd_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01i00D00E(
        BuiltInId::imageAtomicAnd_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01F20D00E(
        BuiltInId::imageAtomicAnd_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01G20D00E(
        BuiltInId::imageAtomicAnd_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01H20D00E(
        BuiltInId::imageAtomicAnd_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01a20D00E(
        BuiltInId::imageAtomicAnd_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01b20D00E(
        BuiltInId::imageAtomicAnd_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01c20D00E(
        BuiltInId::imageAtomicAnd_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01L00D00E(
        BuiltInId::imageAtomicAnd_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01M00D00E(
        BuiltInId::imageAtomicAnd_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01N00D00E(
        BuiltInId::imageAtomicAnd_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01O10D00E(
        BuiltInId::imageAtomicAnd_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01P10D00E(
        BuiltInId::imageAtomicAnd_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Q10D00E(
        BuiltInId::imageAtomicAnd_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01X10D00E(
        BuiltInId::imageAtomicAnd_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Y10D00E(
        BuiltInId::imageAtomicAnd_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Z10D00E(
        BuiltInId::imageAtomicAnd_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01R10D00D00E(
        BuiltInId::imageAtomicAnd_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01S10D00D00E(
        BuiltInId::imageAtomicAnd_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01T10D00D00E(
        BuiltInId::imageAtomicAnd_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01U20D00D00E(
        BuiltInId::imageAtomicAnd_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01V20D00D00E(
        BuiltInId::imageAtomicAnd_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01W20D00D00E(
        BuiltInId::imageAtomicAnd_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_00z10D00D(
        BuiltInId::imageAtomicAnd_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01A10D00D(
        BuiltInId::imageAtomicAnd_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01B10D00D(
        BuiltInId::imageAtomicAnd_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01C20D00D(
        BuiltInId::imageAtomicAnd_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01D20D00D(
        BuiltInId::imageAtomicAnd_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01E20D00D(
        BuiltInId::imageAtomicAnd_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01I20D00D(
        BuiltInId::imageAtomicAnd_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01J20D00D(
        BuiltInId::imageAtomicAnd_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01K20D00D(
        BuiltInId::imageAtomicAnd_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01g00D00D(
        BuiltInId::imageAtomicAnd_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01h00D00D(
        BuiltInId::imageAtomicAnd_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01i00D00D(
        BuiltInId::imageAtomicAnd_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01F20D00D(
        BuiltInId::imageAtomicAnd_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01G20D00D(
        BuiltInId::imageAtomicAnd_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01H20D00D(
        BuiltInId::imageAtomicAnd_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01a20D00D(
        BuiltInId::imageAtomicAnd_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01b20D00D(
        BuiltInId::imageAtomicAnd_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01c20D00D(
        BuiltInId::imageAtomicAnd_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01L00D00D(
        BuiltInId::imageAtomicAnd_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01M00D00D(
        BuiltInId::imageAtomicAnd_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01N00D00D(
        BuiltInId::imageAtomicAnd_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01O10D00D(
        BuiltInId::imageAtomicAnd_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01P10D00D(
        BuiltInId::imageAtomicAnd_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Q10D00D(
        BuiltInId::imageAtomicAnd_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01X10D00D(
        BuiltInId::imageAtomicAnd_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Y10D00D(
        BuiltInId::imageAtomicAnd_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01Z10D00D(
        BuiltInId::imageAtomicAnd_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01R10D00D00D(
        BuiltInId::imageAtomicAnd_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01S10D00D00D(
        BuiltInId::imageAtomicAnd_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01T10D00D00D(
        BuiltInId::imageAtomicAnd_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01U20D00D00D(
        BuiltInId::imageAtomicAnd_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01V20D00D00D(
        BuiltInId::imageAtomicAnd_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAnd_01W20D00D00D(
        BuiltInId::imageAtomicAnd_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAnd,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_00z10D00E(
        BuiltInId::imageAtomicOr_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01A10D00E(
        BuiltInId::imageAtomicOr_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01B10D00E(
        BuiltInId::imageAtomicOr_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01C20D00E(
        BuiltInId::imageAtomicOr_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01D20D00E(
        BuiltInId::imageAtomicOr_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01E20D00E(
        BuiltInId::imageAtomicOr_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01I20D00E(
        BuiltInId::imageAtomicOr_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01J20D00E(
        BuiltInId::imageAtomicOr_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01K20D00E(
        BuiltInId::imageAtomicOr_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01g00D00E(
        BuiltInId::imageAtomicOr_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01h00D00E(
        BuiltInId::imageAtomicOr_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01i00D00E(
        BuiltInId::imageAtomicOr_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01F20D00E(
        BuiltInId::imageAtomicOr_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01G20D00E(
        BuiltInId::imageAtomicOr_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01H20D00E(
        BuiltInId::imageAtomicOr_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01a20D00E(
        BuiltInId::imageAtomicOr_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01b20D00E(
        BuiltInId::imageAtomicOr_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01c20D00E(
        BuiltInId::imageAtomicOr_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01L00D00E(
        BuiltInId::imageAtomicOr_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01M00D00E(
        BuiltInId::imageAtomicOr_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01N00D00E(
        BuiltInId::imageAtomicOr_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01O10D00E(
        BuiltInId::imageAtomicOr_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01P10D00E(
        BuiltInId::imageAtomicOr_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Q10D00E(
        BuiltInId::imageAtomicOr_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01X10D00E(
        BuiltInId::imageAtomicOr_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Y10D00E(
        BuiltInId::imageAtomicOr_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Z10D00E(
        BuiltInId::imageAtomicOr_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01R10D00D00E(
        BuiltInId::imageAtomicOr_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01S10D00D00E(
        BuiltInId::imageAtomicOr_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01T10D00D00E(
        BuiltInId::imageAtomicOr_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01U20D00D00E(
        BuiltInId::imageAtomicOr_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01V20D00D00E(
        BuiltInId::imageAtomicOr_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01W20D00D00E(
        BuiltInId::imageAtomicOr_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_00z10D00D(
        BuiltInId::imageAtomicOr_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01A10D00D(
        BuiltInId::imageAtomicOr_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01B10D00D(
        BuiltInId::imageAtomicOr_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01C20D00D(
        BuiltInId::imageAtomicOr_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01D20D00D(
        BuiltInId::imageAtomicOr_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01E20D00D(
        BuiltInId::imageAtomicOr_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01I20D00D(
        BuiltInId::imageAtomicOr_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01J20D00D(
        BuiltInId::imageAtomicOr_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01K20D00D(
        BuiltInId::imageAtomicOr_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01g00D00D(
        BuiltInId::imageAtomicOr_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01h00D00D(
        BuiltInId::imageAtomicOr_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01i00D00D(
        BuiltInId::imageAtomicOr_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01F20D00D(
        BuiltInId::imageAtomicOr_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01G20D00D(
        BuiltInId::imageAtomicOr_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01H20D00D(
        BuiltInId::imageAtomicOr_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01a20D00D(
        BuiltInId::imageAtomicOr_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01b20D00D(
        BuiltInId::imageAtomicOr_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01c20D00D(
        BuiltInId::imageAtomicOr_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01L00D00D(
        BuiltInId::imageAtomicOr_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01M00D00D(
        BuiltInId::imageAtomicOr_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01N00D00D(
        BuiltInId::imageAtomicOr_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01O10D00D(
        BuiltInId::imageAtomicOr_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01P10D00D(
        BuiltInId::imageAtomicOr_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Q10D00D(
        BuiltInId::imageAtomicOr_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01X10D00D(
        BuiltInId::imageAtomicOr_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Y10D00D(
        BuiltInId::imageAtomicOr_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01Z10D00D(
        BuiltInId::imageAtomicOr_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01R10D00D00D(
        BuiltInId::imageAtomicOr_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01S10D00D00D(
        BuiltInId::imageAtomicOr_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01T10D00D00D(
        BuiltInId::imageAtomicOr_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01U20D00D00D(
        BuiltInId::imageAtomicOr_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01V20D00D00D(
        BuiltInId::imageAtomicOr_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOr_01W20D00D00D(
        BuiltInId::imageAtomicOr_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOr,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_00z10D00E(
        BuiltInId::imageAtomicXor_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01A10D00E(
        BuiltInId::imageAtomicXor_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01B10D00E(
        BuiltInId::imageAtomicXor_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01C20D00E(
        BuiltInId::imageAtomicXor_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01D20D00E(
        BuiltInId::imageAtomicXor_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01E20D00E(
        BuiltInId::imageAtomicXor_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01I20D00E(
        BuiltInId::imageAtomicXor_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01J20D00E(
        BuiltInId::imageAtomicXor_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01K20D00E(
        BuiltInId::imageAtomicXor_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01g00D00E(
        BuiltInId::imageAtomicXor_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01h00D00E(
        BuiltInId::imageAtomicXor_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01i00D00E(
        BuiltInId::imageAtomicXor_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01F20D00E(
        BuiltInId::imageAtomicXor_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01G20D00E(
        BuiltInId::imageAtomicXor_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01H20D00E(
        BuiltInId::imageAtomicXor_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01a20D00E(
        BuiltInId::imageAtomicXor_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01b20D00E(
        BuiltInId::imageAtomicXor_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01c20D00E(
        BuiltInId::imageAtomicXor_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01L00D00E(
        BuiltInId::imageAtomicXor_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01M00D00E(
        BuiltInId::imageAtomicXor_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01N00D00E(
        BuiltInId::imageAtomicXor_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01O10D00E(
        BuiltInId::imageAtomicXor_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01P10D00E(
        BuiltInId::imageAtomicXor_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Q10D00E(
        BuiltInId::imageAtomicXor_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01X10D00E(
        BuiltInId::imageAtomicXor_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Y10D00E(
        BuiltInId::imageAtomicXor_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Z10D00E(
        BuiltInId::imageAtomicXor_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01R10D00D00E(
        BuiltInId::imageAtomicXor_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01S10D00D00E(
        BuiltInId::imageAtomicXor_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01T10D00D00E(
        BuiltInId::imageAtomicXor_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01U20D00D00E(
        BuiltInId::imageAtomicXor_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01V20D00D00E(
        BuiltInId::imageAtomicXor_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01W20D00D00E(
        BuiltInId::imageAtomicXor_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_00z10D00D(
        BuiltInId::imageAtomicXor_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01A10D00D(
        BuiltInId::imageAtomicXor_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01B10D00D(
        BuiltInId::imageAtomicXor_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01C20D00D(
        BuiltInId::imageAtomicXor_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01D20D00D(
        BuiltInId::imageAtomicXor_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01E20D00D(
        BuiltInId::imageAtomicXor_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01I20D00D(
        BuiltInId::imageAtomicXor_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01J20D00D(
        BuiltInId::imageAtomicXor_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01K20D00D(
        BuiltInId::imageAtomicXor_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01g00D00D(
        BuiltInId::imageAtomicXor_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01h00D00D(
        BuiltInId::imageAtomicXor_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01i00D00D(
        BuiltInId::imageAtomicXor_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01F20D00D(
        BuiltInId::imageAtomicXor_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01G20D00D(
        BuiltInId::imageAtomicXor_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01H20D00D(
        BuiltInId::imageAtomicXor_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01a20D00D(
        BuiltInId::imageAtomicXor_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01b20D00D(
        BuiltInId::imageAtomicXor_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01c20D00D(
        BuiltInId::imageAtomicXor_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01L00D00D(
        BuiltInId::imageAtomicXor_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01M00D00D(
        BuiltInId::imageAtomicXor_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01N00D00D(
        BuiltInId::imageAtomicXor_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01O10D00D(
        BuiltInId::imageAtomicXor_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01P10D00D(
        BuiltInId::imageAtomicXor_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Q10D00D(
        BuiltInId::imageAtomicXor_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01X10D00D(
        BuiltInId::imageAtomicXor_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Y10D00D(
        BuiltInId::imageAtomicXor_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01Z10D00D(
        BuiltInId::imageAtomicXor_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01R10D00D00D(
        BuiltInId::imageAtomicXor_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01S10D00D00D(
        BuiltInId::imageAtomicXor_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01T10D00D00D(
        BuiltInId::imageAtomicXor_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01U20D00D00D(
        BuiltInId::imageAtomicXor_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01V20D00D00D(
        BuiltInId::imageAtomicXor_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXor_01W20D00D00D(
        BuiltInId::imageAtomicXor_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXor,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_00z10D00E(
        BuiltInId::imageAtomicExchange_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01A10D00E(
        BuiltInId::imageAtomicExchange_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01B10D00E(
        BuiltInId::imageAtomicExchange_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01C20D00E(
        BuiltInId::imageAtomicExchange_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01D20D00E(
        BuiltInId::imageAtomicExchange_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01E20D00E(
        BuiltInId::imageAtomicExchange_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01I20D00E(
        BuiltInId::imageAtomicExchange_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01J20D00E(
        BuiltInId::imageAtomicExchange_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01K20D00E(
        BuiltInId::imageAtomicExchange_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01g00D00E(
        BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01h00D00E(
        BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01i00D00E(
        BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01F20D00E(
        BuiltInId::imageAtomicExchange_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01G20D00E(
        BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01H20D00E(
        BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01a20D00E(
        BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01b20D00E(
        BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01c20D00E(
        BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01L00D00E(
        BuiltInId::imageAtomicExchange_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01M00D00E(
        BuiltInId::imageAtomicExchange_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01N00D00E(
        BuiltInId::imageAtomicExchange_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01O10D00E(
        BuiltInId::imageAtomicExchange_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01P10D00E(
        BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Q10D00E(
        BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01X10D00E(
        BuiltInId::imageAtomicExchange_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Y10D00E(
        BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Z10D00E(
        BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01R10D00D00E(
        BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01S10D00D00E(
        BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01T10D00D00E(
        BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01U20D00D00E(
        BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01V20D00D00E(
        BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01W20D00D00E(
        BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_00z10D00D(
        BuiltInId::imageAtomicExchange_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01A10D00D(
        BuiltInId::imageAtomicExchange_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01B10D00D(
        BuiltInId::imageAtomicExchange_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01C20D00D(
        BuiltInId::imageAtomicExchange_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01D20D00D(
        BuiltInId::imageAtomicExchange_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01E20D00D(
        BuiltInId::imageAtomicExchange_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01I20D00D(
        BuiltInId::imageAtomicExchange_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01J20D00D(
        BuiltInId::imageAtomicExchange_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01K20D00D(
        BuiltInId::imageAtomicExchange_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01g00D00D(
        BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01h00D00D(
        BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01i00D00D(
        BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01F20D00D(
        BuiltInId::imageAtomicExchange_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01G20D00D(
        BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01H20D00D(
        BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01a20D00D(
        BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01b20D00D(
        BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01c20D00D(
        BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01L00D00D(
        BuiltInId::imageAtomicExchange_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01M00D00D(
        BuiltInId::imageAtomicExchange_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01N00D00D(
        BuiltInId::imageAtomicExchange_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01O10D00D(
        BuiltInId::imageAtomicExchange_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01P10D00D(
        BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Q10D00D(
        BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01X10D00D(
        BuiltInId::imageAtomicExchange_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Y10D00D(
        BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Z10D00D(
        BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01R10D00D00D(
        BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01S10D00D00D(
        BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01T10D00D00D(
        BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01U20D00D00D(
        BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01V20D00D00D(
        BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01W20D00D00D(
        BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_00z10D00B(
        BuiltInId::imageAtomicExchange_Image2D1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01A10D00B(
        BuiltInId::imageAtomicExchange_IImage2D1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01B10D00B(
        BuiltInId::imageAtomicExchange_UImage2D1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01C20D00B(
        BuiltInId::imageAtomicExchange_Image3D1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01D20D00B(
        BuiltInId::imageAtomicExchange_IImage3D1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01E20D00B(
        BuiltInId::imageAtomicExchange_UImage3D1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01I20D00B(
        BuiltInId::imageAtomicExchange_ImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01J20D00B(
        BuiltInId::imageAtomicExchange_IImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01K20D00B(
        BuiltInId::imageAtomicExchange_UImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01g00D00B(
        BuiltInId::imageAtomicExchange_ImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01h00D00B(
        BuiltInId::imageAtomicExchange_IImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01i00D00B(
        BuiltInId::imageAtomicExchange_UImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01F20D00B(
        BuiltInId::imageAtomicExchange_Image2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01G20D00B(
        BuiltInId::imageAtomicExchange_IImage2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01H20D00B(
        BuiltInId::imageAtomicExchange_UImage2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01a20D00B(
        BuiltInId::imageAtomicExchange_ImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01b20D00B(
        BuiltInId::imageAtomicExchange_IImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01c20D00B(
        BuiltInId::imageAtomicExchange_UImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01L00D00B(
        BuiltInId::imageAtomicExchange_Image1D1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01M00D00B(
        BuiltInId::imageAtomicExchange_IImage1D1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01N00D00B(
        BuiltInId::imageAtomicExchange_UImage1D1_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01O10D00B(
        BuiltInId::imageAtomicExchange_Image1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01P10D00B(
        BuiltInId::imageAtomicExchange_IImage1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Q10D00B(
        BuiltInId::imageAtomicExchange_UImage1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01X10D00B(
        BuiltInId::imageAtomicExchange_Image2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Y10D00B(
        BuiltInId::imageAtomicExchange_IImage2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01Z10D00B(
        BuiltInId::imageAtomicExchange_UImage2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01R10D00D00B(
        BuiltInId::imageAtomicExchange_Image2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01S10D00D00B(
        BuiltInId::imageAtomicExchange_IImage2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01T10D00D00B(
        BuiltInId::imageAtomicExchange_UImage2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01U20D00D00B(
        BuiltInId::imageAtomicExchange_Image2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01V20D00D00B(
        BuiltInId::imageAtomicExchange_IImage2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchange_01W20D00D00B(
        BuiltInId::imageAtomicExchange_UImage2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchange,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_00z10D00E00E(
        BuiltInId::imageAtomicCompSwap_Image2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01A10D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01B10D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01C20D00E00E(
        BuiltInId::imageAtomicCompSwap_Image3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01D20D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01E20D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01I20D00E00E(
        BuiltInId::imageAtomicCompSwap_ImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01J20D00E00E(
        BuiltInId::imageAtomicCompSwap_IImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01K20D00E00E(
        BuiltInId::imageAtomicCompSwap_UImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01g00D00E00E(
        BuiltInId::imageAtomicCompSwap_ImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01h00D00E00E(
        BuiltInId::imageAtomicCompSwap_IImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01i00D00E00E(
        BuiltInId::imageAtomicCompSwap_UImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01F20D00E00E(
        BuiltInId::imageAtomicCompSwap_Image2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01G20D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01H20D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01a20D00E00E(
        BuiltInId::imageAtomicCompSwap_ImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01b20D00E00E(
        BuiltInId::imageAtomicCompSwap_IImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01c20D00E00E(
        BuiltInId::imageAtomicCompSwap_UImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01L00D00E00E(
        BuiltInId::imageAtomicCompSwap_Image1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01M00D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01N00D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01O10D00E00E(
        BuiltInId::imageAtomicCompSwap_Image1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01P10D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Q10D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01X10D00E00E(
        BuiltInId::imageAtomicCompSwap_Image2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Y10D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Z10D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01R10D00D00E00E(
        BuiltInId::imageAtomicCompSwap_Image2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01S10D00D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01T10D00D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01U20D00D00E00E(
        BuiltInId::imageAtomicCompSwap_Image2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01V20D00D00E00E(
        BuiltInId::imageAtomicCompSwap_IImage2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01W20D00D00E00E(
        BuiltInId::imageAtomicCompSwap_UImage2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_00z10D00D00D(
        BuiltInId::imageAtomicCompSwap_Image2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01A10D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01B10D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01C20D00D00D(
        BuiltInId::imageAtomicCompSwap_Image3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01D20D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01E20D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01I20D00D00D(
        BuiltInId::imageAtomicCompSwap_ImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01J20D00D00D(
        BuiltInId::imageAtomicCompSwap_IImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01K20D00D00D(
        BuiltInId::imageAtomicCompSwap_UImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01g00D00D00D(
        BuiltInId::imageAtomicCompSwap_ImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01h00D00D00D(
        BuiltInId::imageAtomicCompSwap_IImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01i00D00D00D(
        BuiltInId::imageAtomicCompSwap_UImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01F20D00D00D(
        BuiltInId::imageAtomicCompSwap_Image2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01G20D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01H20D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01a20D00D00D(
        BuiltInId::imageAtomicCompSwap_ImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01b20D00D00D(
        BuiltInId::imageAtomicCompSwap_IImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01c20D00D00D(
        BuiltInId::imageAtomicCompSwap_UImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01L00D00D00D(
        BuiltInId::imageAtomicCompSwap_Image1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01M00D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01N00D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01O10D00D00D(
        BuiltInId::imageAtomicCompSwap_Image1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01P10D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Q10D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01X10D00D00D(
        BuiltInId::imageAtomicCompSwap_Image2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Y10D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01Z10D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01R10D00D00D00D(
        BuiltInId::imageAtomicCompSwap_Image2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01S10D00D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01T10D00D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01U20D00D00D00D(
        BuiltInId::imageAtomicCompSwap_Image2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01V20D00D00D00D(
        BuiltInId::imageAtomicCompSwap_IImage2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwap_01W20D00D00D00D(
        BuiltInId::imageAtomicCompSwap_UImage2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwap,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_00z10D00E(
        BuiltInId::imageAtomicAddExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01A10D00E(
        BuiltInId::imageAtomicAddExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01B10D00E(
        BuiltInId::imageAtomicAddExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01C20D00E(
        BuiltInId::imageAtomicAddExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01D20D00E(
        BuiltInId::imageAtomicAddExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01E20D00E(
        BuiltInId::imageAtomicAddExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01I20D00E(
        BuiltInId::imageAtomicAddExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01J20D00E(
        BuiltInId::imageAtomicAddExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01K20D00E(
        BuiltInId::imageAtomicAddExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01g00D00E(
        BuiltInId::imageAtomicAddExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01h00D00E(
        BuiltInId::imageAtomicAddExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01i00D00E(
        BuiltInId::imageAtomicAddExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01F20D00E(
        BuiltInId::imageAtomicAddExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01G20D00E(
        BuiltInId::imageAtomicAddExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01H20D00E(
        BuiltInId::imageAtomicAddExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01a20D00E(
        BuiltInId::imageAtomicAddExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01b20D00E(
        BuiltInId::imageAtomicAddExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01c20D00E(
        BuiltInId::imageAtomicAddExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01L00D00E(
        BuiltInId::imageAtomicAddExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01M00D00E(
        BuiltInId::imageAtomicAddExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01N00D00E(
        BuiltInId::imageAtomicAddExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01O10D00E(
        BuiltInId::imageAtomicAddExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01P10D00E(
        BuiltInId::imageAtomicAddExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Q10D00E(
        BuiltInId::imageAtomicAddExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01X10D00E(
        BuiltInId::imageAtomicAddExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Y10D00E(
        BuiltInId::imageAtomicAddExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Z10D00E(
        BuiltInId::imageAtomicAddExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01R10D00D00E(
        BuiltInId::imageAtomicAddExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01S10D00D00E(
        BuiltInId::imageAtomicAddExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01T10D00D00E(
        BuiltInId::imageAtomicAddExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01U20D00D00E(
        BuiltInId::imageAtomicAddExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01V20D00D00E(
        BuiltInId::imageAtomicAddExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01W20D00D00E(
        BuiltInId::imageAtomicAddExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_00z10D00D(
        BuiltInId::imageAtomicAddExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01A10D00D(
        BuiltInId::imageAtomicAddExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01B10D00D(
        BuiltInId::imageAtomicAddExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01C20D00D(
        BuiltInId::imageAtomicAddExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01D20D00D(
        BuiltInId::imageAtomicAddExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01E20D00D(
        BuiltInId::imageAtomicAddExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01I20D00D(
        BuiltInId::imageAtomicAddExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01J20D00D(
        BuiltInId::imageAtomicAddExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01K20D00D(
        BuiltInId::imageAtomicAddExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01g00D00D(
        BuiltInId::imageAtomicAddExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01h00D00D(
        BuiltInId::imageAtomicAddExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01i00D00D(
        BuiltInId::imageAtomicAddExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01F20D00D(
        BuiltInId::imageAtomicAddExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01G20D00D(
        BuiltInId::imageAtomicAddExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01H20D00D(
        BuiltInId::imageAtomicAddExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01a20D00D(
        BuiltInId::imageAtomicAddExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01b20D00D(
        BuiltInId::imageAtomicAddExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01c20D00D(
        BuiltInId::imageAtomicAddExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01L00D00D(
        BuiltInId::imageAtomicAddExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01M00D00D(
        BuiltInId::imageAtomicAddExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01N00D00D(
        BuiltInId::imageAtomicAddExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01O10D00D(
        BuiltInId::imageAtomicAddExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01P10D00D(
        BuiltInId::imageAtomicAddExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Q10D00D(
        BuiltInId::imageAtomicAddExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01X10D00D(
        BuiltInId::imageAtomicAddExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Y10D00D(
        BuiltInId::imageAtomicAddExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01Z10D00D(
        BuiltInId::imageAtomicAddExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01R10D00D00D(
        BuiltInId::imageAtomicAddExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01S10D00D00D(
        BuiltInId::imageAtomicAddExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01T10D00D00D(
        BuiltInId::imageAtomicAddExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01U20D00D00D(
        BuiltInId::imageAtomicAddExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01V20D00D00D(
        BuiltInId::imageAtomicAddExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAddExt_01W20D00D00D(
        BuiltInId::imageAtomicAddExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAddExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_00z10D00E(
        BuiltInId::imageAtomicMinExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01A10D00E(
        BuiltInId::imageAtomicMinExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01B10D00E(
        BuiltInId::imageAtomicMinExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01C20D00E(
        BuiltInId::imageAtomicMinExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01D20D00E(
        BuiltInId::imageAtomicMinExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01E20D00E(
        BuiltInId::imageAtomicMinExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01I20D00E(
        BuiltInId::imageAtomicMinExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01J20D00E(
        BuiltInId::imageAtomicMinExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01K20D00E(
        BuiltInId::imageAtomicMinExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01g00D00E(
        BuiltInId::imageAtomicMinExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01h00D00E(
        BuiltInId::imageAtomicMinExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01i00D00E(
        BuiltInId::imageAtomicMinExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01F20D00E(
        BuiltInId::imageAtomicMinExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01G20D00E(
        BuiltInId::imageAtomicMinExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01H20D00E(
        BuiltInId::imageAtomicMinExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01a20D00E(
        BuiltInId::imageAtomicMinExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01b20D00E(
        BuiltInId::imageAtomicMinExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01c20D00E(
        BuiltInId::imageAtomicMinExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01L00D00E(
        BuiltInId::imageAtomicMinExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01M00D00E(
        BuiltInId::imageAtomicMinExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01N00D00E(
        BuiltInId::imageAtomicMinExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01O10D00E(
        BuiltInId::imageAtomicMinExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01P10D00E(
        BuiltInId::imageAtomicMinExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Q10D00E(
        BuiltInId::imageAtomicMinExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01X10D00E(
        BuiltInId::imageAtomicMinExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Y10D00E(
        BuiltInId::imageAtomicMinExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Z10D00E(
        BuiltInId::imageAtomicMinExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01R10D00D00E(
        BuiltInId::imageAtomicMinExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01S10D00D00E(
        BuiltInId::imageAtomicMinExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01T10D00D00E(
        BuiltInId::imageAtomicMinExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01U20D00D00E(
        BuiltInId::imageAtomicMinExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01V20D00D00E(
        BuiltInId::imageAtomicMinExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01W20D00D00E(
        BuiltInId::imageAtomicMinExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_00z10D00D(
        BuiltInId::imageAtomicMinExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01A10D00D(
        BuiltInId::imageAtomicMinExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01B10D00D(
        BuiltInId::imageAtomicMinExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01C20D00D(
        BuiltInId::imageAtomicMinExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01D20D00D(
        BuiltInId::imageAtomicMinExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01E20D00D(
        BuiltInId::imageAtomicMinExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01I20D00D(
        BuiltInId::imageAtomicMinExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01J20D00D(
        BuiltInId::imageAtomicMinExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01K20D00D(
        BuiltInId::imageAtomicMinExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01g00D00D(
        BuiltInId::imageAtomicMinExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01h00D00D(
        BuiltInId::imageAtomicMinExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01i00D00D(
        BuiltInId::imageAtomicMinExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01F20D00D(
        BuiltInId::imageAtomicMinExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01G20D00D(
        BuiltInId::imageAtomicMinExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01H20D00D(
        BuiltInId::imageAtomicMinExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01a20D00D(
        BuiltInId::imageAtomicMinExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01b20D00D(
        BuiltInId::imageAtomicMinExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01c20D00D(
        BuiltInId::imageAtomicMinExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01L00D00D(
        BuiltInId::imageAtomicMinExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01M00D00D(
        BuiltInId::imageAtomicMinExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01N00D00D(
        BuiltInId::imageAtomicMinExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01O10D00D(
        BuiltInId::imageAtomicMinExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01P10D00D(
        BuiltInId::imageAtomicMinExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Q10D00D(
        BuiltInId::imageAtomicMinExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01X10D00D(
        BuiltInId::imageAtomicMinExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Y10D00D(
        BuiltInId::imageAtomicMinExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01Z10D00D(
        BuiltInId::imageAtomicMinExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01R10D00D00D(
        BuiltInId::imageAtomicMinExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01S10D00D00D(
        BuiltInId::imageAtomicMinExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01T10D00D00D(
        BuiltInId::imageAtomicMinExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01U20D00D00D(
        BuiltInId::imageAtomicMinExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01V20D00D00D(
        BuiltInId::imageAtomicMinExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMinExt_01W20D00D00D(
        BuiltInId::imageAtomicMinExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMinExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_00z10D00E(
        BuiltInId::imageAtomicMaxExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01A10D00E(
        BuiltInId::imageAtomicMaxExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01B10D00E(
        BuiltInId::imageAtomicMaxExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01C20D00E(
        BuiltInId::imageAtomicMaxExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01D20D00E(
        BuiltInId::imageAtomicMaxExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01E20D00E(
        BuiltInId::imageAtomicMaxExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01I20D00E(
        BuiltInId::imageAtomicMaxExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01J20D00E(
        BuiltInId::imageAtomicMaxExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01K20D00E(
        BuiltInId::imageAtomicMaxExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01g00D00E(
        BuiltInId::imageAtomicMaxExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01h00D00E(
        BuiltInId::imageAtomicMaxExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01i00D00E(
        BuiltInId::imageAtomicMaxExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01F20D00E(
        BuiltInId::imageAtomicMaxExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01G20D00E(
        BuiltInId::imageAtomicMaxExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01H20D00E(
        BuiltInId::imageAtomicMaxExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01a20D00E(
        BuiltInId::imageAtomicMaxExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01b20D00E(
        BuiltInId::imageAtomicMaxExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01c20D00E(
        BuiltInId::imageAtomicMaxExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01L00D00E(
        BuiltInId::imageAtomicMaxExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01M00D00E(
        BuiltInId::imageAtomicMaxExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01N00D00E(
        BuiltInId::imageAtomicMaxExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01O10D00E(
        BuiltInId::imageAtomicMaxExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01P10D00E(
        BuiltInId::imageAtomicMaxExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Q10D00E(
        BuiltInId::imageAtomicMaxExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01X10D00E(
        BuiltInId::imageAtomicMaxExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Y10D00E(
        BuiltInId::imageAtomicMaxExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Z10D00E(
        BuiltInId::imageAtomicMaxExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01R10D00D00E(
        BuiltInId::imageAtomicMaxExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01S10D00D00E(
        BuiltInId::imageAtomicMaxExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01T10D00D00E(
        BuiltInId::imageAtomicMaxExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01U20D00D00E(
        BuiltInId::imageAtomicMaxExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01V20D00D00E(
        BuiltInId::imageAtomicMaxExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01W20D00D00E(
        BuiltInId::imageAtomicMaxExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_00z10D00D(
        BuiltInId::imageAtomicMaxExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01A10D00D(
        BuiltInId::imageAtomicMaxExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01B10D00D(
        BuiltInId::imageAtomicMaxExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01C20D00D(
        BuiltInId::imageAtomicMaxExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01D20D00D(
        BuiltInId::imageAtomicMaxExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01E20D00D(
        BuiltInId::imageAtomicMaxExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01I20D00D(
        BuiltInId::imageAtomicMaxExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01J20D00D(
        BuiltInId::imageAtomicMaxExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01K20D00D(
        BuiltInId::imageAtomicMaxExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01g00D00D(
        BuiltInId::imageAtomicMaxExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01h00D00D(
        BuiltInId::imageAtomicMaxExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01i00D00D(
        BuiltInId::imageAtomicMaxExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01F20D00D(
        BuiltInId::imageAtomicMaxExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01G20D00D(
        BuiltInId::imageAtomicMaxExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01H20D00D(
        BuiltInId::imageAtomicMaxExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01a20D00D(
        BuiltInId::imageAtomicMaxExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01b20D00D(
        BuiltInId::imageAtomicMaxExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01c20D00D(
        BuiltInId::imageAtomicMaxExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01L00D00D(
        BuiltInId::imageAtomicMaxExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01M00D00D(
        BuiltInId::imageAtomicMaxExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01N00D00D(
        BuiltInId::imageAtomicMaxExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01O10D00D(
        BuiltInId::imageAtomicMaxExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01P10D00D(
        BuiltInId::imageAtomicMaxExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Q10D00D(
        BuiltInId::imageAtomicMaxExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01X10D00D(
        BuiltInId::imageAtomicMaxExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Y10D00D(
        BuiltInId::imageAtomicMaxExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01Z10D00D(
        BuiltInId::imageAtomicMaxExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01R10D00D00D(
        BuiltInId::imageAtomicMaxExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01S10D00D00D(
        BuiltInId::imageAtomicMaxExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01T10D00D00D(
        BuiltInId::imageAtomicMaxExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01U20D00D00D(
        BuiltInId::imageAtomicMaxExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01V20D00D00D(
        BuiltInId::imageAtomicMaxExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicMaxExt_01W20D00D00D(
        BuiltInId::imageAtomicMaxExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicMaxExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_00z10D00E(
        BuiltInId::imageAtomicAndExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01A10D00E(
        BuiltInId::imageAtomicAndExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01B10D00E(
        BuiltInId::imageAtomicAndExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01C20D00E(
        BuiltInId::imageAtomicAndExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01D20D00E(
        BuiltInId::imageAtomicAndExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01E20D00E(
        BuiltInId::imageAtomicAndExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01I20D00E(
        BuiltInId::imageAtomicAndExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01J20D00E(
        BuiltInId::imageAtomicAndExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01K20D00E(
        BuiltInId::imageAtomicAndExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01g00D00E(
        BuiltInId::imageAtomicAndExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01h00D00E(
        BuiltInId::imageAtomicAndExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01i00D00E(
        BuiltInId::imageAtomicAndExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01F20D00E(
        BuiltInId::imageAtomicAndExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01G20D00E(
        BuiltInId::imageAtomicAndExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01H20D00E(
        BuiltInId::imageAtomicAndExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01a20D00E(
        BuiltInId::imageAtomicAndExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01b20D00E(
        BuiltInId::imageAtomicAndExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01c20D00E(
        BuiltInId::imageAtomicAndExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01L00D00E(
        BuiltInId::imageAtomicAndExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01M00D00E(
        BuiltInId::imageAtomicAndExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01N00D00E(
        BuiltInId::imageAtomicAndExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01O10D00E(
        BuiltInId::imageAtomicAndExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01P10D00E(
        BuiltInId::imageAtomicAndExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Q10D00E(
        BuiltInId::imageAtomicAndExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01X10D00E(
        BuiltInId::imageAtomicAndExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Y10D00E(
        BuiltInId::imageAtomicAndExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Z10D00E(
        BuiltInId::imageAtomicAndExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01R10D00D00E(
        BuiltInId::imageAtomicAndExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01S10D00D00E(
        BuiltInId::imageAtomicAndExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01T10D00D00E(
        BuiltInId::imageAtomicAndExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01U20D00D00E(
        BuiltInId::imageAtomicAndExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01V20D00D00E(
        BuiltInId::imageAtomicAndExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01W20D00D00E(
        BuiltInId::imageAtomicAndExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_00z10D00D(
        BuiltInId::imageAtomicAndExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01A10D00D(
        BuiltInId::imageAtomicAndExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01B10D00D(
        BuiltInId::imageAtomicAndExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01C20D00D(
        BuiltInId::imageAtomicAndExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01D20D00D(
        BuiltInId::imageAtomicAndExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01E20D00D(
        BuiltInId::imageAtomicAndExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01I20D00D(
        BuiltInId::imageAtomicAndExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01J20D00D(
        BuiltInId::imageAtomicAndExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01K20D00D(
        BuiltInId::imageAtomicAndExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01g00D00D(
        BuiltInId::imageAtomicAndExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01h00D00D(
        BuiltInId::imageAtomicAndExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01i00D00D(
        BuiltInId::imageAtomicAndExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01F20D00D(
        BuiltInId::imageAtomicAndExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01G20D00D(
        BuiltInId::imageAtomicAndExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01H20D00D(
        BuiltInId::imageAtomicAndExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01a20D00D(
        BuiltInId::imageAtomicAndExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01b20D00D(
        BuiltInId::imageAtomicAndExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01c20D00D(
        BuiltInId::imageAtomicAndExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01L00D00D(
        BuiltInId::imageAtomicAndExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01M00D00D(
        BuiltInId::imageAtomicAndExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01N00D00D(
        BuiltInId::imageAtomicAndExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01O10D00D(
        BuiltInId::imageAtomicAndExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01P10D00D(
        BuiltInId::imageAtomicAndExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Q10D00D(
        BuiltInId::imageAtomicAndExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01X10D00D(
        BuiltInId::imageAtomicAndExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Y10D00D(
        BuiltInId::imageAtomicAndExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01Z10D00D(
        BuiltInId::imageAtomicAndExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01R10D00D00D(
        BuiltInId::imageAtomicAndExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01S10D00D00D(
        BuiltInId::imageAtomicAndExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01T10D00D00D(
        BuiltInId::imageAtomicAndExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01U20D00D00D(
        BuiltInId::imageAtomicAndExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01V20D00D00D(
        BuiltInId::imageAtomicAndExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicAndExt_01W20D00D00D(
        BuiltInId::imageAtomicAndExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicAndExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_00z10D00E(
        BuiltInId::imageAtomicOrExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01A10D00E(
        BuiltInId::imageAtomicOrExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01B10D00E(
        BuiltInId::imageAtomicOrExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01C20D00E(
        BuiltInId::imageAtomicOrExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01D20D00E(
        BuiltInId::imageAtomicOrExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01E20D00E(
        BuiltInId::imageAtomicOrExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01I20D00E(
        BuiltInId::imageAtomicOrExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01J20D00E(
        BuiltInId::imageAtomicOrExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01K20D00E(
        BuiltInId::imageAtomicOrExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01g00D00E(
        BuiltInId::imageAtomicOrExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01h00D00E(
        BuiltInId::imageAtomicOrExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01i00D00E(
        BuiltInId::imageAtomicOrExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01F20D00E(
        BuiltInId::imageAtomicOrExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01G20D00E(
        BuiltInId::imageAtomicOrExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01H20D00E(
        BuiltInId::imageAtomicOrExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01a20D00E(
        BuiltInId::imageAtomicOrExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01b20D00E(
        BuiltInId::imageAtomicOrExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01c20D00E(
        BuiltInId::imageAtomicOrExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01L00D00E(
        BuiltInId::imageAtomicOrExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01M00D00E(
        BuiltInId::imageAtomicOrExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01N00D00E(
        BuiltInId::imageAtomicOrExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01O10D00E(
        BuiltInId::imageAtomicOrExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01P10D00E(
        BuiltInId::imageAtomicOrExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Q10D00E(
        BuiltInId::imageAtomicOrExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01X10D00E(
        BuiltInId::imageAtomicOrExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Y10D00E(
        BuiltInId::imageAtomicOrExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Z10D00E(
        BuiltInId::imageAtomicOrExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01R10D00D00E(
        BuiltInId::imageAtomicOrExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01S10D00D00E(
        BuiltInId::imageAtomicOrExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01T10D00D00E(
        BuiltInId::imageAtomicOrExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01U20D00D00E(
        BuiltInId::imageAtomicOrExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01V20D00D00E(
        BuiltInId::imageAtomicOrExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01W20D00D00E(
        BuiltInId::imageAtomicOrExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_00z10D00D(
        BuiltInId::imageAtomicOrExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01A10D00D(
        BuiltInId::imageAtomicOrExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01B10D00D(
        BuiltInId::imageAtomicOrExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01C20D00D(
        BuiltInId::imageAtomicOrExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01D20D00D(
        BuiltInId::imageAtomicOrExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01E20D00D(
        BuiltInId::imageAtomicOrExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01I20D00D(
        BuiltInId::imageAtomicOrExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01J20D00D(
        BuiltInId::imageAtomicOrExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01K20D00D(
        BuiltInId::imageAtomicOrExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01g00D00D(
        BuiltInId::imageAtomicOrExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01h00D00D(
        BuiltInId::imageAtomicOrExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01i00D00D(
        BuiltInId::imageAtomicOrExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01F20D00D(
        BuiltInId::imageAtomicOrExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01G20D00D(
        BuiltInId::imageAtomicOrExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01H20D00D(
        BuiltInId::imageAtomicOrExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01a20D00D(
        BuiltInId::imageAtomicOrExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01b20D00D(
        BuiltInId::imageAtomicOrExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01c20D00D(
        BuiltInId::imageAtomicOrExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01L00D00D(
        BuiltInId::imageAtomicOrExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01M00D00D(
        BuiltInId::imageAtomicOrExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01N00D00D(
        BuiltInId::imageAtomicOrExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01O10D00D(
        BuiltInId::imageAtomicOrExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01P10D00D(
        BuiltInId::imageAtomicOrExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Q10D00D(
        BuiltInId::imageAtomicOrExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01X10D00D(
        BuiltInId::imageAtomicOrExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Y10D00D(
        BuiltInId::imageAtomicOrExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01Z10D00D(
        BuiltInId::imageAtomicOrExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01R10D00D00D(
        BuiltInId::imageAtomicOrExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01S10D00D00D(
        BuiltInId::imageAtomicOrExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01T10D00D00D(
        BuiltInId::imageAtomicOrExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01U20D00D00D(
        BuiltInId::imageAtomicOrExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01V20D00D00D(
        BuiltInId::imageAtomicOrExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicOrExt_01W20D00D00D(
        BuiltInId::imageAtomicOrExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicOrExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_00z10D00E(
        BuiltInId::imageAtomicXorExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01A10D00E(
        BuiltInId::imageAtomicXorExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01B10D00E(
        BuiltInId::imageAtomicXorExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01C20D00E(
        BuiltInId::imageAtomicXorExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01D20D00E(
        BuiltInId::imageAtomicXorExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01E20D00E(
        BuiltInId::imageAtomicXorExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01I20D00E(
        BuiltInId::imageAtomicXorExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01J20D00E(
        BuiltInId::imageAtomicXorExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01K20D00E(
        BuiltInId::imageAtomicXorExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01g00D00E(
        BuiltInId::imageAtomicXorExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01h00D00E(
        BuiltInId::imageAtomicXorExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01i00D00E(
        BuiltInId::imageAtomicXorExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01F20D00E(
        BuiltInId::imageAtomicXorExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01G20D00E(
        BuiltInId::imageAtomicXorExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01H20D00E(
        BuiltInId::imageAtomicXorExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01a20D00E(
        BuiltInId::imageAtomicXorExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01b20D00E(
        BuiltInId::imageAtomicXorExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01c20D00E(
        BuiltInId::imageAtomicXorExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01L00D00E(
        BuiltInId::imageAtomicXorExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01M00D00E(
        BuiltInId::imageAtomicXorExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01N00D00E(
        BuiltInId::imageAtomicXorExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01O10D00E(
        BuiltInId::imageAtomicXorExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01P10D00E(
        BuiltInId::imageAtomicXorExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Q10D00E(
        BuiltInId::imageAtomicXorExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01X10D00E(
        BuiltInId::imageAtomicXorExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Y10D00E(
        BuiltInId::imageAtomicXorExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Z10D00E(
        BuiltInId::imageAtomicXorExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01R10D00D00E(
        BuiltInId::imageAtomicXorExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01S10D00D00E(
        BuiltInId::imageAtomicXorExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01T10D00D00E(
        BuiltInId::imageAtomicXorExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01U20D00D00E(
        BuiltInId::imageAtomicXorExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01V20D00D00E(
        BuiltInId::imageAtomicXorExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01W20D00D00E(
        BuiltInId::imageAtomicXorExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_00z10D00D(
        BuiltInId::imageAtomicXorExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01A10D00D(
        BuiltInId::imageAtomicXorExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01B10D00D(
        BuiltInId::imageAtomicXorExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01C20D00D(
        BuiltInId::imageAtomicXorExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01D20D00D(
        BuiltInId::imageAtomicXorExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01E20D00D(
        BuiltInId::imageAtomicXorExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01I20D00D(
        BuiltInId::imageAtomicXorExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01J20D00D(
        BuiltInId::imageAtomicXorExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01K20D00D(
        BuiltInId::imageAtomicXorExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01g00D00D(
        BuiltInId::imageAtomicXorExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01h00D00D(
        BuiltInId::imageAtomicXorExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01i00D00D(
        BuiltInId::imageAtomicXorExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01F20D00D(
        BuiltInId::imageAtomicXorExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01G20D00D(
        BuiltInId::imageAtomicXorExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01H20D00D(
        BuiltInId::imageAtomicXorExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01a20D00D(
        BuiltInId::imageAtomicXorExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01b20D00D(
        BuiltInId::imageAtomicXorExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01c20D00D(
        BuiltInId::imageAtomicXorExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01L00D00D(
        BuiltInId::imageAtomicXorExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01M00D00D(
        BuiltInId::imageAtomicXorExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01N00D00D(
        BuiltInId::imageAtomicXorExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01O10D00D(
        BuiltInId::imageAtomicXorExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01P10D00D(
        BuiltInId::imageAtomicXorExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Q10D00D(
        BuiltInId::imageAtomicXorExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01X10D00D(
        BuiltInId::imageAtomicXorExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Y10D00D(
        BuiltInId::imageAtomicXorExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01Z10D00D(
        BuiltInId::imageAtomicXorExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01R10D00D00D(
        BuiltInId::imageAtomicXorExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01S10D00D00D(
        BuiltInId::imageAtomicXorExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01T10D00D00D(
        BuiltInId::imageAtomicXorExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01U20D00D00D(
        BuiltInId::imageAtomicXorExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01V20D00D00D(
        BuiltInId::imageAtomicXorExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicXorExt_01W20D00D00D(
        BuiltInId::imageAtomicXorExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicXorExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_00z10D00E(
        BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01A10D00E(
        BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01B10D00E(
        BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01C20D00E(
        BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01D20D00E(
        BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01E20D00E(
        BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01I20D00E(
        BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01J20D00E(
        BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01K20D00E(
        BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01g00D00E(
        BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01h00D00E(
        BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01i00D00E(
        BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01F20D00E(
        BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01G20D00E(
        BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01H20D00E(
        BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01a20D00E(
        BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01b20D00E(
        BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01c20D00E(
        BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01L00D00E(
        BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01M00D00E(
        BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01N00D00E(
        BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01O10D00E(
        BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01P10D00E(
        BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Q10D00E(
        BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01X10D00E(
        BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Y10D00E(
        BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Z10D00E(
        BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        3,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01R10D00D00E(
        BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01S10D00D00E(
        BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01T10D00D00E(
        BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01U20D00D00E(
        BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01V20D00D00E(
        BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01W20D00D00E(
        BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_UInt1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_00z10D00D(
        BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01A10D00D(
        BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01B10D00D(
        BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01C20D00D(
        BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01D20D00D(
        BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01E20D00D(
        BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01I20D00D(
        BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01J20D00D(
        BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01K20D00D(
        BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01g00D00D(
        BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01h00D00D(
        BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01i00D00D(
        BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01F20D00D(
        BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01G20D00D(
        BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01H20D00D(
        BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01a20D00D(
        BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01b20D00D(
        BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01c20D00D(
        BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01L00D00D(
        BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01M00D00D(
        BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01N00D00D(
        BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01O10D00D(
        BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01P10D00D(
        BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Q10D00D(
        BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01X10D00D(
        BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Y10D00D(
        BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Z10D00D(
        BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01R10D00D00D(
        BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01S10D00D00D(
        BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01T10D00D00D(
        BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01U20D00D00D(
        BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01V20D00D00D(
        BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01W20D00D00D(
        BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_00z10D00B(
        BuiltInId::imageAtomicExchangeExt_Image2D1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01A10D00B(
        BuiltInId::imageAtomicExchangeExt_IImage2D1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01B10D00B(
        BuiltInId::imageAtomicExchangeExt_UImage2D1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01C20D00B(
        BuiltInId::imageAtomicExchangeExt_Image3D1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01D20D00B(
        BuiltInId::imageAtomicExchangeExt_IImage3D1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01E20D00B(
        BuiltInId::imageAtomicExchangeExt_UImage3D1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01I20D00B(
        BuiltInId::imageAtomicExchangeExt_ImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01J20D00B(
        BuiltInId::imageAtomicExchangeExt_IImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01K20D00B(
        BuiltInId::imageAtomicExchangeExt_UImageCube1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01g00D00B(
        BuiltInId::imageAtomicExchangeExt_ImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01h00D00B(
        BuiltInId::imageAtomicExchangeExt_IImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01i00D00B(
        BuiltInId::imageAtomicExchangeExt_UImageBuffer1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01F20D00B(
        BuiltInId::imageAtomicExchangeExt_Image2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01G20D00B(
        BuiltInId::imageAtomicExchangeExt_IImage2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01H20D00B(
        BuiltInId::imageAtomicExchangeExt_UImage2DArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01a20D00B(
        BuiltInId::imageAtomicExchangeExt_ImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01b20D00B(
        BuiltInId::imageAtomicExchangeExt_IImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01c20D00B(
        BuiltInId::imageAtomicExchangeExt_UImageCubeArray1_Int3_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01L00D00B(
        BuiltInId::imageAtomicExchangeExt_Image1D1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01M00D00B(
        BuiltInId::imageAtomicExchangeExt_IImage1D1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01N00D00B(
        BuiltInId::imageAtomicExchangeExt_UImage1D1_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01O10D00B(
        BuiltInId::imageAtomicExchangeExt_Image1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01P10D00B(
        BuiltInId::imageAtomicExchangeExt_IImage1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Q10D00B(
        BuiltInId::imageAtomicExchangeExt_UImage1DArray1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01X10D00B(
        BuiltInId::imageAtomicExchangeExt_Image2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Y10D00B(
        BuiltInId::imageAtomicExchangeExt_IImage2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01Z10D00B(
        BuiltInId::imageAtomicExchangeExt_UImage2DRect1_Int2_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00B,
        3,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01R10D00D00B(
        BuiltInId::imageAtomicExchangeExt_Image2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01S10D00D00B(
        BuiltInId::imageAtomicExchangeExt_IImage2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01T10D00D00B(
        BuiltInId::imageAtomicExchangeExt_UImage2DMS1_Int2_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01U20D00D00B(
        BuiltInId::imageAtomicExchangeExt_Image2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01V20D00D00B(
        BuiltInId::imageAtomicExchangeExt_IImage2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicExchangeExt_01W20D00D00B(
        BuiltInId::imageAtomicExchangeExt_UImage2DMSArray1_Int3_Int1_Float1,
        BuiltInName::imageAtomicExchangeExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00B,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_00z10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01A10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01B10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage2D1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01C20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01D20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01E20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage3D1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01I20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_ImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01J20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01K20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImageCube1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01g00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_ImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01h00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01i00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImageBuffer1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01F20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01G20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01H20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage2DArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01a20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_ImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01b20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01c20D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImageCubeArray1_Int3_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01L00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01M00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01N00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage1D1_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01O10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01P10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Q10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage1DArray1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01X10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Y10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Z10D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage2DRect1_Int2_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00E00E,
        4,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01R10D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01S10D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01T10D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage2DMS1_Int2_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01U20D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_Image2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01V20D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_IImage2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01W20D00D00E00E(
        BuiltInId::imageAtomicCompSwapExt_UImage2DMSArray1_Int3_Int1_UInt1_UInt1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00E00E,
        5,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_00z10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p00z10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01A10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01A10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01B10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage2D1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01B10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01C20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01C20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01D20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01D20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01E20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage3D1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01E20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01I20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_ImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01I20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01J20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01J20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01K20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImageCube1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01K20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01g00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_ImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01g00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01h00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01h00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01i00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImageBuffer1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01i00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01F20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01F20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01G20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01G20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01H20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage2DArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01H20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01a20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_ImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01a20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01b20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01b20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01c20D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImageCubeArray1_Int3_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01c20D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01L00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01L00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01M00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01M00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01N00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage1D1_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01N00D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01O10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01O10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01P10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01P10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Q10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage1DArray1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Q10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01X10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01X10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Y10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Y10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01Z10D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage2DRect1_Int2_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01Z10D00D00D,
        4,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01R10D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01R10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01S10D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01S10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01T10D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage2DMS1_Int2_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01T10D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01U20D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_Image2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01U20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01V20D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_IImage2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01V20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageAtomicCompSwapExt_01W20D00D00D00D(
        BuiltInId::imageAtomicCompSwapExt_UImage2DMSArray1_Int3_Int1_Int1_Int1,
        BuiltInName::imageAtomicCompSwapExt,
        TExtension::OES_shader_image_atomic,
        BuiltInParameters::p01W20D00D00D00D,
        5,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_00z10D30B(
        BuiltInId::imageStore_Image2D1_Int2_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p00z10D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01A10D30D(
        BuiltInId::imageStore_IImage2D1_Int2_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01A10D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01B10D30E(
        BuiltInId::imageStore_UImage2D1_Int2_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01B10D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01C20D30B(
        BuiltInId::imageStore_Image3D1_Int3_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01C20D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01D20D30D(
        BuiltInId::imageStore_IImage3D1_Int3_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01D20D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01E20D30E(
        BuiltInId::imageStore_UImage3D1_Int3_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01E20D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01F20D30B(
        BuiltInId::imageStore_Image2DArray1_Int3_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01F20D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01G20D30D(
        BuiltInId::imageStore_IImage2DArray1_Int3_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01G20D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01H20D30E(
        BuiltInId::imageStore_UImage2DArray1_Int3_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01H20D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01I20D30B(
        BuiltInId::imageStore_ImageCube1_Int3_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01I20D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01J20D30D(
        BuiltInId::imageStore_IImageCube1_Int3_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01J20D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01K20D30E(
        BuiltInId::imageStore_UImageCube1_Int3_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01K20D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01a20D30B(
        BuiltInId::imageStore_ImageCubeArray1_Int3_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01a20D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01b20D30D(
        BuiltInId::imageStore_IImageCubeArray1_Int3_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01b20D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01c20D30E(
        BuiltInId::imageStore_UImageCubeArray1_Int3_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01c20D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01g00D30B(
        BuiltInId::imageStore_ImageBuffer1_Int1_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01g00D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01h00D30D(
        BuiltInId::imageStore_IImageBuffer1_Int1_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01h00D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01i00D30E(
        BuiltInId::imageStore_UImageBuffer1_Int1_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01i00D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01L00D30B(
        BuiltInId::imageStore_Image1D1_Int1_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01L00D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01M00D30D(
        BuiltInId::imageStore_IImage1D1_Int1_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01M00D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01N00D30E(
        BuiltInId::imageStore_UImage1D1_Int1_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01N00D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01O10D30B(
        BuiltInId::imageStore_Image1DArray1_Int2_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01O10D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01P10D30D(
        BuiltInId::imageStore_IImage1DArray1_Int2_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01P10D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01Q10D30E(
        BuiltInId::imageStore_UImage1DArray1_Int2_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Q10D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01X10D30B(
        BuiltInId::imageStore_Image2DRect1_Int2_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01X10D30B,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01Y10D30D(
        BuiltInId::imageStore_IImage2DRect1_Int2_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Y10D30D,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01Z10D30E(
        BuiltInId::imageStore_UImage2DRect1_Int2_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01Z10D30E,
        3,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01R10D00D30B(
        BuiltInId::imageStore_Image2DMS1_Int2_Int1_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01R10D00D30B,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01S10D00D30D(
        BuiltInId::imageStore_IImage2DMS1_Int2_Int1_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01S10D00D30D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01T10D00D30E(
        BuiltInId::imageStore_UImage2DMS1_Int2_Int1_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01T10D00D30E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01U20D00D30B(
        BuiltInId::imageStore_Image2DMSArray1_Int3_Int1_Float4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01U20D00D30B,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01V20D00D30D(
        BuiltInId::imageStore_IImage2DMSArray1_Int3_Int1_Int4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01V20D00D30D,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction imageStore_01W20D00D30E(
        BuiltInId::imageStore_UImage2DMSArray1_Int3_Int1_UInt4,
        BuiltInName::imageStore,
        TExtension::UNDEFINED,
        BuiltInParameters::p01W20D00D30E,
        4,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction noise1_00B(BuiltInId::noise1_Float1,
                                         BuiltInName::noise1,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise1_10B(BuiltInId::noise1_Float2,
                                         BuiltInName::noise1,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise1_20B(BuiltInId::noise1_Float3,
                                         BuiltInName::noise1,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise1_30B(BuiltInId::noise1_Float4,
                                         BuiltInName::noise1,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 1, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise2_00B(BuiltInId::noise2_Float1,
                                         BuiltInName::noise2,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise2_10B(BuiltInId::noise2_Float2,
                                         BuiltInName::noise2,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise2_20B(BuiltInId::noise2_Float3,
                                         BuiltInName::noise2,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise2_30B(BuiltInId::noise2_Float4,
                                         BuiltInName::noise2,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 2, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise3_00B(BuiltInId::noise3_Float1,
                                         BuiltInName::noise3,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise3_10B(BuiltInId::noise3_Float2,
                                         BuiltInName::noise3,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise3_20B(BuiltInId::noise3_Float3,
                                         BuiltInName::noise3,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise3_30B(BuiltInId::noise3_Float4,
                                         BuiltInName::noise3,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 3, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise4_00B(BuiltInId::noise4_Float1,
                                         BuiltInName::noise4,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p00B00B30B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise4_10B(BuiltInId::noise4_Float2,
                                         BuiltInName::noise4,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p10B_o_10B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise4_20B(BuiltInId::noise4_Float3,
                                         BuiltInName::noise4,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p20B20B00B,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction noise4_30B(BuiltInId::noise4_Float4,
                                         BuiltInName::noise4,
                                         TExtension::UNDEFINED,
                                         BuiltInParameters::p30B30D,
                                         1,
                                         StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                         EOpCallBuiltInFunction,
                                         false);
    constexpr const TFunction memoryBarrier_(BuiltInId::memoryBarrier,
                                             BuiltInName::memoryBarrier,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::empty,
                                             0,
                                             StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
                                             EOpMemoryBarrier,
                                             false);
    constexpr const TFunction memoryBarrierAtomicCounter_(
        BuiltInId::memoryBarrierAtomicCounter,
        BuiltInName::memoryBarrierAtomicCounter,
        TExtension::UNDEFINED,
        BuiltInParameters::empty,
        0,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpMemoryBarrierAtomicCounter,
        false);
    constexpr const TFunction memoryBarrierBuffer_(
        BuiltInId::memoryBarrierBuffer,
        BuiltInName::memoryBarrierBuffer,
        TExtension::UNDEFINED,
        BuiltInParameters::empty,
        0,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpMemoryBarrierBuffer,
        false);
    constexpr const TFunction memoryBarrierImage_(
        BuiltInId::memoryBarrierImage,
        BuiltInName::memoryBarrierImage,
        TExtension::UNDEFINED,
        BuiltInParameters::empty,
        0,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpMemoryBarrierImage,
        false);
    constexpr const TFunction barrier_(BuiltInId::barrier,
                                       BuiltInName::barrier,
                                       TExtension::UNDEFINED,
                                       BuiltInParameters::empty,
                                       0,
                                       StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
                                       EOpBarrier,
                                       false);
    constexpr const TFunction memoryBarrierShared_(
        BuiltInId::memoryBarrierShared,
        BuiltInName::memoryBarrierShared,
        TExtension::UNDEFINED,
        BuiltInParameters::empty,
        0,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpMemoryBarrierShared,
        false);
    constexpr const TFunction groupMemoryBarrier_(
        BuiltInId::groupMemoryBarrier,
        BuiltInName::groupMemoryBarrier,
        TExtension::UNDEFINED,
        BuiltInParameters::empty,
        0,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpGroupMemoryBarrier,
        false);
    constexpr const TFunction EmitVertex_(BuiltInId::EmitVertex,
                                          BuiltInName::EmitVertex,
                                          TExtension::EXT_geometry_shader,
                                          BuiltInParameters::empty,
                                          0,
                                          StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
                                          EOpEmitVertex,
                                          false);
    constexpr const TFunction EndPrimitive_(BuiltInId::EndPrimitive,
                                            BuiltInName::EndPrimitive,
                                            TExtension::EXT_geometry_shader,
                                            BuiltInParameters::empty,
                                            0,
                                            StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
                                            EOpEndPrimitive,
                                            false);
    constexpr const TFunction EmitStreamVertex_00D(
        BuiltInId::EmitStreamVertex_Int1,
        BuiltInName::EmitStreamVertex,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        1,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction EndStreamPrimitive_00D(
        BuiltInId::EndStreamPrimitive_Int1,
        BuiltInName::EndStreamPrimitive,
        TExtension::UNDEFINED,
        BuiltInParameters::p00D00D00D00D,
        1,
        StaticType::Get<EbtVoid, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction subpassLoad_01j(
        BuiltInId::subpassLoad_SubpassInput1,
        BuiltInName::subpassLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01j,
        1,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction subpassLoad_01k(BuiltInId::subpassLoad_ISubpassInput1,
                                              BuiltInName::subpassLoad,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p01k,
                                              1,
                                              StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction subpassLoad_01l(BuiltInId::subpassLoad_USubpassInput1,
                                              BuiltInName::subpassLoad,
                                              TExtension::UNDEFINED,
                                              BuiltInParameters::p01l,
                                              1,
                                              StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
                                              EOpCallBuiltInFunction,
                                              false);
    constexpr const TFunction subpassLoad_01m00D(
        BuiltInId::subpassLoad_SubpassInputMS1_Int1,
        BuiltInName::subpassLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01m00D,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction subpassLoad_01n00D(
        BuiltInId::subpassLoad_ISubpassInputMS1_Int1,
        BuiltInName::subpassLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01n00D,
        2,
        StaticType::Get<EbtInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction subpassLoad_01o00D(
        BuiltInId::subpassLoad_USubpassInputMS1_Int1,
        BuiltInName::subpassLoad,
        TExtension::UNDEFINED,
        BuiltInParameters::p01o00D,
        2,
        StaticType::Get<EbtUInt, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction anyInvocation_00F(
        BuiltInId::anyInvocation_Bool1,
        BuiltInName::anyInvocation,
        TExtension::UNDEFINED,
        BuiltInParameters::p00F00F00F,
        1,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction allInvocations_00F(
        BuiltInId::allInvocations_Bool1,
        BuiltInName::allInvocations,
        TExtension::UNDEFINED,
        BuiltInParameters::p00F00F00F,
        1,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction allInvocationsEqual_00F(
        BuiltInId::allInvocationsEqual_Bool1,
        BuiltInName::allInvocationsEqual,
        TExtension::UNDEFINED,
        BuiltInParameters::p00F00F00F,
        1,
        StaticType::Get<EbtBool, EbpUndefined, EvqGlobal, 1, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction textureVideoWEBGL_00y10B(
        BuiltInId::textureVideoWEBGL_SamplerVideoWEBGL1_Float2,
        BuiltInName::textureVideoWEBGL,
        TExtension::UNDEFINED,
        BuiltInParameters::p00y10B,
        2,
        StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
        EOpCallBuiltInFunction,
        false);
    constexpr const TFunction texture_00y10B(BuiltInId::texture_SamplerVideoWEBGL1_Float2,
                                             BuiltInName::texture,
                                             TExtension::UNDEFINED,
                                             BuiltInParameters::p00y10B,
                                             2,
                                             StaticType::Get<EbtFloat, EbpUndefined, EvqGlobal, 4, 1>(),
                                             EOpCallBuiltInFunction,
                                             false);
    
    }  // namespace Func
    
    namespace BuiltInArray
    {
    using namespace Func;
    using Rule = SymbolRule;
    
    // Rules used to initialize the mangled name array.
    constexpr SymbolRule kRules[] = {
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00R30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00R30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01g00D00E),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtOffset_30B10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtOffset_30B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtOffsetExt_30B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00g10B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_00z10D00D),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2DProj_00I20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture2DProj_00I20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00v30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00o00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01g00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01g00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01I20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01I20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&tanh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&tanh_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01E20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01E20D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00m00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notFunc_10F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notFunc_10F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_20E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_30B30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_00z10D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00t00B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00O30B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_20B30B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_20B30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_00z10D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01W),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01V),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01U),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01T),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01S),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_20B20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_20B20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00o00B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01S10D00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&uintBitsToFloat_30E),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&uintBitsToFloat_30E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01R10D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01R10D00D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00K00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00K00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00h00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxAtomicCounterBindings),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxAtomicCounterBindings),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetchOffset_00q10D10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThanEqual_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThanEqual_10E10E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00d20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00d20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_30B30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_30B30B30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01a20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01a20D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01R10D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01R10D00D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00a20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00a20B00B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01F20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01F20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ceil_10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01b20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01b20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01A10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicAdd_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicAdd_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00p00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToUint_20B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToUint_20B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00t30B00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_20D20D20F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_20D20D20F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&degrees_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&degrees_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationTextureImageUnits),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01D20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01D20D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_00C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01S10D00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&inversesqrt_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&inversesqrt_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&inversesqrt_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00J20D00D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00J20D00D20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00S30B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00S30B20B20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_10D10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_30D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_30D00D),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&groupMemoryBarrier_),
        Rule::Get<Spec::GLSL, 430, Shader::COMPUTE, 0>(&groupMemoryBarrier_),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01b20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01b20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01b20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01b20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_20C20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00I10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00I10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_00C00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_E0B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_E0B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01i00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00O20B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00Y30B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00Y30B20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01C20D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01C20D30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&modf_10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&modf_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&determinant_50B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01J20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01J20D00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00g10B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01W20D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01W20D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01K20D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01K20D30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentInputVectors),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentInputVectors),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sign_20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&cosh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&cosh_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sign_20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sign_20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&atanh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&atanh_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01V20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01V20D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00t10B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00p20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_10C10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Y10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01C20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00d20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00d20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00m20B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01C20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThan_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThan_10E10E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01A10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01A10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00X00B00B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00t30B00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_30C30C30C),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGrad_00v10B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(EXT_YUV_target)>(&textureProj_00N30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_00C00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedShaderOutputResources),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedShaderOutputResources),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01T10D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01T10D00D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00I10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00I10B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00j00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00j00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_20D20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_20C20C20C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessGenLevel),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_00z10D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&all_10F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&all_10F),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyCoarse_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isinf_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isinf_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00a20B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00a20B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00I10B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00I10B10D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00q30B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00L20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00L20B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThanEqual_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThanEqual_30E30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_10E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_10E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01a20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01a20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00S30B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00S30B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&round_00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&round_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&round_00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shader_framebuffer_fetch)>(
            &TableBase::m_gl_LastFragData),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(NV_shader_framebuffer_fetch)>(
            &TableBase::m_gl_LastFragDataNV),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_30D30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00U20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00U20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01P10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01P10D00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_00C00C20C),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(
            &texture2DRect_00O10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01N00D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise2_20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_10E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_10D),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtOffset_00B10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtOffset_00B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtOffsetExt_00B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00t00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_sample_variables)>(
            &TableBase::m_gl_SampleMaskIn),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00S20B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00S20B00B20D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00p00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_00z10D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_00z10D30B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00X10B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00X10B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00X10B10Dx400D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_10B20B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_10B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthFine_10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&cos_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&cos_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&unpackHalf2x16_00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&unpackHalf2x16_00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_10B10B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeTextureImageUnits),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeTextureImageUnits),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Y10D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sin_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sin_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00L20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00L20B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01i00D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01i00D30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01A10D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01A10D30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryOutputVertices),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01H20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01H20D00E),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&shadow1D_00m20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_10E10E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_30B30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_10E10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_10E10E10E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&texture_00N10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00t30B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01E20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01E20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00a20D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00a20D00D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01V20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &BuiltInVariable::kgl_PatchVerticesInTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &BuiltInVariable::kgl_PatchVerticesInTES),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notFunc_20F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notFunc_20F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01F20D00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01F20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01F20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01L00D30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_20B20B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01D20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00R20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00R20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00p10B00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00h20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00J30B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00J30B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00g10B00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_InvocationID),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &BuiltInVariable::kgl_InvocationIDTCS),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01E20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&radians_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&radians_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00n10B00B10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise2_10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00a10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00e20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00e20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&distance_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&distance_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00Z20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00Z20B20B20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sign_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sign_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_30E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_30E00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00I10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00I10B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_10D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01I20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01I20D00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&degrees_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&degrees_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&inversesqrt_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&inversesqrt_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&inversesqrt_30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01I20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00v20B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&intBitsToFloat_20D),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&intBitsToFloat_20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01A10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01A10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&acosh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&acosh_00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00S30B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00S30B00B20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00L20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00L20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00n30B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00i00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00p20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_30B20B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_30B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00S20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00S20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicXor_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicXor_00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00Y20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00Y20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01P10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sign_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sign_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sign_30C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sign_30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sign_30D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00Y20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00Y20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationInputComponents),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdy_20B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdy_20B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdyExt_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00Y30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00Y30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00X10B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00X10B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&memoryBarrierBuffer_),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&memoryBarrierBuffer_),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isinf_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isinf_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isinf_00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_20D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_20D00D00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&texture2DProj_00I20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture2DProj_00I20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00f20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00f20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00m30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThan_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThan_20E20E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationAtomicCounters),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00I30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00I30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&refract_00B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&refract_00B00B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryImageUniforms),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01X10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01X10D00E),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise4_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00e00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00e00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01N00D30E),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_NumWorkGroups),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_NumWorkGroups),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00a20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00a20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_00C10C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&frexp_30B30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_30B30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00t00B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_30C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01X10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01X10D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00I10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00I10B),
        Rule::Get<Spec::ESSL, 300, Shader::VERTEX, 0>(&BuiltInVariable::kgl_InstanceID),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_InstanceID),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&normalize_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&normalize_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&normalize_20C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01H20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01H20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&inverse_F0B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&inverse_F0B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_20C20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00R10B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00R10B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01h00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01h00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThan_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThan_30E30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01N00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01N00D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00p10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01J20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_DepthRange),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_DepthRange),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01S10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00o30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_20D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00L20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00L20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01L00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_30D30D30F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_30D30D30F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeUniformComponents),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeUniformComponents),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01h00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01h00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01E20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01E20D00E00E),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00O30B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&floor_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&floor_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&floor_10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00o10B00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00x30B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00x30B00D),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtSample_10B00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtSample_10B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtSampleExt_10B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01F20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01F20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_10B30B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_10B30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00k30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01O10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01O10D00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&cos_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&cos_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01F20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01B10D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_00C00D),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterCompSwap_00G00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00a20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00a20B10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01b20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01b20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00X10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00X10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01T10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00R10B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00R10B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00d10B00B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00d10B00B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentImageUniforms),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentImageUniforms),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00i00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&equal_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&equal_20E20E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&uaddCarry_00E00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&uaddCarry_00E00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00T20B),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&textureCube_00K20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&textureCube_00K20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01U20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01U20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01K20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_90B90B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00I10B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00I10B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00I10B10Dx4),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00p10B00B00B00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00g30B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_30E00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_30E00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&asin_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&asin_00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00J30B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00J30B20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00w00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00w00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&notEqual_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&notEqual_30E30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01K20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01K20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThanEqual_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThanEqual_10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&inversesqrt_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&inversesqrt_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&inversesqrt_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00i20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00u10B00D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&reflect_00C00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicAdd_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicAdd_00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&intBitsToFloat_30D),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&intBitsToFloat_30D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00v20B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00X10B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00X10B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThanEqual_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThanEqual_30E30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&mix_20B20B20F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&mix_20B20B20F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01T10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAtomicCounters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAtomicCounters),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00X20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00X20B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&any_10F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&any_10F),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00d30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00d30B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01X10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00I30B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00I30B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00X10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00X10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00R10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00R10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01M00D30D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&radians_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&radians_00B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00f20B00B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00f20B00B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00f20B00B10Dx4),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, EXT_INDEX(EXT_blend_func_extended)>(
            &TableBase::m_gl_MaxDualSourceDrawBuffersEXT),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Y10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_10E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01g00D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01g00D30B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00q20B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicXor_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicXor_00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_00C00C00F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00g00B00B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_30B30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentAtomicCounters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentAtomicCounters),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&faceforward_20B20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&faceforward_20B20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00x00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureSize_00x00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00S30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00S30B00B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&fma_20B20B20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_20B20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(&fmaExt_20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00o10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01J20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_30B30B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_30B30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_10E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_00F00F00F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_00F00F00F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01M00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01M00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Q10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&acosh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&acosh_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Y10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00X10B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00X10B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00X10D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00X10D00D10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&packUnorm2x16_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&packUnorm2x16_10B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00h20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&umulExtended_20E20E20E20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&umulExtended_20E20E20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00m20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00g30B00B00B00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00o30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01T10D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01T10D00D00E00E),
        Rule::Get<Spec::ESSL, 100, Shader::VERTEX, 0>(&textureCubeLod_00K20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&textureCubeLod_00K20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00L00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00L00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01L00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Q10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Q10D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_20E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_20E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00S30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00S30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdy_30B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdy_30B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdyExt_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isinf_10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isinf_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isinf_10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexTextureImageUnits),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexTextureImageUnits),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_30B30B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DProjLodEXT_00I20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FrontFacing),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FrontFacing),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00t10B00D00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&acos_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&acos_10B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&textureCube_00K20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&textureCube_00K20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01B10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01B10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeAtomicCounterBuffers),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00f00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00f00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00h10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_20C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01g00D00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(ARM_shader_framebuffer_fetch)>(
            &BuiltInVariable::kgl_LastFragColorARM),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlTotalOutputComponents),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00q10B10Dx4),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_20D20D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00k20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01B10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00Y30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00Y30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationOutputComponents),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_blend_func_extended)>(
            &BuiltInVariable::kgl_SecondaryFragColorEXT),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01U20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01U20D00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::VERTEX, EXT_INDEX(ANGLE_base_vertex_base_instance)>(
            &BuiltInVariable::kgl_BaseInstance),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_B0B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_B0B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_20F20F20F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_20F20F20F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_00B00B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_00B00B30B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01M00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01M00D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01M00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01M00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00d10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&texelFetch_00N10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00a00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00a00D),
        Rule::Get<Spec::GLSL, 400, Shader::GEOMETRY, 0>(&EmitStreamVertex_00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00Y30B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00Y30B20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_30E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01b20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01b20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&ceil_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&ceil_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00S00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00S00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01S10D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01S10D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicCounterDecrement_00G),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&atomicCounterDecrement_00G),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&ceil_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&ceil_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Q10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Q10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01c20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01c20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00t00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00f30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00f30B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageSamples_01R),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00R10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00R10D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sign_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sign_20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_30B30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_30B30B30B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01T10D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01T10D00D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00R10B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00R10B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00t10B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shadow_samplers)>(
            &shadow2DProjEXT_00d30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&ldexp_20B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_20B20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_30D30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01D20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01D20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_10E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00Z20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00Z20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01S10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01S10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&cos_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&cos_10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00v10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00e30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00e30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00T00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00T00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01g00D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00u00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00Y30B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00Y30B20B20B20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise3_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00T20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00T20B20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture1DProj_00g10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00d30B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00d30B10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01B10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01U20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01U20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01h00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01h00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&matrixCompMult_50B50B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&matrixCompMult_50B50B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_30B30B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01E20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01E20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00U20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00U20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01I20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01I20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00h10B00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00p10B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_20C20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_PointSize),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_PointSize),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01F20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01F20D00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&asin_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&asin_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sinh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sinh_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01g00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01h00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01h00D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00S20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00S20B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_20C20C20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00R20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00R20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThan_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThan_10E10E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01M00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01M00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00n10B00B10Dx4),
        Rule::Get<Spec::GLSL, 150, Shader::GEOMETRY, 0>(&EmitVertex_),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(&EmitVertex_),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_20B20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_20B20B20B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00b),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00J20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00J20B20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00J20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01V20D00D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01V20D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01V20D00D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Y10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Y10D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::NOT_COMPUTE, EXT_INDEX(OVR_multiview)>(
            &BuiltInVariable::kgl_ViewID_OVR),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&radians_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&radians_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&fract_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&fract_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&uaddCarry_20E20E20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&uaddCarry_20E20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00X30B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00X30B10B10B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00P),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00v20B10D),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&shadow2D_00d20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00o00D00D00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00V),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00W),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00q30B10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00O10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeImageUniforms),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeImageUniforms),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00L20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00L20B00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01A10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01A10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01V20D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01V20D00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01A10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01A10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01b20D00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texture_00n20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_20C20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_00E00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_00E00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&length_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&length_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&ldexp_00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_00D00D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_00D00D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00Y30B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00Y30B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01W20D00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&roundEven_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&roundEven_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&roundEven_30C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&acosh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&acosh_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&atanh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&atanh_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&length_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_10B10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_10B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00L20B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00L20B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_sample_variables)>(
            &BuiltInVariable::kgl_SamplePosition),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToInt_30B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToInt_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_00z10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00Y20D00D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00Y20D00D20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicExchange_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicExchange_00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01h00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01h00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_30C30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00o00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00x30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_20B20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_10B00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00f10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessPatchComponents),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_10C10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01L00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_30F30F30F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_30F30F30F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01T10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01T10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00O10B10Dx400D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&abs_20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&abs_20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&abs_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&abs_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&abs_20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_30E30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01a20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_00B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_00B00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&mix_00B00B00F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&mix_00B00B00F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00s30B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00s30B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00I20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00I20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00p10B00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&unpackDouble2x32_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&acos_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&acos_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00J20B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00J20B20B20B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_00C00C00C),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DGradEXT_00I10B10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01G20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01G20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01I20D00D),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DProjGradEXT_00I30B10B10B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&fma_30B30B30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_30B30B30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(&fmaExt_30B30B30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01L00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00i20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeWorkGroupCount),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeWorkGroupCount),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_20C00C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01i00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01i00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_30E30E30F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_30E30E30F),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragColor),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragColor),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01G20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01S10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_20B),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtSample_30B00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtSample_30B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtSampleExt_30B00D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxCoarse_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &texture_00M10B),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_PerVertex),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_PerVertexTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_PerVertexTES),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00h10B00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::GEOMETRY, 0>(&EndStreamPrimitive_00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&pow_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&pow_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00Y20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00Y20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01P10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00X10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00X10B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&frexp_00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlOutputComponents),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2D_00I10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture2D_00I10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01O10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ceil_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&ceil_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&ceil_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01b20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01b20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01P10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01P10D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01P10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01P10D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00R20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00R20B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01V20D00D30D),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01m00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00I10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00I10B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&reflect_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&reflect_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise4_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sqrt_10C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sqrt_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sqrt_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_20E20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_20E20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00g00B00B00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00q20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise3_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01G20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01C20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, 0>(&BuiltInVariable::kgl_TessCoord),
        Rule::Get<Spec::GLSL, 0, Shader::TESS_EVALUATION_EXT, 0>(&BuiltInVariable::kgl_TessCoord),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxPatchVertices),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01a20D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01a20D30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00d30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00d30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01H20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01H20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00I20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00I20B10B10B10D),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtSample_20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtSample_20B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtSampleExt_20B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&reflect_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&reflect_10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&refract_10B10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&refract_10B10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01h00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_20C20C20F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01X10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01X10D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_20C20C20C),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureOffset_00v10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Q10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Q10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01P10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sinh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sinh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00m00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01N00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01N00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00e20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&asinh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&asinh_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01C20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01I20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01I20D00D00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00O20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(&textureProj_00O20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01M00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01M00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&frexp_10B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&inverse_50B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&inverse_50B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&dot_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&dot_10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_TessLevelOuterTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_TessLevelOuterTES),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise2_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00o10B00B00B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&radians_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&radians_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicCompSwap_00E00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicCompSwap_00E00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00I00B00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00Y20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00Y20B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Z10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Z10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexUniformVectors),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexUniformVectors),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01W20D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01W20D00D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00o00B00D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01W20D00D00D),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&ftransform_),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00X20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00X20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00n30B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01W20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&greaterThanEqual_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&greaterThanEqual_20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_sample_variables)>(
            &BuiltInVariable::kgl_NumSamples),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &textureProj_00M20B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture3DProjLod_00J30B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(
            &texture3DProjLod_00J30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isinf_30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_10D10D10F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_10D10D10F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00g10B00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01D20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01D20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00h10B00D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&modf_30B30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&modf_30B30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&roundEven_20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&roundEven_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&roundEven_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_30B10B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_30B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00J30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00J30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01F20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01F20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00t00B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToInt_20B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToInt_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00U20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00U20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&round_20C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicMin_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicMin_00E00E),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGradOffset_00v10B10B10B10D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGrad_00n20B10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01S10D00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shadow_samplers)>(
            &shadow2DEXT_00d20B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00a20B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00a20B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00a20B10Dx4),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_clip_cull_distance)>(
            &TableBase::m_gl_MaxCullDistancesEXT),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01F20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01F20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&abs_10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&abs_10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&abs_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&abs_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&abs_10C),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_frag_depth)>(
            &TableBase::m_gl_FragDepthEXT),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01V20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(EXT_clip_cull_distance)>(
            &TableBase::m_gl_ClipDistance),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, EXT_INDEX(APPLE_clip_distance)>(
            &TableBase::m_gl_ClipDistanceAPPLE),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&modf_30C30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01T10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01T10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00i20B00B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00g10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00X20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00X20B00B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_30C00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationImageUniforms),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00U20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00U20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00I30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00I30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_00E00E00F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_00E00E00F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01h00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01h00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_00D00D00F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_00D00D00F),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00q20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00i20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00a20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00a20B10B10B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_00B00B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_00B00B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureLod_00s30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureLod_00s30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01C20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01C20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01g00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_30B30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00f20B00B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00f20B00B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01N00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_00z),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_00z),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01g00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&faceforward_00C00C00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00a20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00a20B10B10B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxCoarse_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01a20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00J20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00J20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&refract_20B20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&refract_20B20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ceil_30C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryOutputComponents),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise1_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlAtomicCounters),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log2_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log2_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlImageUniforms),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00d30B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00d30B10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_20C20C),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fract_30C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00t00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01L00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_30E30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentAtomicCounterBuffers),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_in),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_inTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_inTES),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise4_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&distance_10C10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00J30B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00J30B00B20D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01O10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01O10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01H20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01h00D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01h00D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01O10D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &texelFetchExt_00c20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sqrt_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sqrt_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sqrt_00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00R30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00R30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise3_10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00q10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01F20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00m20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00m30B00D00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00v30B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_20D20D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_20D20D20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01P10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01C20D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_00C00C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01N00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00x30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_10E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_10E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01c20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01c20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00U20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00U20B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_00z10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_00z10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_30C00C00C),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00a20B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00a20B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00a20B10Dx400D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sinh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sinh_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_E0BE0B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthFine_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00m20B00B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01K20D00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00p),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_WorkGroupSize),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_WorkGroupSize),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&asinh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&asinh_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&cross_20C20C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00a20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00a20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00O20B10B10B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&pow_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&pow_30B30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01G20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01G20D00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_10B10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_10B10B10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00O30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(&textureProj_00O30B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00R10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01E20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Q10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Q10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01E20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isnan_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isnan_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isnan_00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imulExtended_10D10D10D10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&imulExtended_10D10D10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00o10B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01i00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01i00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&refract_10C10C00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01T10D00D30E),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2DProj_00I30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture2DProj_00I30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00I10B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00I10B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00J20B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00J20B00B20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicCompSwap_00D00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicCompSwap_00D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00i20B00D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyFine_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00a20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00a20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&textureProj_00N30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&refract_30C30C00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_30D30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01D20D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01D20D30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&packSnorm2x16_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&packSnorm2x16_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToUint_30B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToUint_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00R10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00R10B10D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00q20B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00R20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00R20B10B10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&ldexp_30B30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_30B30D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_30B00B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterOr_00G00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_TessLevelInnerTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_TessLevelInnerTES),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_30B30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00I30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00I30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01D20D00E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00g00B00D00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01D20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01D20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01g00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01c20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&abs_00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&abs_00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&abs_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&abs_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&abs_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00R10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00R10B00B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxCoarse_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture1D_00g00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_10C10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01g00D00E),
        Rule::Get<Spec::ESSL, 100, Shader::VERTEX, 0>(&texture2DLod_00I10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture2DLod_00I10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00X20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00X20B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeAtomicCounters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeAtomicCounters),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00s30B),
        Rule::Get<Spec::GLSL, 150, Shader::GEOMETRY, 0>(&EndPrimitive_),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &EndPrimitive_),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_00B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_00B30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&round_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&round_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&equal_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&equal_30E30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01R10D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01R10D00D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01M00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_00C20C),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&dot_00C00C),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_30C30C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicOr_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicOr_00D00D),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2DProj_00M20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_10D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00V),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00V),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &textureSizeExt_00V),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01h00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_20C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_30E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00X20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00X20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&shadow2D_00d20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00U20B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00U20B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Z10D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&faceforward_10B10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&faceforward_10B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01h00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01J20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01J20D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&all_20F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&all_20F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01J),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01J),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01K),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01K),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00t00B00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01I),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01I),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&packHalf2x16_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&packHalf2x16_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00I20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00I20B00B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01L),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01M),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01C),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00r00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00r00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01F),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01G),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01G),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01L00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01L00D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01L00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00X10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00X10D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_30F30F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_30F30F),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01R),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01S),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01P),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01Q),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01V),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00g00B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01T),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01U),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01h),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01h),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01i),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01i),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fract_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&fract_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&fract_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00X10B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00X10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01c),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01c),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01R10D00D30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01a),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01a),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01f),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DProjGradEXT_00I20B10B10B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01d),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00S20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00S20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_30C30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01J20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragDepth),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragDepth),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00x30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00x30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&mix_30B30B30F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&mix_30B30B30F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_30B30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_30B30B30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00Z20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00Z20B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01E20D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01E20D30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sqrt_30C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sqrt_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sqrt_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_30D30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_30D30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryTextureImageUnits),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtCentroid_10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtCentroid_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtCentroidExt_10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texture_00q10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &textureSize_00M00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00c),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, EXT_INDEX(ANGLE_base_vertex_base_instance)>(
            &BuiltInVariable::kangle_BaseInstance),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_10F10F10F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_10F10F10F),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00U20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00U20B10B10B10D),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_Position),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_Position),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_PositionGS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_PositionTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_PositionTES),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGradOffset_00O10B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &textureProj_00M30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00L20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00L20B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01V20D00D00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01J20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01J20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01J20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01J20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00l20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01M00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&dot_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&dot_20B20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00v20B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00S30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00S30B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00R20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00R20B10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01i00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01i00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_00z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_00z10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&normalize_30C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&normalize_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&normalize_30B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureOffset_00O10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00I20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00I20B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00e20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01V20D00D00E),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2D_00M10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01a20D00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthFine_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00K20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00K20B00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shader_texture_lod)>(
            &textureCubeLodEXT_00K20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00T20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00T20B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&textureProj_00N20B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00I10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01A10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01A10D00E00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyFine_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&modf_10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01E20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01E20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00X30B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00X30B00B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01W20D00D30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_sample_variables)>(
            &TableBase::m_gl_MaxSamples),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00m30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00g30B00D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00U20D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00U20D00D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_00z10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_00z10D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01D20D00E),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00q30B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00d20B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00d20B10B10B10D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthCoarse_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01N00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01N00D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00d30B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00d30B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01T10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01T10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_20F20F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_20F20F),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_20C20C00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&usubBorrow_10E10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&usubBorrow_10E10E10E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00U20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00U20B00B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isnan_10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isnan_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isnan_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01H20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01A10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01A10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01C20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01C20D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00R00B00B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicMin_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicMin_00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00X00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00X00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_00C00C00C),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise1_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_30D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_30D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_20E20E20F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_20E20E20F),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToInt_10B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToInt_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00R30B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00R30B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00U20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00U20B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToInt_00B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToInt_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01a20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01a20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToUint_00B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToUint_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_30C30C),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&textureSamples_00Q),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00i20B00B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_00z10D00D),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(
            &texture2DRectProj_00O20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&modf_20C20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&tan_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&tan_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&floor_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&floor_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&floor_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01O10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01O10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_30C30C),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, EXT_INDEX(ANGLE_multi_draw)>(
            &BuiltInVariable::kgl_DrawID),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00t00B00D),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture3DLod_00J20B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(
            &texture3DLod_00J20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01Q10D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00R10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00R10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01Y10D30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&modf_00B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&modf_00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_20D20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01R10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01R10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01R10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_10C10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01F20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&determinant_A0B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01i00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00i20B00B00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01i00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01i00D00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&shadow1DLod_00m20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01I20D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&distance_00C00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isnan_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isnan_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00o30B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_30D30D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &textureProj_00M30B00B),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&texture2DProj_00M30B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterMax_00G00E),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterExchange_00G00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00I10B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00I10B10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_00B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_00B20B),
        Rule::Get<Spec::ESSL, 100, Shader::VERTEX, 0>(&texture2DProjLod_00I20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture2DProjLod_00I20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_00C30C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&yuv_2_rgb_20B00H),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00b10D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00b10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &texelFetchExt_00b10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00J30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00J30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00R10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00R10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01c20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01c20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01V20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01V20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01P10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01L00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_10D10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&all_30F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&all_30F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01P10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01S10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01S10D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::VERTEX, EXT_INDEX(ANGLE_base_vertex_base_instance)>(
            &BuiltInVariable::kangle_BaseVertex),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_20E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01I20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01I20D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01I20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01I20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryInputComponents),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00X10B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00X10B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00X10B10Dx4),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00u20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00v20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&fract_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&fract_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fract_10C),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00O10B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00K20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00I10B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00I10B00B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01S10D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01S10D00D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01c20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01c20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00U20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00U20B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicAnd_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicAnd_00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp_10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureOffset_00n20B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&unpackUnorm2x16_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&unpackUnorm2x16_00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sqrt_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sqrt_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sqrt_20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00L20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00L20B10B10B),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtCentroid_00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtCentroid_00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtCentroidExt_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00o00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessEvaluationUniformComponents),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxImageUnits),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxImageUnits),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00o30B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&packUnorm4x8_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&packUnorm4x8_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00P10D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00P10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &texelFetchExt_00P10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01i00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01i00D00D00D),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00d10B00B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00d10B00B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00d10B00B10Dx4),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texture_00O10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(&texture_00O10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01M00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01M00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00e30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00e30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01O10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01O10D00D),
        Rule::Get<Spec::ESSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragCoord),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_FragCoord),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01Q10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01X10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00u10B00B00B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthFine_20B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00o00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01E20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01E20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&normalize_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&normalize_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&normalize_00C),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_10C00C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01A10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01A10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Q10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Q10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicMax_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicMax_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00m30B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01R10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01R10D00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&floatBitsToUint_10B),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&floatBitsToUint_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00J20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00J20B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGrad_00O10B10B10B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyFine_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01W20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00I00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00I00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeWorkGroupSize),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxComputeWorkGroupSize),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00R10D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00R10D00D10D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxFine_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01D20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00X10B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00X10B00B10D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00T20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00T20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_outTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_outTES),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_20F20F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_20F20F),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&allInvocationsEqual_00F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01K20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01K20D00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyCoarse_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00R20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00R20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_30D30D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthCoarse_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00I20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00I20B10D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00l),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00m),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00o),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00h),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00i),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00k),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00d),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00e),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00f),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00g),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxDrawBuffers),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxDrawBuffers),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00a),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterMin_00G00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00u10B00B00B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedTextureImageUnits),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedTextureImageUnits),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00x),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00t),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00u),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imulExtended_20D20D20D20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&imulExtended_20D20D20D20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&any_30F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&any_30F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&distance_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&distance_30B30B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00s),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00L),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00I),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00J),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00K),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01L00D00D),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture3D_00J20B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(&texture3D_00J20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture1DLod_00g00B00B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00X),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00Y),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00Z),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&dot_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&dot_30B30B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00T),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00U),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00R),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureQueryLevels_00S),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxTextureImageUnits),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxTextureImageUnits),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&usubBorrow_20E20E20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&usubBorrow_20E20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00t30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&shadow1DProj_00m30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_30B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_30B00B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00O10B10Dx4),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(ARB_texture_rectangle)>(
            &texture2DRectProj_00O30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_10D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_10D00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGradOffset_00n20B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_00D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_00D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&floor_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&floor_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&floor_30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01P10D30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00S30B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00S30B20B20B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&reflect_30C30C),
        Rule::Get<Spec::ESSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_PointCoord),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_PointCoord),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01D20D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00v10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01F20D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01F20D30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&packDouble2x32_10E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_10B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_10B00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00S20D00D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00S20D00D20D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00g00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00U20B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00U20B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00q10B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00I10B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00I10B00D),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture1DProjLod_00g30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texelFetch_00V10D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00V10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &texelFetchExt_00V10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01h00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01h00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_30B30B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01h00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01h00D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01a20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01a20D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00g30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01J20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01F20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01F20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp2_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp2_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_30C30C30C),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_00z10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_00z10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_00z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_00z10D00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00q20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00t10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01c20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00k00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureSize_00k00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&reflect_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&reflect_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01V20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01V20D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_10F10F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_10F10F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&acos_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&acos_30B),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&textureVideoWEBGL_00y10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&textureVideoWEBGL_00y10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdx_10B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdx_10B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdxExt_10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldReverse_30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldReverse_30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Z10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture1DProj_00g30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00v10B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fract_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&fract_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&fract_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_30E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_30E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&TableBase::m_gl_MinProgramTexelOffset),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MinProgramTexelOffset),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01Q10D00E),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtOffset_20B10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtOffset_20B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtOffsetExt_20B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01c20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01c20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&reflect_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&reflect_30B30B),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtCentroid_30B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtCentroid_30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtCentroidExt_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00s30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00s30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01X10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&memoryBarrier_),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&memoryBarrier_),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture1D_00g00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&pow_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&pow_00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_00B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&faceforward_30C30C30C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01K20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&roundEven_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&roundEven_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&roundEven_10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&atanh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&atanh_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00K20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00K20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitCount_20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitCount_20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00L20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00L20D00D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxFine_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01K20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&distance_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&distance_20B20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGradOffset_00q10B10B10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&uaddCarry_30E30E30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&uaddCarry_30E30E30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00U00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00U00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00o10B00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedImageUniforms),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedImageUniforms),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterXor_00G00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01g00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_GlobalInvocationID),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_GlobalInvocationID),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_LocalInvocationIndex),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_LocalInvocationIndex),
        Rule::Get<Spec::ESSL, 300, Shader::VERTEX, 0>(&BuiltInVariable::kgl_VertexID),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&BuiltInVariable::kgl_VertexID),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01L00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_20C20C20C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01U20D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01U20D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicOr_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicOr_00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&mix_10B10B10F),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&mix_10B10B10F),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&reflect_10C10C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_10B10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_10B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00Y30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00Y30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01I20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&frexp_20B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_20B20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00I10B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00I10B10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&notEqual_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&notEqual_20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00d20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00d20B00B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&inverse_A0B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&inverse_A0B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00X20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00X20B10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00Y00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00Y00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&usubBorrow_00E00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&usubBorrow_00E00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01M00D00E),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00L20B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00L20B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00L20B10Dx400D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyFine_30B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00s20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texture_00v10B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00U20B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00U20B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00U20B10Dx4),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01n00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01c20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01c20D00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00g10B00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&step_10C10C),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00x20B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&fma_10B10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_10B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(&fmaExt_10B10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_00B00B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_00B00B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01a20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01a20D00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01N),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00u10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00m30B00B00B00D),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthCoarse_00B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyCoarse_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00o30B00B00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01b20D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01b20D30D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00g30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_00E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_00E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&distance_30C30C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&any_20F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&any_20F),
        Rule::Get<Spec::ESSL, 310, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_HelperInvocation),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&BuiltInVariable::kgl_HelperInvocation),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00g00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sin_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sin_10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, EXT_INDEX(APPLE_clip_distance)>(
            &TableBase::m_gl_MaxClipDistancesAPPLE),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&textureSize_00N00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01h00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01h00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01h00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_sample_variables)>(
            &TableBase::m_gl_SampleMask),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGrad_00k30B20B20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGrad_00k30B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00o10B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01A10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01A10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00f30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00f30B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_20D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_20D20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00t00B00B00B00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&refract_30B30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&refract_30B30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&floor_20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&floor_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&floor_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00t00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01a20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&matrixCompMult_F0BF0B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&matrixCompMult_F0BF0B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&umulExtended_10E10E10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&umulExtended_10E10E10E10E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00d20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00d20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedAtomicCounterBuffers),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&umulExtended_30E30E30E30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&umulExtended_30E30E30E30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00Y20B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00Y20B20B20B20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00a20B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00a20B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00f30B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00f30B10B10B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterSubtract_00G00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01C20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&modf_20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&modf_20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Y10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01i00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01i00D00D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise1_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01M00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01L00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01L00D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00y10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00y10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&length_30C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&length_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&length_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01B10D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01B10D30E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_30B30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_10C10C10F),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_00z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01I20D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01I20D30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp2_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp2_30B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&allInvocations_00F),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_20C00C),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture3DProj_00J30B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(
            &texture3DProj_00J30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01K20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01K20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00X30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00X30B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00I30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00I30B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01W20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&cosh_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&cosh_30B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00q30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00S20B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00S20B20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&usubBorrow_30E30E30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&usubBorrow_30E30E30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01W20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00R20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00R20B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01H),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01H),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00i20B00D00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture3DProj_00J30B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(&texture3DProj_00J30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_B0BB0B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_30B30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&cross_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&cross_20B20B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01O),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureGrad_00q10B10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_20B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_20B00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdx_00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdx_00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdxExt_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00o30B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01i00D00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00R20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00R20B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&acos_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&acos_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01A),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01A),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThan_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThan_20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00X10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00X10B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_30F30F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_30F30F),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sign_00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&cosh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&cosh_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_00D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01E20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01E20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00Z20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00Z20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sign_00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sign_00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00Y20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00Y20B20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Q10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Q10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Q10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_60B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_60B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01G20D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01G20D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01O10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01O10D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&faceforward_00B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&faceforward_00B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01Z10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01O10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01O10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01b20D00D),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtCentroid_20B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtCentroid_20B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtCentroidExt_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00R30B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00R30B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00h10B00B00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01U20D00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01U20D00D00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture1DProj_00g30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00h00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01U20D00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&modf_00C00C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00t30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00o00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01H20D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01H20D30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00U20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00U20B),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00Q20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &texelFetchExt_00Q20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&roundEven_00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&roundEven_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&roundEven_00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetchOffset_00O10D10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&atanh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&atanh_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_10E00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_10E00E00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxFine_30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01L00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00J20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00X30B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00X30B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentUniformVectors),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxFragmentUniformVectors),
        Rule::Get<Spec::ESSL, 100, Shader::VERTEX, 0>(&texture2DProjLod_00I30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture2DProjLod_00I30B00B),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtOffset_10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtOffset_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtOffsetExt_10B10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_10C10C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00g00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&abs_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&abs_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_10E10E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_10E10E00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&packSnorm4x8_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&packSnorm4x8_30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_10B10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_10B10B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01b),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01b),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_30D30D30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_30D30D30D),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00L20B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00L20B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00L20B10Dx4),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01c20D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_10C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01G20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01G20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&determinant_F0B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_A0B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_A0B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&pow_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&pow_20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageSize_01g),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01g),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01B10D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01G20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01G20D00B),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01e),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01G20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01Y10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01g00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01g00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01g00D00E),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00v30B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00O20B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00s30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log2_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log2_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlUniformComponents),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&dot_30C30C),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&fwidthCoarse_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00I20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00I20B10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01T10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01T10D00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_10F10F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_10F10F),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&smoothstep_00B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&smoothstep_00B00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00d30B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00d30B00B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01P10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01P10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00I30B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00I30B00B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedAtomicCounters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxCombinedAtomicCounters),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_10D10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_10D10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01N00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01N00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01L00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01L00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00k30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00k30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00J20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00J20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThanEqual_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThanEqual_10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00o30B00D00B),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, 0>(&TableBase::m_gl_MaxVaryingVectors),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVaryingVectors),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00d00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00d00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sin_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sin_00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&uaddCarry_10E10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&uaddCarry_10E10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_10C10C00C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicCounterIncrement_00G),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&atomicCounterIncrement_00G),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01J20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01S10D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01S10D00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01Q10D30E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00o10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01U20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01U20D00D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00m30B00D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01Y10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Y10D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&equal_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&equal_10E10E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Y10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Y10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Y10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01O10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00J30B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00J30B20D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&imageSize_01W),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01D20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&notEqual_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&notEqual_10E10E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_10C10C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00t10B00B00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01N00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01N00D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00q20B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01N00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01N00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00q10B10Dx400D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01O10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01O10D00D00D),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&shadow1DProjLod_00m30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01i00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00u20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00R10B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00R10B00B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&trunc_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&trunc_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&trunc_10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01S10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00u10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&dot_20C20C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_DepthRangeParameters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_DepthRangeParameters),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise4_30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00f20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise1_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00g30B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&shadow2DProj_00d30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00d30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00d30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sign_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sign_10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00a20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00a20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00o10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&refract_20C20C00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &textureProj_00M20B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01A10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01A10D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00X30B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00X30B10D00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp2_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp2_00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01H20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01H20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00u10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01H20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01H20D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01H20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01H20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00q10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00a20B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00a20B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01S10D00D30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_00C00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00s00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureSize_00s00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01P10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01I20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(EXT_YUV_target)>(&texture_00N10B00B),
        Rule::Get<Spec::ESSL, 310, Shader::FRAGMENT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_PrimitiveID),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_PrimitiveIDGS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &BuiltInVariable::kgl_PrimitiveIDTCS),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_EVALUATION_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &BuiltInVariable::kgl_PrimitiveIDTES),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Y10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Y10D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00I30B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00I30B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::FRAGMENT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_Layer),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_LayerGS),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00d20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00d20B10D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdx_30B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdx_30B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdxExt_30B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00U20B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00U20B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00U20B10Dx400D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01V20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01V20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01V20D00D00E),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(NV_shader_framebuffer_fetch)>(
            &BuiltInVariable::kgl_LastFragColor),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00t30B00B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_20E20E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&asin_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&asin_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01U20D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01U20D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00l30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&texture_00l30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&texture1DProjLod_00g10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&fwidth_10B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&fwidth_10B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(
            &fwidthExt_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdy_00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdy_00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdyExt_00B),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&shadow2DLod_00d20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture1DProj_00g10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThan_30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThan_30E30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imulExtended_30D30D30D30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&imulExtended_30D30D30D30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_70B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_70B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imulExtended_00D00D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&imulExtended_00D00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01F20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01F20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01F20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00S20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00S20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00Y20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00Y20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01c20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&faceforward_10C10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01Z10D30E),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00u00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01c20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01c20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01P10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01P10D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&uintBitsToFloat_00E),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&uintBitsToFloat_00E),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxFine_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01L00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_20D20D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_20D20D00D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_30B30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_30B30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00U10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&tanh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&tanh_00B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01o00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01N00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01N00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_10C00C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_D0BD0B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01M00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01X10D00E),
        Rule::Get<Spec::GLSL, 0, Shader::VERTEX, 0>(&shadow2DProjLod_00d30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01X10D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_30B30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&reflect_20C20C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00h10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&memoryBarrierAtomicCounter_),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&memoryBarrierAtomicCounter_),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_00E00E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_00E00E00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlInputComponents),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01b20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01a20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00d20B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00d20B10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01g00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01g00D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_30C30C30C),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProj_00v20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_00B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_00B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00I20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00I20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_YUV_target)>(&rgb_2_yuv_20B00H),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01P10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00T20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00T20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log2_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log2_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01D20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01D20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_20E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_20E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01B10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01B10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01X10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01X10D00E),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise2_30B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_sample_variables)>(
            &BuiltInVariable::kgl_SampleID),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01U20D00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_10B10B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_10D10D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_10D10D10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &texelFetch_00M10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00Y20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_F0B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_F0B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00Y20B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00Y20B20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00S20B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00S20B20B20B20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01U20D00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_30E30E30E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_30E30E30E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00R00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00R00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&acosh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&acosh_10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01b20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01b20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01Z10D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01Z10D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00L20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00L20B10D00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_20B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_20B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01U20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00J30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00J30B00B),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01k),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_90B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_90B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_30C30C00C),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01l),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicAnd_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicAnd_00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00I10D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00I10D00D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Z10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01i00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01i00D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01K20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01K20D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00L10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01J20D30D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01J20D30D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicCounter_00G),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&atomicCounter_00G),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00m20B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&noise3_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_30D30D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_30D30D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_10C00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_10D10D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_10D10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_10E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_10E00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00h10B00B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01V20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01V20D00D00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&texture2D_00I10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture2D_00I10B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_20D20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01W20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00t10B00B00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00O20B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&trunc_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&trunc_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&length_10C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&length_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&length_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01R10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01H20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01H20D00E),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&subpassLoad_01j),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&dot_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&dot_00B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&tan_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&tan_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00T20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00T20B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGrad_00R30B10B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGrad_00R30B10B10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&exp2_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&exp2_10B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00X20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00X20B10D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00X30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00X30B10B10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01U20D00D30B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&matrixCompMult_A0BA0B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&matrixCompMult_A0BA0B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00S20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00S20B20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&round_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&round_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&round_30C),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&anyInvocation_00F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGrad_00x30B20B20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGrad_00x30B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01D20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01D20D00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00o30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_00C00C10C),
        Rule::Get<Spec::ESSL, 320, Shader::FRAGMENT, 0>(&interpolateAtSample_00B00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&interpolateAtSample_00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_shader_multisample_interpolation)>(
            &interpolateAtSampleExt_00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdx_20B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdx_20B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdxExt_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00L20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00L20B),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&barrier_),
        Rule::Get<Spec::GLSL, 400, Shader::COMPUTE, 0>(&barrier_),
        Rule::Get<Spec::ESSL, 310, Shader::TESS_CONTROL_EXT, EXT_INDEX(EXT_tessellation_shader)>(
            &barrier_),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01N00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01N00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01N00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01N00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00k30B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00k30B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00L20B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00L20B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01J20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01J20D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00S30B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00S30B20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01D20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&normalize_10C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&unpackSnorm4x8_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&unpackSnorm4x8_00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01C20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01C20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01C20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00l30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00l30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&normalize_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&normalize_10B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&asin_30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&asin_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isnan_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isnan_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isnan_20C),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&fwidth_00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&fwidth_00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(
            &fwidthExt_00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&dFdy_10B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&dFdy_10B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(&dFdyExt_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01P10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01P10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01P10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01P10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&max_30E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&max_30E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLod_00d20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00d20B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureOffset_00q10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01c20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01c20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01c20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01c20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_10B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00g00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&uintBitsToFloat_10E),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&uintBitsToFloat_10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00t30B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_70B70B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01I20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01I20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01M00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01M00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureLod_00k30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureLod_00k30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01E20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00Y20B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00Y20B00B20D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&refract_00C00C00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&log2_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&log2_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&tanh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&tanh_10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01I20D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00h10B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00O20B00D),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_LocalInvocationID),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_LocalInvocationID),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(EXT_clip_cull_distance)>(
            &TableBase::m_gl_MaxCombinedClipAndCullDistancesEXT),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_00B00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_00B00B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00d10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryAtomicCounterBuffers),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00p10B00D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&clamp_10C10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01B10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&outerProduct_20B10B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&outerProduct_20B10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00t10B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isinf_20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00e30B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00e30B20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00J00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00J00D),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00Z20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&dot_10C10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01K20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01K20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01K20D00D),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00n30B10B10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01U20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01U20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01U20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01U20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01Q10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01Q10D00D),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DProjLodEXT_00I30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01T10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01T10D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01b20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&step_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&step_00B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_shader_texture_lod)>(
            &texture2DLodEXT_00I10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&texture_00K20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00K20B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGradOffset_00n30B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00J20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00J20B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01V20D00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01V20D00D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00U20B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00U20B10D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&intBitsToFloat_10D),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&intBitsToFloat_10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&min_20C20C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00Y30B00B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00Y30B00B20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01h00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01h00D00E),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&texture3D_00J20B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_texture_3D)>(&texture3D_00J20B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(EXT_blend_func_extended)>(
            &TableBase::m_gl_SecondaryFragDataEXT),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01X10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01X10D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&faceforward_20C20C20C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01O10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01X10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01X10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01W20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00n10B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01Z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00X10B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00X10B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01L00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01L00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01L00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01L00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01G20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureOffset_00a20B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00a20B10D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01X10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01X10D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00v10B10Dx4),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&texture2DProj_00I30B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&texture2DProj_00I30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00X10B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01I20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01I20D00E),
        Rule::Get<Spec::ESSL, 100, Shader::ALL, EXT_INDEX(EXT_shader_texture_lod)>(
            &textureCubeGradEXT_00K20B20B20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_00B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00o00B00B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(EXT_clip_cull_distance)>(
            &TableBase::m_gl_CullDistance),
        Rule::Get<Spec::ESSL, 300, Shader::VERTEX, EXT_INDEX(EXT_clip_cull_distance)>(
            &TableBase::m_gl_CullDistanceEXT),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01Q10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Q10D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_30C30C30F),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_30C30C30C),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_WorkGroupID),
        Rule::Get<Spec::GLSL, 0, Shader::COMPUTE, 0>(&BuiltInVariable::kgl_WorkGroupID),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&degrees_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&degrees_00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01J20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMax_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMaxExt_01J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01D20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01D20D00D),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00R10B10Dx4),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00R10B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00R10B10Dx4),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicExchange_00D00D),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicExchange_00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00m20B00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryAtomicCounters),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&textureOffset_00f30B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageStore_01c20D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01c20D30E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01a20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01a20D00E),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01a20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01a20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&matrixCompMult_60B60B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_00z10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_00z10D00D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00t30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00t10B00B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&unpackSnorm2x16_00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&unpackSnorm2x16_00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&lessThan_30D30D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&lessThan_30D30D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&atan_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&atan_00B00B),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00S20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notEqual_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notEqual_10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01G20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01G20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&trunc_30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&trunc_30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&trunc_30C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&length_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&length_00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&length_00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01H20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01H20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProj_00X30B00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00X30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01C20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01C20D00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&tan_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&tan_00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_20E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_20E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureLod_00x30B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureLod_00x30B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00j),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00j),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00n),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01F20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01F20D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00c),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &textureSizeExt_00c),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00b),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00b),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &textureSizeExt_00b),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&min_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&min_20B20B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00q),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00r),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00r),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00w),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00w),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00v),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_20E20E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_20E20E00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&TableBase::m_gl_MaxProgramTexelOffset),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxProgramTexelOffset),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureSize_00O),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01a20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01a20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01g00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01g00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&trunc_00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01a20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01a20D00D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00Q),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &textureSizeExt_00Q),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00P),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00P),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, EXT_INDEX(ANGLE_texture_multisample)>(
            &textureSizeExt_00P),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01M00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01K20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01K20D),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&textureSize_00W),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &textureSizeExt_00W),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLod_00X20B00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00X20B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_00C00C00C),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterAnd_00G00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&faceforward_30B30B30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&faceforward_30B30B30B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&distance_20C20C),
        Rule::Get<Spec::GLSL, 460, Shader::ALL, 0>(&atomicCounterAdd_00G00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01O10D30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00X10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00X10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ceil_00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&ceil_00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&ceil_00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&distance_00B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&distance_00B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetch_00O10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01C20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01C20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGrad_00s30B20B20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGrad_00s30B20B20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00I10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00I10B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01C20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01C20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_30D30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_30D30D),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01Z10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01Z10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_30E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_30E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGradOffset_00R10B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGradOffset_00R10B10B10B10D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&fwidth_30B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&fwidth_30B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(
            &fwidthExt_30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureGrad_00K20B20B20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00K20B20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetch_00S20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00S20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&max_10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&max_10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00R30B10B10B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00R30B10B10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_tessellation_shader)>(
            &TableBase::m_gl_MaxTessControlTextureImageUnits),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texelFetchOffset_00L20D00D10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00L20D00D10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&isnan_30C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_50B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_50B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThanEqual_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThanEqual_20D20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&asinh_00B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&asinh_00B),
        Rule::Get<Spec::ESSL, 310, Shader::GEOMETRY_EXT, EXT_INDEX(EXT_geometry_shader)>(
            &BuiltInVariable::kgl_PrimitiveIDIn),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00Z20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00Z20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureGrad_00p10B00B00B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjOffset_00v30B10D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&greaterThan_20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&greaterThan_20B20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_20D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_20D20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetchOffset_00g00D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01g00D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01g00D00E00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01W20D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01W20D00D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicMin_01W20D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicMinExt_01W20D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01O10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01O10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01O10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01O10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&tanh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&tanh_20B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProj_00m30B00B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&sin_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&sin_20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&smoothstep_00C00C30C),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureSize_00l00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureSize_00l00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLod_00o00B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00I10B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00I10B10D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_00z10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_00z10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_00z10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_00z10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01W20D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01W20D00D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxAtomicCounterBufferSize),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxAtomicCounterBufferSize),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureOffset_00J20B20D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureOffset_00J20B20D00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&lessThanEqual_20E20E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&lessThanEqual_20E20E),
        Rule::Get<Spec::ESSL, 300, Shader::VERTEX, EXT_INDEX(ANGLE_base_vertex_base_instance)>(
            &BuiltInVariable::kgl_BaseVertex),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00g00B00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00g30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryTotalOutputComponents),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldInsert_30E30E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldInsert_30E30E00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_20E00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_20E00D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&uintBitsToFloat_20E),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&uintBitsToFloat_20E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&unpackUnorm4x8_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&unpackUnorm4x8_00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01K20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01K20D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mod_10B10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mod_10B10B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01K20D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01K20D00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01B10D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexImageUniforms),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexImageUniforms),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&equal_20D20D),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&equal_20D20D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&mix_10E10E10F),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&mix_10E10E10F),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00R10B00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00R10B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureSize_00Z00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureSize_00Z00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&bitfieldExtract_30D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&bitfieldExtract_30D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01J20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01J20D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01J20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01J20D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&intBitsToFloat_00D),
        Rule::Get<Spec::GLSL, 330, Shader::ALL, 0>(&intBitsToFloat_00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00m20B00B00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findLSB_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findLSB_00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texelFetch_00p10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00d10B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00d10B00B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&shadow2DProj_00d30B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01T10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01T10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01T10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01T10D00D00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&inversesqrt_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&inversesqrt_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&inversesqrt_10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&abs_30D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&abs_30D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&transpose_D0B),
        Rule::Get<Spec::GLSL, 120, Shader::ALL, 0>(&transpose_D0B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&abs_30C),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&textureProjGrad_00O30B10B10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&imageLoad_01E20D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageLoad_01E20D),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(EXT_YUV_target)>(&textureProj_00N20B00B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, 0>(&TableBase::m_gl_FragData),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&TableBase::m_gl_FragData),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdxCoarse_20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&clamp_20E00E00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&clamp_20E00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00d30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00d30B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexOutputVectors),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexOutputVectors),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01i00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01i00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01i00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01i00D00E),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&shadow1D_00m20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureOffset_00u10B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&cosh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&cosh_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&sign_10C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01G20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01G20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAnd_01G20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAndExt_01G20D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sign_10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sign_10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&umulExtended_00E00E00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&umulExtended_00E00E00E00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAttribs),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&TableBase::m_gl_MaxVertexAttribs),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00a20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00a20B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01g00D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01g00D00B),
        Rule::Get<Spec::GLSL, 450, Shader::ALL, 0>(&imageAtomicExchange_01B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01B10D00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&ldexp_10B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&ldexp_10B10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicExchange_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicExchangeExt_01B10D00E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00g30B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00Z20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00Z20B),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&degrees_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&degrees_10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&texture_00k30B00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&texture_00K20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00K20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&sinh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&sinh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00m20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01C20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01C20D00D),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00I10B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00I10B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00I10B10Dx400D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&notFunc_30F),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&notFunc_30F),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjLodOffset_00I20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00I20B00B10D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00K20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00K20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00R10B10D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00R10B10D),
        Rule::Get<Spec::ESSL, 310, Shader::COMPUTE, 0>(&memoryBarrierShared_),
        Rule::Get<Spec::GLSL, 430, Shader::COMPUTE, 0>(&memoryBarrierShared_),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&clamp_20B20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&clamp_20B20B20B),
        Rule::Get<Spec::GLSL, 150, Shader::ALL, 0>(&texelFetch_00W20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_texture_storage_multisample_2d_array)>(
            &texelFetchExt_00W20D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLod_00g10B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&trunc_20C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&trunc_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&trunc_20B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&textureProjOffset_00I30B10D00B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&textureProjOffset_00I30B10D00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&max_00C00C),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&tan_10B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&tan_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&texture_00g00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureLodOffset_00L20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00L20B00B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureLodOffset_00u10B00B00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01B10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01B10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01B10D00E),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&isinf_20B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&isinf_20B),
        Rule::Get<Spec::GLSL, 450, Shader::FRAGMENT, 0>(&dFdyCoarse_10B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGatherOffset_00X10B10D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00X10B10D00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_10E10E),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_10E10E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&memoryBarrierImage_),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&memoryBarrierImage_),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&round_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&round_10B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&round_10C),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjLodOffset_00m30B00B00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00g10B00B00B00D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00R30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00R30B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&shadow1DProj_00m30B),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00f30B00B),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&fma_00B00B00B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&fma_00B00B00B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(&fmaExt_00B00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageStore_01X10D30B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01b20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01b20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01b20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01b20D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffset_00v10B10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&atomicMax_00E00E),
        Rule::Get<Spec::GLSL, 430, Shader::ALL, 0>(&atomicMax_00E00E),
        Rule::Get<Spec::GLSL, 400, Shader::FRAGMENT, 0>(&textureQueryLod_00t00B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjOffset_00R30B10D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjOffset_00R30B10D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProj_00X30B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProj_00X30B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&findMSB_00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&findMSB_00E),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&mix_20B20B20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&mix_20B20B20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01X10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01X10D00D00D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&frexp_30C30D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mix_10C10C10C),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&min_30D00D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&min_30D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicCompSwap_01K20D00E00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicCompSwapExt_01K20D00E00E),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, EXT_INDEX(OES_EGL_image_external_essl3)>(
            &texture_00M10B00B),
        Rule::Get<Spec::ESSL, 300, Shader::FRAGMENT, 0>(&fwidth_20B),
        Rule::Get<Spec::GLSL, 0, Shader::FRAGMENT, 0>(&fwidth_20B),
        Rule::Get<Spec::ESSL, 100, Shader::FRAGMENT, EXT_INDEX(OES_standard_derivatives)>(
            &fwidthExt_20B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01S10D00D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01S10D00D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01S10D00D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01S10D00D00E),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&mod_30C00C),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01A10D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01A10D00D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicAdd_01A10D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicAddExt_01A10D00E),
        Rule::Get<Spec::GLSL, 130, Shader::FRAGMENT, 0>(&texture_00o00B00B),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01H20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01H20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicOr_01H20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicOrExt_01H20D00D),
        Rule::Get<Spec::ESSL, 0, Shader::ALL, 0>(&cos_20B),
        Rule::Get<Spec::GLSL, 0, Shader::ALL, 0>(&cos_20B),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_geometry_shader)>(
            &TableBase::m_gl_MaxGeometryUniformComponents),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, 0>(&textureGather_00T20B),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGather_00T20B),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&textureProjGradOffset_00J30B20B20B20D),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&textureProjGradOffset_00J30B20B20B20D),
        Rule::Get<Spec::ESSL, 300, Shader::ALL, 0>(&asinh_10B),
        Rule::Get<Spec::GLSL, 130, Shader::ALL, 0>(&asinh_10B),
        Rule::Get<Spec::GLSL, 140, Shader::ALL, 0>(&texelFetchOffset_00v10D10D),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01E20D00E),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01E20D00E),
        Rule::Get<Spec::GLSL, 420, Shader::ALL, 0>(&imageAtomicXor_01E20D00D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(OES_shader_image_atomic)>(
            &imageAtomicXorExt_01E20D00D),
        Rule::Get<Spec::ESSL, 320, Shader::ALL, 0>(&textureGatherOffsets_00R10B10Dx400D),
        Rule::Get<Spec::GLSL, 400, Shader::ALL, 0>(&textureGatherOffsets_00R10B10Dx400D),
        Rule::Get<Spec::ESSL, 310, Shader::ALL, EXT_INDEX(EXT_gpu_shader5)>(
            &textureGatherOffsetsExt_00R10B10Dx400D)};
    
    // Flat array of all mangled names.
    constexpr const char *kMangledNames[] = {"textureProj(00R30B00B",
                                             "imageAtomicExchange(01g00D00E",
                                             "interpolateAtOffset(30B10B",
                                             "textureProjOffset(00g10B00D",
                                             "imageAtomicOr(00z10D00D",
                                             "texture2DProj(00I20B",
                                             "textureProjGradOffset(00v30B10B10B10D",
                                             "texelFetch(00o00D00D",
                                             "imageLoad(01g00D",
                                             "imageAtomicAdd(01S10D00D00E",
                                             "imageLoad(01I20D",
                                             "tanh(30B",
                                             "imageAtomicCompSwap(01E20D00D00D",
                                             "textureQueryLod(00m00B",
                                             "not(10F",
                                             "findMSB(20E",
                                             "lessThanEqual(30B30B",
                                             "imageAtomicAdd(00z10D00E",
                                             "textureLod(00t00B00B",
                                             "textureProjGradOffset(00O30B10B10B10D",
                                             "outerProduct(20B30B",
                                             "imageAtomicOr(00z10D00E",
                                             "imageSamples(01W",
                                             "imageSamples(01V",
                                             "imageSamples(01U",
                                             "imageSamples(01T",
                                             "imageSamples(01S",
                                             "mix(20B20B00B",
                                             "textureLodOffset(00o00B00B00D",
                                             "imageAtomicMin(01S10D00D00E",
                                             "uintBitsToFloat(30E",
                                             "imageAtomicExchange(01R10D00D00B",
                                             "textureSize(00K00D",
                                             "textureSize(00h00D",
                                             "gl_MaxAtomicCounterBindings",
                                             "texelFetchOffset(00q10D10D",
                                             "greaterThanEqual(10E10E",
                                             "texture(00d20B",
                                             "atan(10B10B",
                                             "clamp(30B30B30B",
                                             "imageAtomicCompSwap(01a20D00E00E",
                                             "imageAtomicCompSwap(01R10D00D00D00D",
                                             "textureLodOffset(00a20B00B10D",
                                             "greaterThanEqual(20B20B",
                                             "imageLoad(01F20D",
                                             "ceil(10C",
                                             "imageAtomicCompSwap(01b20D00D00D",
                                             "imageAtomicAnd(01A10D00D",
                                             "imageAtomicAdd(01D20D00E",
                                             "atomicAdd(00D00D",
                                             "textureSize(00p00D",
                                             "floatBitsToUint(20B",
                                             "textureProjOffset(00t30B00D00B",
                                             "mix(20D20D20F",
                                             "degrees(20B",
                                             "imageAtomicMin(01Y10D00D",
                                             "gl_MaxTessEvaluationTextureImageUnits",
                                             "imageAtomicXor(01R10D00D00D",
                                             "imageAtomicCompSwap(01D20D00D00D",
                                             "min(00C00C",
                                             "imageAtomicMax(01S10D00D00E",
                                             "inversesqrt(00C",
                                             "inversesqrt(00B",
                                             "texelFetchOffset(00J20D00D20D",
                                             "textureProjGrad(00S30B20B20B",
                                             "equal(10D10D",
                                             "max(30D00D",
                                             "groupMemoryBarrier(",
                                             "imageAtomicExchange(01b20D00B",
                                             "imageAtomicExchange(01b20D00E",
                                             "imageAtomicExchange(01b20D00D",
                                             "step(20C20C",
                                             "texelFetch(00I10D00D",
                                             "mod(00C00C",
                                             "transpose(E0B",
                                             "imageAtomicMin(01R10D00D00E",
                                             "imageAtomicMin(01R10D00D00D",
                                             "imageAtomicExchange(01i00D00E",
                                             "textureGather(00O20B",
                                             "textureProjOffset(00Y30B20D00B",
                                             "imageStore(01C20D30B",
                                             "modf(10B10B",
                                             "determinant(50B",
                                             "imageAtomicCompSwap(01J20D00E00E",
                                             "textureProj(00g10B00B",
                                             "lessThan(20B20B",
                                             "imageAtomicCompSwap(01W20D00D00E00E",
                                             "imageStore(01K20D30E",
                                             "gl_MaxFragmentInputVectors",
                                             "sign(20C",
                                             "cosh(20B",
                                             "sign(20D",
                                             "atanh(00B",
                                             "imageAtomicAnd(01V20D00D00E",
                                             "imageAtomicAnd(01V20D00D00D",
                                             "textureProj(00t10B",
                                             "texture(00p20B00B",
                                             "fma(10C10C10C",
                                             "imageAtomicXor(01Y10D00D",
                                             "imageAtomicXor(01Y10D00E",
                                             "imageAtomicAnd(01C20D00E",
                                             "textureOffset(00d20B10D00B",
                                             "textureOffset(00m20B00D",
                                             "imageAtomicAnd(01C20D00D",
                                             "lessThan(10E10E",
                                             "imageAtomicCompSwap(01A10D00D00D",
                                             "textureGrad(00X00B00B00B",
                                             "textureProjLodOffset(00t30B00B00D",
                                             "fma(30C30C30C",
                                             "textureGrad(00v10B10B10B",
                                             "textureProj(00N30B00B",
                                             "step(00C00C",
                                             "gl_MaxCombinedShaderOutputResources",
                                             "imageAtomicCompSwap(01T10D00D00D00D",
                                             "texture(00I10B00B",
                                             "texelFetch(00j00D",
                                             "lessThan(20D20D",
                                             "clamp(20C20C20C",
                                             "gl_MaxTessGenLevel",
                                             "imageAtomicXor(00z10D00E",
                                             "all(10F",
                                             "dFdyCoarse(00B",
                                             "isinf(30B",
                                             "textureGatherOffset(00a20B10D00D",
                                             "textureGatherOffset(00I10B10D",
                                             "textureProjOffset(00q30B10D",
                                             "textureOffset(00L20B10D",
                                             "lessThanEqual(30E30E",
                                             "min(10E00E",
                                             "imageAtomicXor(01a20D00E",
                                             "imageAtomicXor(01a20D00D",
                                             "textureProjOffset(00S30B20D",
                                             "round(00C",
                                             "round(00B",
                                             "gl_LastFragData",
                                             "greaterThan(30D30D",
                                             "texture(00U20B",
                                             "imageAtomicCompSwap(01P10D00E00E",
                                             "smoothstep(00C00C20C",
                                             "texture2DRect(00O10B",
                                             "imageLoad(01N00D",
                                             "noise2(20B",
                                             "step(20B20B",
                                             "imageAtomicAnd(01b20D00E",
                                             "findMSB(10E",
                                             "findMSB(10D",
                                             "interpolateAtOffset(00B10B",
                                             "texture(00t00B",
                                             "gl_SampleMaskIn",
                                             "textureLodOffset(00S20B00B20D",
                                             "textureQueryLod(00p00B",
                                             "imageStore(00z10D30B",
                                             "textureGatherOffsets(00X10B10Dx400D",
                                             "outerProduct(10B20B",
                                             "imageAtomicMax(01Z10D00E",
                                             "fwidthFine(10B",
                                             "cos(30B",
                                             "unpackHalf2x16(00E",
                                             "outerProduct(10B10B",
                                             "imageAtomicOr(01M00D00D",
                                             "gl_MaxComputeTextureImageUnits",
                                             "imageAtomicMax(01Y10D00E",
                                             "imageAtomicMax(01Y10D00D",
                                             "sin(30B",
                                             "imageAtomicAnd(01O10D00D",
                                             "textureGather(00L20B00D",
                                             "imageStore(01i00D30E",
                                             "imageStore(01A10D30D",
                                             "gl_MaxGeometryOutputVertices",
                                             "imageAtomicXor(01H20D00D",
                                             "imageAtomicXor(01H20D00E",
                                             "shadow1D(00m20B00B",
                                             "max(10E10E",
                                             "max(30B30B",
                                             "clamp(10E10E10E",
                                             "texture(00N10B",
                                             "textureProjGrad(00t30B00B00B",
                                             "imageAtomicOr(01E20D00D",
                                             "imageAtomicOr(01E20D00E",
                                             "texelFetchOffset(00a20D00D10D",
                                             "imageLoad(01V20D00D",
                                             "gl_PatchVerticesIn",
                                             "not(20F",
                                             "imageAtomicExchange(01F20D00D",
                                             "imageAtomicExchange(01F20D00B",
                                             "imageStore(01L00D30B",
                                             "outerProduct(20B20B",
                                             "imageAtomicXor(01D20D00D",
                                             "textureProjLodOffset(00R20B00B10D",
                                             "textureOffset(00p10B00D",
                                             "texture(00h20B",
                                             "textureProjGrad(00J30B20B20B",
                                             "imageAtomicOr(01R10D00D00E",
                                             "imageAtomicOr(01R10D00D00D",
                                             "textureProjOffset(00g10B00D00B",
                                             "gl_InvocationID",
                                             "imageAtomicAnd(01R10D00D00D",
                                             "imageAtomicAdd(01E20D00E",
                                             "radians(10B",
                                             "textureGatherOffset(00n10B00B10D",
                                             "noise2(10B",
                                             "textureQueryLod(00a10B",
                                             "textureGather(00e20B00B",
                                             "distance(10B10B",
                                             "textureGrad(00Z20B20B20B",
                                             "sign(00B",
                                             "bitfieldReverse(00D",
                                             "bitfieldReverse(00E",
                                             "bitfieldExtract(30E00D00D",
                                             "textureLod(00I10B00B",
                                             "greaterThanEqual(10D10D",
                                             "imageAtomicCompSwap(01I20D00E00E",
                                             "degrees(30B",
                                             "inversesqrt(30B",
                                             "inversesqrt(30C",
                                             "imageAtomicMin(01I20D00D",
                                             "textureGather(00v20B00D",
                                             "intBitsToFloat(20D",
                                             "exp(20B",
                                             "imageAtomicMax(01A10D00E",
                                             "imageAtomicMax(01A10D00D",
                                             "acosh(00B",
                                             "log(10B",
                                             "textureProjLodOffset(00S30B00B20D",
                                             "textureGather(00L20B",
                                             "textureProj(00n30B",
                                             "textureQueryLod(00i00B",
                                             "texture(00p20B",
                                             "outerProduct(30B20B",
                                             "texture(00S20B",
                                             "atomicXor(00D00D",
                                             "texelFetch(00Y20D00D",
                                             "imageAtomicOr(01P10D00D",
                                             "imageAtomicOr(01P10D00E",
                                             "bitfieldExtract(10D00D00D",
                                             "sign(30B",
                                             "sign(30C",
                                             "sign(30D",
                                             "texture(00Y20B00B",
                                             "gl_MaxTessEvaluationInputComponents",
                                             "dFdy(20B",
                                             "textureProj(00Y30B",
                                             "textureOffset(00X10B10D00B",
                                             "memoryBarrierBuffer(",
                                             "isinf(00B",
                                             "isinf(00C",
                                             "clamp(20D00D00D",
                                             "texture2DProj(00I20B00B",
                                             "mod(30B00B",
                                             "imageAtomicAnd(01A10D00E",
                                             "textureGather(00f20B00B",
                                             "textureProj(00m30B",
                                             "greaterThan(20E20E",
                                             "gl_MaxTessEvaluationAtomicCounters",
                                             "textureProjLod(00I30B00B",
                                             "refract(00B00B00B",
                                             "gl_MaxGeometryImageUniforms",
                                             "imageAtomicMin(01X10D00D",
                                             "imageAtomicMin(01X10D00E",
                                             "noise4(20B",
                                             "textureSize(00e00D",
                                             "imageStore(01N00D30E",
                                             "gl_NumWorkGroups",
                                             "texelFetch(00a20D00D",
                                             "step(00C10C",
                                             "frexp(30B30D",
                                             "imageAtomicMin(01Y10D00E",
                                             "texture(00t00B00B",
                                             "min(30C00C",
                                             "imageAtomicCompSwap(01X10D00E00E",
                                             "texture(00I10B",
                                             "gl_InstanceID",
                                             "normalize(20B",
                                             "normalize(20C",
                                             "imageAtomicCompSwap(01H20D00D00D",
                                             "inverse(F0B",
                                             "frexp(20C20D",
                                             "atan(00B",
                                             "textureGatherOffset(00R10B10D00D",
                                             "imageAtomicMin(01h00D00E",
                                             "imageAtomicMin(01h00D00D",
                                             "greaterThan(30E30E",
                                             "imageAtomicAdd(01N00D00D",
                                             "imageAtomicAdd(01N00D00E",
                                             "texelFetchOffset(00p10D00D00D",
                                             "imageAtomicAnd(01J20D00D",
                                             "imageAtomicAnd(01J20D00E",
                                             "gl_DepthRange",
                                             "imageAtomicMax(01S10D00D00D",
                                             "textureProj(00o30B",
                                             "imageAtomicAdd(01I20D00E",
                                             "bitfieldExtract(20D00D00D",
                                             "texture(00L20B00B",
                                             "imageAtomicOr(01L00D00E",
                                             "imageAtomicOr(01L00D00D",
                                             "mix(30D30D30F",
                                             "gl_MaxComputeUniformComponents",
                                             "imageLoad(01h00D",
                                             "imageAtomicCompSwap(01E20D00E00E",
                                             "textureProjOffset(00O30B10D",
                                             "floor(10B",
                                             "floor(10C",
                                             "imageAtomicMax(01R10D00D00E",
                                             "imageAtomicMax(01R10D00D00D",
                                             "textureProjLodOffset(00o10B00B00D",
                                             "textureGather(00x30B00D",
                                             "interpolateAtSample(10B00D",
                                             "imageAtomicMin(01F20D00E",
                                             "imageAtomicMin(01F20D00D",
                                             "outerProduct(10B30B",
                                             "texture(00k30B",
                                             "imageAtomicCompSwap(01O10D00E00E",
                                             "cos(00B",
                                             "imageAtomicXor(01F20D00E",
                                             "imageAtomicXor(01B10D00E",
                                             "frexp(00C00D",
                                             "atomicCounterCompSwap(00G00E00E",
                                             "textureOffset(00a20B10D00B",
                                             "imageAtomicCompSwap(01b20D00E00E",
                                             "textureGather(00X10B",
                                             "imageLoad(01T10D00D",
                                             "textureOffset(00R10B10D00B",
                                             "textureGatherOffset(00d10B00B10D",
                                             "gl_MaxFragmentImageUniforms",
                                             "textureSize(00i00D",
                                             "equal(20E20E",
                                             "uaddCarry(00E00E00E",
                                             "textureQueryLod(00T20B",
                                             "textureCube(00K20B",
                                             "imageAtomicMax(01U20D00D00E",
                                             "imageAtomicMax(01U20D00D00D",
                                             "imageAtomicAnd(01K20D00D",
                                             "matrixCompMult(90B90B",
                                             "textureGatherOffsets(00I10B10Dx4",
                                             "textureGradOffset(00p10B00B00B00D",
                                             "textureProjLodOffset(00g30B00B00D",
                                             "clamp(30E00E00E",
                                             "asin(00B",
                                             "textureProjOffset(00J30B20D00B",
                                             "texelFetch(00w00D",
                                             "notEqual(30E30E",
                                             "imageAtomicOr(01K20D00D",
                                             "imageAtomicOr(01K20D00E",
                                             "lessThanEqual(10E10E",
                                             "inversesqrt(20C",
                                             "inversesqrt(20B",
                                             "textureLod(00i20B00B",
                                             "textureOffset(00u10B00D00B",
                                             "reflect(00C00C",
                                             "atomicAdd(00E00E",
                                             "intBitsToFloat(30D",
                                             "textureProjGradOffset(00v20B10B10B10D",
                                             "textureGrad(00X10B10B10B",
                                             "greaterThanEqual(30E30E",
                                             "mix(20B20B20F",
                                             "imageAtomicExchange(01T10D00D00E",
                                             "imageAtomicExchange(01T10D00D00D",
                                             "gl_MaxVertexAtomicCounters",
                                             "textureProjOffset(00X20B10D",
                                             "any(10F",
                                             "textureProjGradOffset(00d30B10B10B10D",
                                             "imageLoad(01X10D",
                                             "textureProjOffset(00I30B10D",
                                             "textureOffset(00X10B10D",
                                             "texture(00R10B",
                                             "imageAtomicXor(01R10D00D00E",
                                             "imageStore(01M00D30D",
                                             "radians(00B",
                                             "textureGatherOffsets(00f20B00B10Dx4",
                                             "step(10B10B",
                                             "gl_MaxDualSourceDrawBuffersEXT",
                                             "imageAtomicAdd(01Y10D00D",
                                             "imageAtomicAdd(01Y10D00E",
                                             "bitfieldReverse(10E",
                                             "bitfieldReverse(10D",
                                             "imageStore(01g00D30B",
                                             "textureProjGradOffset(00q20B10B10B10D",
                                             "imageAtomicExchange(01S10D00D00E",
                                             "atomicXor(00E00E",
                                             "mix(00C00C00F",
                                             "textureLodOffset(00g00B00B00D",
                                             "greaterThan(30B30B",
                                             "gl_MaxFragmentAtomicCounters",
                                             "faceforward(20B20B20B",
                                             "textureSize(00x00D",
                                             "textureProj(00S30B00B",
                                             "fma(20B20B20B",
                                             "textureProjLod(00o10B00B",
                                             "imageAtomicMin(01J20D00E",
                                             "outerProduct(30B30B",
                                             "exp(30B",
                                             "bitCount(10E",
                                             "bitCount(10D",
                                             "log(00B",
                                             "mix(00F00F00F",
                                             "imageAtomicCompSwap(01M00D00D00D",
                                             "imageAtomicAdd(01Q10D00E",
                                             "acosh(30B",
                                             "imageAtomicOr(01Y10D00E",
                                             "imageAtomicOr(01Y10D00D",
                                             "textureGradOffset(00X10B10B10B10D",
                                             "texelFetchOffset(00X10D00D10D",
                                             "packUnorm2x16(10B",
                                             "texture(00h20B00B",
                                             "umulExtended(20E20E20E20E",
                                             "texture(00m20B00B",
                                             "textureProjGradOffset(00g30B00B00B00D",
                                             "textureProj(00o30B00B",
                                             "imageAtomicCompSwap(01T10D00D00E00E",
                                             "textureCubeLod(00K20B00B",
                                             "textureSize(00L00D",
                                             "imageAtomicXor(01L00D00E",
                                             "imageAtomicCompSwap(01Q10D00D00D",
                                             "max(20E00E",
                                             "textureProj(00S30B",
                                             "dFdy(30B",
                                             "isinf(10C",
                                             "isinf(10B",
                                             "gl_MaxVertexTextureImageUnits",
                                             "greaterThanEqual(30B30B",
                                             "texture2DProjLodEXT(00I20B00B",
                                             "gl_FrontFacing",
                                             "textureProjOffset(00t10B00D00B",
                                             "acos(10B",
                                             "textureCube(00K20B00B",
                                             "lessThan(10B10B",
                                             "imageAtomicCompSwap(01B10D00E00E",
                                             "gl_MaxComputeAtomicCounterBuffers",
                                             "textureSize(00f00D",
                                             "texelFetchOffset(00h10D00D00D",
                                             "mod(20C00C",
                                             "imageAtomicAnd(01g00D00D",
                                             "gl_LastFragColorARM",
                                             "gl_MaxTessControlTotalOutputComponents",
                                             "textureGatherOffsets(00q10B10Dx4",
                                             "lessThanEqual(20D20D",
                                             "textureQueryLod(00k20B",
                                             "imageAtomicAdd(01B10D00E",
                                             "textureProjLod(00Y30B00B",
                                             "gl_MaxTessEvaluationOutputComponents",
                                             "gl_SecondaryFragColorEXT",
                                             "imageAtomicAnd(01U20D00D00D",
                                             "imageAtomicAnd(01U20D00D00E",
                                             "gl_BaseInstance",
                                             "transpose(B0B",
                                             "imageAtomicXor(01b20D00E",
                                             "mix(20F20F20F",
                                             "smoothstep(00B00B30B",
                                             "imageAtomicExchange(01M00D00B",
                                             "imageAtomicExchange(01M00D00D",
                                             "imageAtomicExchange(01M00D00E",
                                             "textureQueryLod(00d10B",
                                             "texelFetch(00N10D00D",
                                             "textureSize(00a00D",
                                             "EmitStreamVertex(00D",
                                             "textureProjOffset(00Y30B20D",
                                             "bitCount(30E",
                                             "atan(30B",
                                             "imageAtomicMax(01b20D00E",
                                             "imageAtomicMax(01b20D00D",
                                             "ceil(10B",
                                             "textureSize(00S00D",
                                             "imageAtomicExchange(01S10D00D00B",
                                             "atomicCounterDecrement(00G",
                                             "ceil(30B",
                                             "imageAtomicAnd(01Q10D00D",
                                             "imageAtomicAnd(01Q10D00E",
                                             "imageAtomicAnd(01c20D00E",
                                             "imageAtomicAnd(01c20D00D",
                                             "textureSize(00t00D",
                                             "texture(00f30B",
                                             "imageSamples(01R",
                                             "texelFetch(00R10D00D",
                                             "sign(20B",
                                             "smoothstep(30B30B30B",
                                             "imageAtomicExchange(01T10D00D00B",
                                             "textureGrad(00R10B10B10B",
                                             "min(00D00D",
                                             "textureProj(00t10B00B",
                                             "shadow2DProjEXT(00d30B",
                                             "imageAtomicAdd(01V20D00D00E",
                                             "ldexp(20B20D",
                                             "greaterThanEqual(30D30D",
                                             "imageLoad(01D20D",
                                             "findLSB(10E",
                                             "texture(00Z20B00B",
                                             "imageAtomicXor(01S10D00D00E",
                                             "imageAtomicXor(01S10D00D00D",
                                             "cos(10B",
                                             "texelFetch(00v10D",
                                             "texture(00e30B",
                                             "textureSize(00T00D",
                                             "imageAtomicAnd(01g00D00E",
                                             "textureSize(00u00D",
                                             "textureProjGradOffset(00Y30B20B20B20D",
                                             "noise3(30B",
                                             "textureGrad(00T20B20B20B",
                                             "texture1DProj(00g10B00B",
                                             "textureProjOffset(00d30B10D00B",
                                             "imageAtomicMin(01B10D00D",
                                             "imageAtomicMin(01B10D00E",
                                             "imageAtomicXor(01U20D00D00D",
                                             "imageAtomicXor(01U20D00D00E",
                                             "imageAtomicAdd(01h00D00D",
                                             "imageAtomicAdd(01h00D00E",
                                             "matrixCompMult(50B50B",
                                             "equal(30B30B",
                                             "imageAtomicExchange(01E20D00B",
                                             "textureLod(00U20B00B",
                                             "imageAtomicXor(01I20D00E",
                                             "imageAtomicXor(01I20D00D",
                                             "textureOffset(00h10B00D",
                                             "textureLod(00p10B00B",
                                             "max(20C20C",
                                             "max(10B10B",
                                             "gl_PointSize",
                                             "imageAtomicCompSwap(01F20D00E00E",
                                             "asin(10B",
                                             "sinh(00B",
                                             "imageAtomicAdd(01g00D00D",
                                             "imageAtomicCompSwap(01h00D00E00E",
                                             "textureOffset(00S20B20D",
                                             "fma(20C20C20C",
                                             "textureProj(00R20B",
                                             "greaterThan(10E10E",
                                             "imageAtomicAnd(01M00D00E",
                                             "imageAtomicAdd(01B10D00D",
                                             "imageAtomicAnd(01M00D00D",
                                             "textureGatherOffsets(00n10B00B10Dx4",
                                             "EmitVertex(",
                                             "smoothstep(20B20B20B",
                                             "textureSamples(00b",
                                             "textureOffset(00J20B20D",
                                             "texelFetch(00J20D00D",
                                             "imageAtomicExchange(01V20D00D00E",
                                             "imageAtomicExchange(01V20D00D00B",
                                             "imageAtomicCompSwap(01Y10D00E00E",
                                             "gl_ViewID_OVR",
                                             "radians(30B",
                                             "fract(30B",
                                             "imageAtomicMin(01H20D00E",
                                             "uaddCarry(20E20E20E",
                                             "textureProjGrad(00X30B10B10B",
                                             "textureSamples(00P",
                                             "textureProjOffset(00v20B10D",
                                             "shadow2D(00d20B00B",
                                             "texelFetchOffset(00o00D00D00D",
                                             "textureSamples(00V",
                                             "textureSamples(00W",
                                             "textureProjGrad(00q30B10B10B",
                                             "textureGatherOffset(00O10B10D",
                                             "clamp(10D00D00D",
                                             "gl_MaxComputeImageUniforms",
                                             "textureLod(00L20B00B",
                                             "imageAtomicExchange(01A10D00B",
                                             "imageAtomicCompSwap(01V20D00D00D00D",
                                             "imageAtomicExchange(01A10D00E",
                                             "imageAtomicExchange(01A10D00D",
                                             "imageAtomicXor(01b20D00D",
                                             "texture(00n20B",
                                             "ldexp(20C20D",
                                             "clamp(00E00E00E",
                                             "length(20B",
                                             "ldexp(00B00D",
                                             "bitfieldInsert(00D00D00D00D",
                                             "textureProjGrad(00Y30B20B20B",
                                             "imageAtomicAdd(01W20D00D00E",
                                             "roundEven(30B",
                                             "roundEven(30C",
                                             "acosh(20B",
                                             "atanh(10B",
                                             "length(20C",
                                             "clamp(10B10B10B",
                                             "textureGatherOffset(00L20B10D00D",
                                             "bitCount(00D",
                                             "bitCount(00E",
                                             "gl_SamplePosition",
                                             "floatBitsToInt(30B",
                                             "max(20B00B",
                                             "imageAtomicAdd(00z10D00D",
                                             "texelFetchOffset(00Y20D00D20D",
                                             "atomicExchange(00E00E",
                                             "imageAtomicXor(01h00D00D",
                                             "imageAtomicXor(01h00D00E",
                                             "ldexp(30C30D",
                                             "texture(00o00B",
                                             "texture(00x30B00B",
                                             "lessThanEqual(20B20B",
                                             "min(10B00B",
                                             "textureQueryLod(00f10B",
                                             "gl_MaxTessPatchComponents",
                                             "smoothstep(10C10C10C",
                                             "imageAtomicAnd(01L00D00D",
                                             "imageAtomicAnd(01L00D00E",
                                             "mix(30F30F30F",
                                             "imageAtomicMax(01T10D00D00E",
                                             "imageAtomicMax(01T10D00D00D",
                                             "textureGatherOffsets(00O10B10Dx400D",
                                             "abs(20D",
                                             "abs(20C",
                                             "abs(20B",
                                             "lessThanEqual(10B10B",
                                             "min(30E30E",
                                             "imageAtomicOr(01a20D00D",
                                             "mix(00B00B00B",
                                             "mix(00B00B00F",
                                             "textureGather(00s30B00D",
                                             "textureProj(00I20B",
                                             "textureLodOffset(00p10B00B00D",
                                             "gl_MaxVertexAtomicCounterBuffers",
                                             "unpackDouble2x32(00C",
                                             "acos(00B",
                                             "textureGradOffset(00J20B20B20B20D",
                                             "fma(00C00C00C",
                                             "texture2DGradEXT(00I10B10B10B",
                                             "imageAtomicCompSwap(01G20D00D00D",
                                             "imageAtomicAnd(01I20D00D",
                                             "texture2DProjGradEXT(00I30B10B10B",
                                             "fma(30B30B30B",
                                             "imageAtomicAdd(01L00D00D",
                                             "texture(00i20B00B",
                                             "gl_MaxComputeWorkGroupCount",
                                             "clamp(20C00C00C",
                                             "imageAtomicMax(01X10D00E",
                                             "imageLoad(01i00D",
                                             "mix(30E30E30F",
                                             "gl_FragColor",
                                             "imageAtomicMin(01G20D00D",
                                             "imageAtomicMin(01G20D00E",
                                             "imageAtomicExchange(01S10D00D00D",
                                             "atan(20B",
                                             "interpolateAtSample(30B00D",
                                             "dFdxCoarse(30B",
                                             "texture(00M10B",
                                             "gl_PerVertex",
                                             "min(10B10B",
                                             "textureLodOffset(00h10B00B00D",
                                             "EndStreamPrimitive(00D",
                                             "pow(10B10B",
                                             "texture(00Y20B",
                                             "imageAtomicXor(01P10D00D",
                                             "texture(00X10B00B",
                                             "frexp(00B00D",
                                             "gl_MaxTessControlOutputComponents",
                                             "texture2D(00I10B",
                                             "imageLoad(01O10D",
                                             "ceil(20C",
                                             "ceil(20B",
                                             "imageAtomicMin(01b20D00E",
                                             "imageAtomicMin(01b20D00D",
                                             "imageAtomicMax(01P10D00D",
                                             "imageAtomicMax(01P10D00E",
                                             "imageAtomicExchange(01P10D00B",
                                             "textureProjOffset(00R20B10D",
                                             "imageStore(01V20D00D30D",
                                             "subpassLoad(01m00D",
                                             "textureOffset(00I10B10D",
                                             "min(20B00B",
                                             "reflect(00B00B",
                                             "noise4(10B",
                                             "sqrt(10C",
                                             "sqrt(10B",
                                             "clamp(20E20E20E",
                                             "textureGradOffset(00g00B00B00B00D",
                                             "textureGather(00q20B",
                                             "noise3(00B",
                                             "imageAtomicOr(01G20D00D",
                                             "imageAtomicOr(01G20D00E",
                                             "imageAtomicMin(01C20D00D",
                                             "imageAtomicMin(01C20D00E",
                                             "gl_TessCoord",
                                             "gl_MaxPatchVertices",
                                             "imageAtomicAnd(01F20D00E",
                                             "imageStore(01a20D30B",
                                             "textureProjLod(00d30B00B",
                                             "imageLoad(01H20D",
                                             "textureProjGradOffset(00I20B10B10B10D",
                                             "interpolateAtSample(20B00D",
                                             "reflect(10B10B",
                                             "refract(10B10B00B",
                                             "imageAtomicMax(01h00D00D",
                                             "mix(20C20C20F",
                                             "imageAtomicExchange(01X10D00D",
                                             "imageAtomicExchange(01X10D00E",
                                             "mix(20C20C20C",
                                             "textureOffset(00v10B10D",
                                             "imageAtomicExchange(01Q10D00E",
                                             "imageAtomicExchange(01Q10D00D",
                                             "imageAtomicMin(01P10D00D",
                                             "sinh(30B",
                                             "textureSize(00m00D",
                                             "imageAtomicMin(01N00D00E",
                                             "imageAtomicMin(01N00D00D",
                                             "textureQueryLod(00e20B",
                                             "asinh(20B",
                                             "imageAtomicAdd(01C20D00D",
                                             "imageAtomicCompSwap(01I20D00D00D",
                                             "textureProj(00O20B",
                                             "imageAtomicCompSwap(01M00D00E00E",
                                             "frexp(10B10D",
                                             "inverse(50B",
                                             "dot(10B10B",
                                             "gl_TessLevelOuter",
                                             "noise2(00B",
                                             "textureProjGradOffset(00o10B00B00B00D",
                                             "radians(20B",
                                             "atomicCompSwap(00E00E00E",
                                             "textureGrad(00I00B00B00B",
                                             "textureGrad(00Y20B20B20B",
                                             "imageAtomicCompSwap(01Z10D00D00D",
                                             "gl_MaxVertexUniformVectors",
                                             "imageAtomicExchange(01W20D00D00B",
                                             "textureOffset(00o00B00D00B",
                                             "imageAtomicExchange(01W20D00D00E",
                                             "imageAtomicExchange(01W20D00D00D",
                                             "ftransform(",
                                             "textureProj(00X20B",
                                             "textureProjOffset(00n30B10D",
                                             "imageAtomicOr(01W20D00D00E",
                                             "imageAtomicOr(01W20D00D00D",
                                             "greaterThanEqual(20E20E",
                                             "gl_NumSamples",
                                             "textureProj(00M20B",
                                             "texture3DProjLod(00J30B00B",
                                             "isinf(30C",
                                             "imageAtomicAdd(01Z10D00E",
                                             "imageAtomicAdd(01Z10D00D",
                                             "mix(10D10D10F",
                                             "textureProjGrad(00g10B00B00B",
                                             "log(20B",
                                             "imageAtomicMax(01D20D00E",
                                             "imageAtomicMax(01D20D00D",
                                             "textureOffset(00h10B00D00B",
                                             "modf(30B30B",
                                             "roundEven(20C",
                                             "roundEven(20B",
                                             "outerProduct(30B10B",
                                             "textureProj(00J30B",
                                             "imageAtomicOr(01F20D00E",
                                             "imageAtomicOr(01F20D00D",
                                             "textureLodOffset(00t00B00B00D",
                                             "floatBitsToInt(20B",
                                             "texelFetch(00U20D00D",
                                             "max(00D00D",
                                             "round(20C",
                                             "atomicMin(00E00E",
                                             "textureGradOffset(00v10B10B10B10D",
                                             "textureGrad(00n20B10B10B",
                                             "imageLoad(01S10D00D",
                                             "shadow2DEXT(00d20B",
                                             "textureGatherOffsets(00a20B10Dx4",
                                             "max(20E20E",
                                             "gl_MaxCullDistances",
                                             "imageAtomicCompSwap(01F20D00D00D",
                                             "abs(10D",
                                             "abs(10B",
                                             "abs(10C",
                                             "gl_FragDepthEXT",
                                             "imageAtomicAdd(01V20D00D00D",
                                             "gl_ClipDistance",
                                             "modf(30C30C",
                                             "imageAtomicMin(01T10D00D00E",
                                             "imageAtomicMin(01T10D00D00D",
                                             "textureGrad(00i20B00B00B",
                                             "textureProj(00g10B",
                                             "equal(20B20B",
                                             "textureProjLodOffset(00X20B00B10D",
                                             "max(30C00C",
                                             "gl_MaxTessEvaluationImageUniforms",
                                             "texture(00U20B00B",
                                             "textureProj(00I30B",
                                             "mix(00E00E00F",
                                             "imageAtomicCompSwap(01h00D00D00D",
                                             "mix(00D00D00F",
                                             "textureProjOffset(00q20B10D",
                                             "texture(00i20B",
                                             "textureGradOffset(00a20B10B10B10D",
                                             "smoothstep(00B00B20B",
                                             "textureLod(00s30B00B",
                                             "imageAtomicOr(01C20D00D",
                                             "imageAtomicOr(01C20D00E",
                                             "imageAtomicXor(01g00D00E",
                                             "notEqual(30B30B",
                                             "textureGatherOffset(00f20B00B10D",
                                             "imageAtomicAnd(01N00D00D",
                                             "imageAtomicAnd(01N00D00E",
                                             "imageSize(00z",
                                             "mod(10C10C",
                                             "imageAtomicXor(01g00D00D",
                                             "faceforward(00C00C00C",
                                             "textureGrad(00a20B10B10B",
                                             "dFdxCoarse(00B",
                                             "imageAtomicMin(01a20D00D",
                                             "texture(00J20B00B",
                                             "refract(20B20B00B",
                                             "ceil(30C",
                                             "gl_MaxGeometryOutputComponents",
                                             "noise1(30B",
                                             "gl_MaxTessControlAtomicCounters",
                                             "log2(30B",
                                             "gl_MaxTessControlImageUniforms",
                                             "textureProjGrad(00d30B10B10B",
                                             "mod(20C20C",
                                             "fract(30C",
                                             "texelFetch(00t00D00D",
                                             "imageAtomicXor(01L00D00D",
                                             "max(30E30E",
                                             "gl_MaxFragmentAtomicCounterBuffers",
                                             "gl_in",
                                             "noise4(00B",
                                             "distance(10C10C",
                                             "textureProjLodOffset(00J30B00B20D",
                                             "imageAtomicExchange(01O10D00B",
                                             "imageAtomicMax(01H20D00E",
                                             "imageAtomicMax(01H20D00D",
                                             "imageStore(01h00D30D",
                                             "imageAtomicExchange(01O10D00D",
                                             "texelFetch(00c20D00D",
                                             "sqrt(00B",
                                             "sqrt(00C",
                                             "textureProjLod(00R30B00B",
                                             "noise3(10B",
                                             "texelFetch(00q10D",
                                             "imageAtomicAnd(01F20D00D",
                                             "textureLod(00m20B00B",
                                             "textureProjOffset(00m30B00D00B",
                                             "textureProjGrad(00v30B10B10B",
                                             "clamp(20D20D20D",
                                             "imageAtomicMin(01P10D00E",
                                             "imageAtomicAdd(01C20D00E",
                                             "clamp(00C00C00C",
                                             "imageAtomicXor(01N00D00D",
                                             "imageAtomicXor(01N00D00E",
                                             "texture(00x30B",
                                             "max(10E00E",
                                             "imageLoad(01c20D",
                                             "textureGrad(00U20B10B10B",
                                             "imageLoad(00z10D",
                                             "clamp(30C00C00C",
                                             "textureGatherOffsets(00a20B10Dx400D",
                                             "sinh(20B",
                                             "matrixCompMult(E0BE0B",
                                             "fwidthFine(00B",
                                             "gl_MaxTessEvaluationAtomicCounterBuffers",
                                             "textureGradOffset(00m20B00B00B00D",
                                             "imageAtomicMin(01K20D00E",
                                             "textureQueryLevels(00p",
                                             "gl_WorkGroupSize",
                                             "asinh(30B",
                                             "cross(20C20C",
                                             "textureGather(00a20B",
                                             "textureProjGradOffset(00O20B10B10B10D",
                                             "pow(30B30B",
                                             "imageAtomicCompSwap(01G20D00E00E",
                                             "smoothstep(10B10B10B",
                                             "textureProj(00O30B",
                                             "textureQueryLod(00R10B",
                                             "imageAtomicAdd(01R10D00D00D",
                                             "imageAtomicAdd(01R10D00D00E",
                                             "imageAtomicExchange(01E20D00D",
                                             "imageAtomicMin(01Q10D00E",
                                             "imageAtomicMin(01Q10D00D",
                                             "imageAtomicExchange(01E20D00E",
                                             "isnan(00B",
                                             "isnan(00C",
                                             "imulExtended(10D10D10D10D",
                                             "textureProjGrad(00o10B00B00B",
                                             "imageAtomicMax(01i00D00D",
                                             "imageAtomicMax(01i00D00E",
                                             "refract(10C10C00B",
                                             "min(00E00E",
                                             "imageStore(01T10D00D30E",
                                             "texture2DProj(00I30B",
                                             "textureGradOffset(00I10B10B10B10D",
                                             "textureLodOffset(00J20B00B20D",
                                             "notEqual(20B20B",
                                             "atomicCompSwap(00D00D00D",
                                             "",
                                             "textureOffset(00i20B00D",
                                             "dFdyFine(00B",
                                             "textureLod(00a20B00B",
                                             "textureProj(00N30B",
                                             "refract(30C30C00B",
                                             "equal(30D30D",
                                             "imageStore(01D20D30D",
                                             "packSnorm2x16(10B",
                                             "floatBitsToUint(30B",
                                             "textureOffset(00R10B10D",
                                             "textureProjGrad(00q20B10B10B",
                                             "textureProjGradOffset(00R20B10B10B10D",
                                             "ldexp(30B30D",
                                             "max(30B00B",
                                             "atomicCounterOr(00G00E",
                                             "imageAtomicMin(01i00D00E",
                                             "gl_TessLevelInner",
                                             "step(30B30B",
                                             "textureProj(00I30B00B",
                                             "imageAtomicExchange(01D20D00E",
                                             "textureOffset(00g00B00D00B",
                                             "imageAtomicExchange(01D20D00B",
                                             "imageAtomicMin(01g00D00E",
                                             "imageAtomicMax(01c20D00D",
                                             "abs(00D",
                                             "abs(00C",
                                             "abs(00B",
                                             "textureLod(00R10B00B",
                                             "dFdxCoarse(10B",
                                             "texture1D(00g00B",
                                             "frexp(10C10D",
                                             "imageAtomicAdd(01g00D00E",
                                             "texture2DLod(00I10B00B",
                                             "textureProjGradOffset(00X20B10B10B10D",
                                             "imageAtomicMax(01Z10D00D",
                                             "gl_MaxComputeAtomicCounters",
                                             "texture(00s30B",
                                             "EndPrimitive(",
                                             "step(00B30B",
                                             "round(20B",
                                             "equal(30E30E",
                                             "imageAtomicCompSwap(01R10D00D00E00E",
                                             "imageAtomicAdd(01M00D00D",
                                             "step(00C20C",
                                             "dot(00C00C",
                                             "max(30C30C",
                                             "atomicOr(00D00D",
                                             "texture2DProj(00M20B",
                                             "notEqual(10D10D",
                                             "imageAtomicExchange(01Z10D00D",
                                             "textureSize(00V",
                                             "imageAtomicAnd(01h00D00D",
                                             "min(20C00C",
                                             "imageAtomicAdd(01G20D00E",
                                             "imageAtomicAdd(01G20D00D",
                                             "findLSB(30D",
                                             "findLSB(30E",
                                             "textureProj(00X20B00B",
                                             "shadow2D(00d20B",
                                             "textureGatherOffset(00U20B10D",
                                             "imageAtomicExchange(01Z10D00E",
                                             "faceforward(10B10B10B",
                                             "gl_MaxTessControlAtomicCounterBuffers",
                                             "imageAtomicAnd(01h00D00E",
                                             "min(10D00D",
                                             "imageAtomicCompSwap(01J20D00D00D",
                                             "all(20F",
                                             "imageSize(01J",
                                             "imageSize(01K",
                                             "textureOffset(00t00B00D00B",
                                             "imageSize(01I",
                                             "packHalf2x16(10B",
                                             "textureProj(00I20B00B",
                                             "imageSize(01L",
                                             "imageSize(01M",
                                             "imageSize(01B",
                                             "imageSize(01C",
                                             "texelFetch(00r00D",
                                             "imageSize(01F",
                                             "imageSize(01G",
                                             "imageSize(01D",
                                             "imageSize(01E",
                                             "imageAtomicExchange(01L00D00B",
                                             "imageAtomicExchange(01L00D00E",
                                             "texelFetch(00X10D00D",
                                             "notEqual(30F30F",
                                             "imageSize(01R",
                                             "imageSize(01S",
                                             "imageSize(01P",
                                             "imageSize(01Q",
                                             "imageSize(01V",
                                             "textureQueryLod(00g00B",
                                             "imageSize(01T",
                                             "imageSize(01U",
                                             "imageSize(01h",
                                             "imageSize(01i",
                                             "fract(20C",
                                             "fract(20B",
                                             "textureGatherOffset(00X10B10D",
                                             "imageSize(01c",
                                             "imageStore(01R10D00D30B",
                                             "imageSize(01a",
                                             "imageSize(01f",
                                             "texture2DProjGradEXT(00I20B10B10B",
                                             "imageSize(01d",
                                             "textureLod(00S20B00B",
                                             "step(30C30C",
                                             "imageAtomicMin(01J20D00D",
                                             "gl_FragDepth",
                                             "textureGather(00x30B",
                                             "mix(30B30B30F",
                                             "mix(30B30B30B",
                                             "textureGather(00Z20B00D",
                                             "imageAtomicAnd(01Z10D00E",
                                             "imageAtomicAnd(01Z10D00D",
                                             "imageStore(01E20D30E",
                                             "sqrt(30C",
                                             "sqrt(30B",
                                             "exp(00B",
                                             "max(30D30D",
                                             "gl_MaxGeometryTextureImageUnits",
                                             "interpolateAtCentroid(10B",
                                             "texture(00q10B",
                                             "textureSize(00M00D",
                                             "textureSamples(00c",
                                             "angle_BaseInstance",
                                             "mix(10F10F10F",
                                             "textureGradOffset(00U20B10B10B10D",
                                             "gl_Position",
                                             "textureGradOffset(00O10B10B10B10D",
                                             "textureProj(00M30B",
                                             "textureGradOffset(00L20B10B10B10D",
                                             "imageAtomicExchange(01V20D00D00D",
                                             "imageAtomicExchange(01J20D00B",
                                             "imageAtomicExchange(01J20D00E",
                                             "imageAtomicExchange(01J20D00D",
                                             "textureQueryLod(00l20B",
                                             "imageAtomicOr(01M00D00E",
                                             "dot(20B20B",
                                             "textureProjGrad(00v20B10B10B",
                                             "textureProjLod(00S30B00B",
                                             "textureProjGrad(00R20B10B10B",
                                             "imageAtomicAnd(01i00D00E",
                                             "imageAtomicAnd(01i00D00D",
                                             "imageAtomicMax(00z10D00E",
                                             "imageAtomicMax(00z10D00D",
                                             "normalize(30C",
                                             "normalize(30B",
                                             "textureOffset(00O10B10D",
                                             "textureProjGrad(00I20B10B10B",
                                             "textureGather(00e20B",
                                             "imageAtomicMax(01V20D00D00E",
                                             "texture2D(00M10B",
                                             "imageAtomicAdd(01a20D00E",
                                             "fwidthFine(30B",
                                             "textureGather(00K20B00D",
                                             "textureCubeLodEXT(00K20B00B",
                                             "textureGather(00T20B00D",
                                             "textureProj(00N20B",
                                             "textureQueryLod(00I10B",
                                             "imageAtomicCompSwap(01A10D00E00E",
                                             "dFdyFine(10B",
                                             "modf(10C10C",
                                             "imageAtomicMax(01E20D00D",
                                             "imageAtomicMax(01E20D00E",
                                             "textureProjLodOffset(00X30B00B10D",
                                             "imageStore(01W20D00D30E",
                                             "gl_MaxSamples",
                                             "textureProjLod(00m30B00B",
                                             "textureProjOffset(00g30B00D00B",
                                             "texelFetchOffset(00U20D00D10D",
                                             "imageAtomicCompSwap(00z10D00E00E",
                                             "imageAtomicMin(01D20D00E",
                                             "textureProjGradOffset(00q30B10B10B10D",
                                             "textureGradOffset(00d20B10B10B10D",
                                             "fwidthCoarse(20B",
                                             "imageAtomicCompSwap(01N00D00E00E",
                                             "textureProjOffset(00d30B10D",
                                             "imageAtomicOr(01T10D00D00E",
                                             "imageAtomicOr(01T10D00D00D",
                                             "equal(20F20F",
                                             "mix(20C20C00C",
                                             "usubBorrow(10E10E10E",
                                             "equal(10B10B",
                                             "textureLodOffset(00U20B00B10D",
                                             "isnan(10C",
                                             "isnan(10B",
                                             "imageAtomicMin(01H20D00D",
                                             "imageAtomicXor(01A10D00D",
                                             "imageAtomicXor(01A10D00E",
                                             "imageAtomicCompSwap(01C20D00D00D",
                                             "textureGrad(00R00B00B00B",
                                             "atomicMin(00D00D",
                                             "textureSize(00X00D",
                                             "greaterThan(10B10B",
                                             "mix(00C00C00C",
                                             "noise1(20B",
                                             "clamp(30D00D00D",
                                             "mix(20E20E20F",
                                             "floatBitsToInt(10B",
                                             "textureProjOffset(00R30B10D00B",
                                             "textureGather(00U20B00D",
                                             "floatBitsToInt(00B",
                                             "imageLoad(01a20D",
                                             "floatBitsToUint(00B",
                                             "min(30C30C",
                                             "textureSamples(00Q",
                                             "textureGradOffset(00i20B00B00B00D",
                                             "imageAtomicXor(00z10D00D",
                                             "texture2DRectProj(00O20B",
                                             "modf(20C20C",
                                             "tan(20B",
                                             "floor(00C",
                                             "floor(00B",
                                             "imageAtomicMax(01O10D00E",
                                             "imageAtomicMax(01O10D00D",
                                             "mod(30C30C",
                                             "gl_DrawID",
                                             "textureOffset(00t00B00D",
                                             "texture3DLod(00J20B00B",
                                             "imageLoad(01Q10D",
                                             "texture(00R10B00B",
                                             "imageStore(01Y10D30D",
                                             "modf(00B00B",
                                             "notEqual(20D20D",
                                             "imageAtomicExchange(01R10D00D00E",
                                             "imageAtomicExchange(01R10D00D00D",
                                             "ldexp(10C10D",
                                             "imageAtomicExchange(01F20D00E",
                                             "determinant(A0B",
                                             "imageAtomicExchange(01i00D00D",
                                             "textureLodOffset(00i20B00B00D",
                                             "imageAtomicExchange(01i00D00B",
                                             "shadow1DLod(00m20B00B",
                                             "imageAtomicOr(01I20D00E",
                                             "distance(00C00C",
                                             "isnan(30B",
                                             "textureProjOffset(00o30B00D",
                                             "lessThanEqual(30D30D",
                                             "textureProj(00M30B00B",
                                             "texture2DProj(00M30B",
                                             "atomicCounterMax(00G00E",
                                             "atomicCounterExchange(00G00E",
                                             "textureGrad(00I10B10B10B",
                                             "step(00B20B",
                                             "texture2DProjLod(00I20B00B",
                                             "step(00C30C",
                                             "yuv_2_rgb(20B00H",
                                             "texelFetch(00b10D00D",
                                             "textureProj(00J30B00B",
                                             "textureGather(00R10B",
                                             "imageAtomicCompSwap(01c20D00D00D",
                                             "imageAtomicOr(01V20D00D00D",
                                             "imageAtomicOr(01V20D00D00E",
                                             "imageAtomicExchange(01P10D00D",
                                             "imageLoad(01L00D",
                                             "min(10D10D",
                                             "all(30F",
                                             "imageAtomicExchange(01P10D00E",
                                             "imageAtomicAnd(01S10D00D00E",
                                             "imageAtomicAnd(01S10D00D00D",
                                             "angle_BaseVertex",
                                             "bitfieldReverse(20D",
                                             "bitfieldReverse(20E",
                                             "imageAtomicExchange(01I20D00D",
                                             "imageAtomicExchange(01I20D00E",
                                             "imageAtomicExchange(01I20D00B",
                                             "imageAtomicExchange(01c20D00E",
                                             "gl_MaxGeometryInputComponents",
                                             "textureGatherOffsets(00X10B10Dx4",
                                             "texture(00u20B",
                                             "textureGather(00v20B",
                                             "fract(10B",
                                             "fract(10C",
                                             "textureGatherOffset(00O10B10D00D",
                                             "textureQueryLod(00K20B",
                                             "textureLodOffset(00I10B00B10D",
                                             "imageAtomicCompSwap(01S10D00D00E00E",
                                             "imageAtomicXor(01c20D00E",
                                             "imageAtomicXor(01c20D00D",
                                             "textureOffset(00U20B10D",
                                             "min(30B00B",
                                             "atomicAnd(00D00D",
                                             "exp(10B",
                                             "textureOffset(00n20B10D",
                                             "bitCount(30D",
                                             "unpackUnorm2x16(00E",
                                             "sqrt(20B",
                                             "sqrt(20C",
                                             "textureGrad(00L20B10B10B",
                                             "interpolateAtCentroid(00B",
                                             "textureSize(00o00D",
                                             "gl_MaxTessEvaluationUniformComponents",
                                             "gl_MaxImageUnits",
                                             "textureProjGrad(00o30B00B00B",
                                             "imageAtomicOr(01Q10D00D",
                                             "packUnorm4x8(30B",
                                             "imageAtomicMax(01Q10D00E",
                                             "texelFetch(00P10D00D",
                                             "imageAtomicCompSwap(01i00D00D00D",
                                             "textureGatherOffsets(00d10B00B10Dx4",
                                             "texture(00O10B",
                                             "imageAtomicMin(01M00D00D",
                                             "imageAtomicMin(01M00D00E",
                                             "texture(00e30B00B",
                                             "imageAtomicMin(01O10D00E",
                                             "imageAtomicMin(01O10D00D",
                                             "gl_FragCoord",
                                             "imageAtomicMax(01Q10D00D",
                                             "imageAtomicMax(01X10D00D",
                                             "textureGrad(00u10B00B00B",
                                             "fwidthFine(20B",
                                             "textureQueryLod(00o00B",
                                             "imageAtomicAnd(01E20D00E",
                                             "imageAtomicAnd(01E20D00D",
                                             "normalize(00B",
                                             "normalize(00C",
                                             "clamp(10C00C00C",
                                             "imageAtomicOr(01A10D00E",
                                             "imageAtomicOr(01A10D00D",
                                             "imageAtomicCompSwap(01Q10D00E00E",
                                             "atomicMax(00D00D",
                                             "textureProjGrad(00m30B00B00B",
                                             "imageAtomicAnd(01R10D00D00E",
                                             "floatBitsToUint(10B",
                                             "textureLod(00J20B00B",
                                             "textureGrad(00O10B10B10B",
                                             "dFdyFine(20B",
                                             "imageLoad(01W20D00D",
                                             "textureSize(00I00D",
                                             "gl_MaxComputeWorkGroupSize",
                                             "texelFetchOffset(00R10D00D10D",
                                             "dFdxFine(10B",
                                             "imageAtomicExchange(01D20D00D",
                                             "textureLodOffset(00X10B00B10D",
                                             "texture(00T20B00B",
                                             "gl_out",
                                             "log(30B",
                                             "notEqual(20F20F",
                                             "allInvocationsEqual(00F",
                                             "imageAtomicMax(01K20D00D",
                                             "imageAtomicMax(01K20D00E",
                                             "dFdyCoarse(30B",
                                             "textureProjLod(00R20B00B",
                                             "notEqual(30D30D",
                                             "fwidthCoarse(30B",
                                             "textureProjOffset(00I20B10D",
                                             "textureQueryLevels(00l",
                                             "textureQueryLevels(00m",
                                             "textureQueryLevels(00o",
                                             "textureQueryLevels(00h",
                                             "textureQueryLevels(00i",
                                             "textureQueryLevels(00k",
                                             "textureQueryLevels(00d",
                                             "textureQueryLevels(00e",
                                             "textureQueryLevels(00f",
                                             "textureQueryLevels(00g",
                                             "gl_MaxDrawBuffers",
                                             "textureQueryLevels(00a",
                                             "atomicCounterMin(00G00E",
                                             "textureGradOffset(00u10B00B00B00D",
                                             "gl_MaxCombinedTextureImageUnits",
                                             "textureQueryLevels(00x",
                                             "textureQueryLevels(00t",
                                             "textureQueryLevels(00u",
                                             "imageAtomicMin(01K20D00D",
                                             "imulExtended(20D20D20D20D",
                                             "any(30F",
                                             "distance(30B30B",
                                             "textureQueryLevels(00s",
                                             "textureQueryLevels(00L",
                                             "textureQueryLevels(00I",
                                             "textureQueryLevels(00J",
                                             "textureQueryLevels(00K",
                                             "imageAtomicExchange(01L00D00D",
                                             "texture3D(00J20B00B",
                                             "texture1DLod(00g00B00B",
                                             "textureQueryLevels(00X",
                                             "textureQueryLevels(00Y",
                                             "textureQueryLevels(00Z",
                                             "dot(30B30B",
                                             "textureQueryLevels(00T",
                                             "textureQueryLevels(00U",
                                             "textureQueryLevels(00R",
                                             "textureQueryLevels(00S",
                                             "gl_MaxTextureImageUnits",
                                             "usubBorrow(20E20E20E",
                                             "textureProj(00t30B00B",
                                             "shadow1DProj(00m30B00B",
                                             "clamp(30B00B00B",
                                             "textureGatherOffsets(00O10B10Dx4",
                                             "texture2DRectProj(00O30B",
                                             "max(10D00D",
                                             "textureGradOffset(00n20B10B10B10D",
                                             "clamp(00D00D00D",
                                             "floor(30B",
                                             "floor(30C",
                                             "imageStore(01P10D30D",
                                             "textureProjGradOffset(00S30B20B20B20D",
                                             "reflect(30C30C",
                                             "gl_PointCoord",
                                             "imageAtomicOr(01D20D00E",
                                             "textureGatherOffset(00v10B10D",
                                             "imageAtomicOr(01D20D00D",
                                             "imageStore(01F20D30B",
                                             "packDouble2x32(10E",
                                             "clamp(10B00B00B",
                                             "texelFetchOffset(00S20D00D20D",
                                             "lessThan(10D10D",
                                             "textureSize(00g00D",
                                             "textureGatherOffset(00U20B10D00D",
                                             "textureGatherOffset(00q10B10D00D",
                                             "textureGather(00I10B00D",
                                             "texture1DProjLod(00g30B00B",
                                             "texelFetch(00V10D00D",
                                             "imageAtomicExchange(01h00D00E",
                                             "imageAtomicExchange(01h00D00D",
                                             "atan(30B30B",
                                             "imageAtomicExchange(01h00D00B",
                                             "imageAtomicMax(01a20D00D",
                                             "imageAtomicMax(01a20D00E",
                                             "textureProjLod(00g30B00B",
                                             "max(00B00B",
                                             "imageAtomicOr(01J20D00E",
                                             "imageAtomicOr(01J20D00D",
                                             "imageAtomicMax(01F20D00E",
                                             "imageAtomicMax(01F20D00D",
                                             "exp2(20B",
                                             "smoothstep(30C30C30C",
                                             "imageAtomicExchange(00z10D00B",
                                             "imageAtomicExchange(00z10D00E",
                                             "imageAtomicExchange(00z10D00D",
                                             "textureProj(00q20B",
                                             "textureProjLod(00t10B00B",
                                             "imageAtomicMin(01c20D00D",
                                             "imageAtomicMin(01c20D00E",
                                             "textureSize(00k00D",
                                             "reflect(20B20B",
                                             "imageAtomicXor(01V20D00D00E",
                                             "imageAtomicXor(01V20D00D00D",
                                             "equal(10F10F",
                                             "acos(30B",
                                             "textureVideoWEBGL(00y10B",
                                             "dFdx(10B",
                                             "bitfieldReverse(30E",
                                             "bitfieldReverse(30D",
                                             "imageAtomicOr(01Z10D00D",
                                             "imageAtomicOr(01Z10D00E",
                                             "texture1DProj(00g30B",
                                             "textureGatherOffsets(00v10B10Dx400D",
                                             "fract(00C",
                                             "fract(00B",
                                             "min(30E00E",
                                             "gl_MinProgramTexelOffset",
                                             "imageAtomicOr(01Q10D00E",
                                             "interpolateAtOffset(20B10B",
                                             "imageAtomicOr(01c20D00D",
                                             "imageAtomicOr(01c20D00E",
                                             "reflect(30B30B",
                                             "interpolateAtCentroid(30B",
                                             "textureGather(00s30B",
                                             "imageAtomicXor(01X10D00E",
                                             "imageAtomicXor(01X10D00D",
                                             "memoryBarrier(",
                                             "texture1D(00g00B00B",
                                             "pow(00B00B",
                                             "mod(00B00B",
                                             "faceforward(30C30C30C",
                                             "imageAtomicExchange(01K20D00D",
                                             "roundEven(10B",
                                             "roundEven(10C",
                                             "atanh(30B",
                                             "textureLod(00K20B00B",
                                             "bitCount(20D",
                                             "bitCount(20E",
                                             "texelFetch(00L20D00D",
                                             "dFdxFine(00B",
                                             "imageAtomicAnd(01K20D00E",
                                             "distance(20B20B",
                                             "textureGradOffset(00q10B10B10B10D",
                                             "uaddCarry(30E30E30E",
                                             "textureSize(00U00D",
                                             "textureProjOffset(00o10B00D00B",
                                             "gl_MaxCombinedImageUniforms",
                                             "atomicCounterXor(00G00E",
                                             "imageAtomicOr(01g00D00D",
                                             "imageAtomicOr(01g00D00E",
                                             "gl_GlobalInvocationID",
                                             "gl_LocalInvocationIndex",
                                             "gl_VertexID",
                                             "imageAtomicMin(01L00D00E",
                                             "smoothstep(20C20C20C",
                                             "imageAtomicCompSwap(01U20D00D00D00D",
                                             "atomicOr(00E00E",
                                             "mix(10B10B10F",
                                             "reflect(10C10C",
                                             "mix(10B10B10B",
                                             "textureProj(00Y30B00B",
                                             "imageAtomicMax(01I20D00D",
                                             "imageAtomicMax(01I20D00E",
                                             "frexp(20B20D",
                                             "textureGatherOffset(00I10B10D00D",
                                             "notEqual(20E20E",
                                             "textureLodOffset(00d20B00B10D",
                                             "inverse(A0B",
                                             "textureProjGrad(00X20B10B10B",
                                             "textureSize(00Y00D",
                                             "atan(20B20B",
                                             "usubBorrow(00E00E00E",
                                             "imageAtomicXor(01M00D00E",
                                             "textureGatherOffsets(00L20B10Dx400D",
                                             "dFdyFine(30B",
                                             "textureQueryLod(00s20B",
                                             "texture(00v10B",
                                             "textureGatherOffsets(00U20B10Dx4",
                                             "subpassLoad(01n00D",
                                             "imageAtomicCompSwap(01c20D00E00E",
                                             "textureProjLodOffset(00g10B00B00D",
                                             "step(10C10C",
                                             "textureQueryLod(00x20B",
                                             "fma(10B10B10B",
                                             "smoothstep(00B00B10B",
                                             "imageAtomicCompSwap(01a20D00D00D",
                                             "imageSize(01N",
                                             "textureLod(00u10B00B",
                                             "textureProjGradOffset(00m30B00B00B00D",
                                             "fwidthCoarse(00B",
                                             "dFdyCoarse(20B",
                                             "textureProjGradOffset(00o30B00B00B00D",
                                             "imageStore(01b20D30D",
                                             "textureProj(00g30B00B",
                                             "bitfieldExtract(00E00D00D",
                                             "distance(30C30C",
                                             "any(20F",
                                             "gl_HelperInvocation",
                                             "textureLod(00g00B00B",
                                             "sin(10B",
                                             "gl_MaxClipDistances",
                                             "textureSize(00N00D",
                                             "mod(20B20B",
                                             "imageAtomicOr(01h00D00E",
                                             "imageAtomicOr(01h00D00D",
                                             "gl_SampleMask",
                                             "textureGrad(00k30B20B20B",
                                             "textureProjOffset(00o10B00D",
                                             "imageAtomicMin(01A10D00E",
                                             "imageAtomicMin(01A10D00D",
                                             "textureGradOffset(00f30B10B10B10D",
                                             "max(20D20D",
                                             "max(10D10D",
                                             "textureGradOffset(00t00B00B00B00D",
                                             "refract(30B30B00B",
                                             "floor(20C",
                                             "floor(20B",
                                             "texelFetchOffset(00t00D00D00D",
                                             "imageAtomicOr(01a20D00E",
                                             "matrixCompMult(F0BF0B",
                                             "umulExtended(10E10E10E10E",
                                             "texture(00d20B00B",
                                             "gl_MaxCombinedAtomicCounterBuffers",
                                             "umulExtended(30E30E30E30E",
                                             "textureGradOffset(00Y20B20B20B20D",
                                             "textureGatherOffset(00a20B10D",
                                             "textureGrad(00f30B10B10B",
                                             "atomicCounterSubtract(00G00E",
                                             "imageAtomicXor(01C20D00E",
                                             "modf(20B20B",
                                             "imageAtomicAnd(01Y10D00D",
                                             "imageAtomicAnd(01Y10D00E",
                                             "imageAtomicAdd(01i00D00E",
                                             "imageAtomicAdd(01i00D00D",
                                             "noise1(00B",
                                             "imageLoad(01M00D",
                                             "imageAtomicCompSwap(01L00D00E00E",
                                             "texture(00y10B",
                                             "length(30C",
                                             "length(30B",
                                             "imageStore(01B10D30E",
                                             "mod(30B30B",
                                             "mix(10C10C10F",
                                             "imageAtomicMin(00z10D00E",
                                             "imageAtomicMin(00z10D00D",
                                             "imageStore(01I20D30B",
                                             "exp2(30B",
                                             "allInvocations(00F",
                                             "max(20C00C",
                                             "texture3DProj(00J30B00B",
                                             "imageAtomicAdd(01K20D00E",
                                             "imageAtomicAdd(01K20D00D",
                                             "textureProjLod(00X30B00B",
                                             "textureProjGradOffset(00I30B10B10B10D",
                                             "imageAtomicAdd(01W20D00D00D",
                                             "cosh(30B",
                                             "textureProj(00q30B",
                                             "textureOffset(00S20B20D00B",
                                             "usubBorrow(30E30E30E",
                                             "imageAtomicMax(01W20D00D00E",
                                             "imageAtomicMax(01W20D00D00D",
                                             "textureProjOffset(00R20B10D00B",
                                             "imageSize(01H",
                                             "textureOffset(00i20B00D00B",
                                             "texture3DProj(00J30B",
                                             "matrixCompMult(B0BB0B",
                                             "lessThan(30B30B",
                                             "cross(20B20B",
                                             "imageSize(01O",
                                             "textureGrad(00q10B10B10B",
                                             "clamp(20B00B00B",
                                             "dFdx(00B",
                                             "findLSB(00D",
                                             "textureProjLodOffset(00o30B00B00D",
                                             "imageAtomicXor(01i00D00E",
                                             "textureProj(00R20B00B",
                                             "acos(20B",
                                             "imageSize(01A",
                                             "max(20B20B",
                                             "lessThan(20E20E",
                                             "textureLod(00X10B00B",
                                             "equal(30F30F",
                                             "sign(00C",
                                             "cosh(00B",
                                             "bitfieldExtract(00D00D00D",
                                             "imageAtomicMin(01E20D00D",
                                             "imageAtomicMin(01E20D00E",
                                             "textureLod(00Z20B00B",
                                             "sign(00D",
                                             "textureOffset(00Y20B20D",
                                             "imageAtomicXor(01Q10D00D",
                                             "imageAtomicXor(01Q10D00E",
                                             "transpose(60B",
                                             "imageStore(01G20D30D",
                                             "imageAtomicAdd(01O10D00D",
                                             "imageAtomicAdd(01O10D00E",
                                             "faceforward(00B00B00B",
                                             "imageLoad(01Z10D",
                                             "imageAtomicOr(01O10D00E",
                                             "imageAtomicOr(01O10D00D",
                                             "imageAtomicAdd(01b20D00D",
                                             "interpolateAtCentroid(20B",
                                             "textureProjLodOffset(00R30B00B10D",
                                             "textureGrad(00h10B00B00B",
                                             "imageAtomicExchange(01U20D00D00B",
                                             "texture1DProj(00g30B00B",
                                             "textureQueryLod(00h00B",
                                             "imageAtomicExchange(01U20D00D00E",
                                             "modf(00C00C",
                                             "textureProjLod(00t30B00B",
                                             "textureOffset(00o00B00D",
                                             "imageAtomicExchange(01U20D00D00D",
                                             "imageStore(01H20D30E",
                                             "textureGather(00U20B",
                                             "texelFetch(00Q20D00D",
                                             "roundEven(00C",
                                             "roundEven(00B",
                                             "texelFetchOffset(00O10D10D",
                                             "atanh(20B",
                                             "clamp(10E00E00E",
                                             "dFdxFine(30B",
                                             "imageAtomicAdd(01L00D00E",
                                             "textureQueryLod(00J20B",
                                             "textureProjOffset(00X30B10D",
                                             "gl_MaxFragmentUniformVectors",
                                             "texture2DProjLod(00I30B00B",
                                             "interpolateAtOffset(10B10B",
                                             "max(10C10C",
                                             "texelFetch(00g00D00D",
                                             "abs(30B",
                                             "bitfieldInsert(10E10E00D00D",
                                             "packSnorm4x8(30B",
                                             "mix(10B10B00B",
                                             "imageSize(01b",
                                             "clamp(30D30D30D",
                                             "textureGatherOffsets(00L20B10Dx4",
                                             "imageAtomicMax(01c20D00E",
                                             "mod(10C00C",
                                             "imageAtomicMax(01G20D00D",
                                             "imageAtomicMax(01G20D00E",
                                             "determinant(F0B",
                                             "transpose(A0B",
                                             "pow(20B20B",
                                             "imageSize(01g",
                                             "imageAtomicMax(01B10D00D",
                                             "imageAtomicMax(01B10D00E",
                                             "imageAtomicExchange(01G20D00B",
                                             "imageSize(01e",
                                             "imageAtomicExchange(01G20D00D",
                                             "imageAtomicExchange(01G20D00E",
                                             "imageLoad(01Y10D",
                                             "imageAtomicMax(01g00D00D",
                                             "imageAtomicMax(01g00D00E",
                                             "textureProj(00v30B",
                                             "textureProjGrad(00O20B10B10B",
                                             "texture(00s30B00B",
                                             "log2(20B",
                                             "gl_MaxTessControlUniformComponents",
                                             "dot(30C30C",
                                             "fwidthCoarse(10B",
                                             "textureProjOffset(00I20B10D00B",
                                             "imageAtomicAnd(01T10D00D00D",
                                             "imageAtomicAnd(01T10D00D00E",
                                             "notEqual(10F10F",
                                             "smoothstep(00B00B00B",
                                             "textureProjLodOffset(00d30B00B10D",
                                             "imageAtomicAnd(01P10D00E",
                                             "imageAtomicAnd(01P10D00D",
                                             "textureProjLodOffset(00I30B00B10D",
                                             "gl_MaxCombinedAtomicCounters",
                                             "bitfieldInsert(10D10D00D00D",
                                             "imageAtomicCompSwap(01N00D00D00D",
                                             "imageAtomicCompSwap(01L00D00D00D",
                                             "textureGather(00k30B",
                                             "texture(00J20B",
                                             "lessThanEqual(10D10D",
                                             "textureProjOffset(00o30B00D00B",
                                             "gl_MaxVaryingVectors",
                                             "textureSize(00d00D",
                                             "sin(00B",
                                             "uaddCarry(10E10E10E",
                                             "mix(10C10C00C",
                                             "atomicCounterIncrement(00G",
                                             "imageAtomicAdd(01J20D00D",
                                             "imageAtomicAdd(01J20D00E",
                                             "imageAtomicCompSwap(01S10D00D00D00D",
                                             "imageStore(01Q10D30E",
                                             "textureProj(00o10B00B",
                                             "imageAtomicAdd(01U20D00D00D",
                                             "imageAtomicAdd(01U20D00D00E",
                                             "textureProjOffset(00m30B00D",
                                             "imageAtomicExchange(01Y10D00B",
                                             "equal(10E10E",
                                             "imageAtomicExchange(01Y10D00E",
                                             "imageAtomicExchange(01Y10D00D",
                                             "imageLoad(01B10D",
                                             "imageAtomicExchange(01O10D00E",
                                             "textureProjOffset(00J30B20D",
                                             "imageSize(01W",
                                             "imageAtomicXor(01D20D00E",
                                             "notEqual(10E10E",
                                             "min(10C10C",
                                             "textureProjGrad(00t10B00B00B",
                                             "imageAtomicExchange(01N00D00B",
                                             "textureGather(00q20B00D",
                                             "imageAtomicExchange(01N00D00E",
                                             "imageAtomicExchange(01N00D00D",
                                             "textureGatherOffsets(00q10B10Dx400D",
                                             "imageAtomicCompSwap(01O10D00D00D",
                                             "shadow1DProjLod(00m30B00B",
                                             "imageAtomicMin(01i00D00D",
                                             "texture(00u20B00B",
                                             "textureLodOffset(00R10B00B10D",
                                             "trunc(10B",
                                             "trunc(10C",
                                             "imageAtomicAdd(01S10D00D00D",
                                             "texelFetch(00u10D00D",
                                             "dot(20C20C",
                                             "gl_DepthRangeParameters",
                                             "noise4(30B",
                                             "textureGather(00f20B",
                                             "noise1(10B",
                                             "textureProjGrad(00g30B00B00B",
                                             "shadow2DProj(00d30B",
                                             "textureProj(00d30B00B",
                                             "sign(10B",
                                             "max(00E00E",
                                             "texture(00a20B00B",
                                             "textureProj(00o10B",
                                             "refract(20C20C00B",
                                             "textureProj(00M20B00B",
                                             "imageLoad(01A10D",
                                             "textureProjOffset(00X30B10D00B",
                                             "exp2(00B",
                                             "imageAtomicExchange(01H20D00B",
                                             "texelFetchOffset(00u10D00D00D",
                                             "imageAtomicCompSwap(01H20D00E00E",
                                             "imageAtomicExchange(01H20D00E",
                                             "imageAtomicExchange(01H20D00D",
                                             "textureGatherOffset(00q10B10D",
                                             "textureGather(00a20B00D",
                                             "imageStore(01S10D00D30D",
                                             "ldexp(00C00D",
                                             "textureSize(00s00D",
                                             "imageAtomicXor(01P10D00E",
                                             "imageAtomicOr(01I20D00D",
                                             "texture(00N10B00B",
                                             "gl_PrimitiveID",
                                             "imageAtomicCompSwap(01Y10D00D00D",
                                             "textureProjGrad(00I30B10B10B",
                                             "gl_Layer",
                                             "textureOffset(00d20B10D",
                                             "dFdx(30B",
                                             "textureGatherOffsets(00U20B10Dx400D",
                                             "imageAtomicMin(01V20D00D00D",
                                             "imageAtomicMin(01V20D00D00E",
                                             "gl_LastFragColor",
                                             "textureProjGradOffset(00t30B00B00B00D",
                                             "min(20E20E",
                                             "asin(20B",
                                             "imageAtomicCompSwap(01U20D00D00E00E",
                                             "texture(00l30B00B",
                                             "texture1DProjLod(00g10B00B",
                                             "fwidth(10B",
                                             "dFdy(00B",
                                             "shadow2DLod(00d20B00B",
                                             "texture1DProj(00g10B",
                                             "lessThan(30E30E",
                                             "imulExtended(30D30D30D30D",
                                             "transpose(70B",
                                             "imulExtended(00D00D00D00D",
                                             "imageAtomicAdd(01F20D00D",
                                             "imageAtomicAdd(01F20D00E",
                                             "texture(00S20B00B",
                                             "textureLod(00Y20B00B",
                                             "imageAtomicExchange(01c20D00D",
                                             "faceforward(10C10C10C",
                                             "imageStore(01Z10D30E",
                                             "textureQueryLod(00u00B",
                                             "imageAtomicExchange(01c20D00B",
                                             "min(20D00D",
                                             "imageAtomicCompSwap(01P10D00D00D",
                                             "uintBitsToFloat(00E",
                                             "dFdxFine(20B",
                                             "imageAtomicMin(01L00D00D",
                                             "imageAtomicExchange(01g00D00D",
                                             "bitfieldInsert(20D20D00D00D",
                                             "mix(30B30B00B",
                                             "textureQueryLod(00U10B",
                                             "tanh(00B",
                                             "subpassLoad(01o00D",
                                             "imageAtomicMax(01N00D00E",
                                             "imageAtomicMax(01N00D00D",
                                             "max(10C00C",
                                             "matrixCompMult(D0BD0B",
                                             "imageAtomicXor(01M00D00D",
                                             "imageAtomicAnd(01X10D00E",
                                             "shadow2DProjLod(00d30B00B",
                                             "imageAtomicAnd(01X10D00D",
                                             "min(30B30B",
                                             "reflect(20C20C",
                                             "texelFetch(00h10D00D",
                                             "memoryBarrierAtomicCounter(",
                                             "bitfieldInsert(00E00E00D00D",
                                             "gl_MaxTessControlInputComponents",
                                             "imageAtomicAdd(01b20D00E",
                                             "imageAtomicMin(01a20D00E",
                                             "textureGrad(00d20B10B10B",
                                             "atan(10B",
                                             "imageAtomicCompSwap(01g00D00D00D",
                                             "clamp(30C30C30C",
                                             "textureProj(00v20B",
                                             "step(00B10B",
                                             "textureProjLod(00I20B00B",
                                             "rgb_2_yuv(20B00H",
                                             "imageLoad(01P10D",
                                             "texture(00T20B",
                                             "log2(10B",
                                             "imageAtomicAnd(01D20D00D",
                                             "imageAtomicAnd(01D20D00E",
                                             "findLSB(20E",
                                             "findLSB(20D",
                                             "imageAtomicCompSwap(01B10D00D00D",
                                             "imageAtomicOr(01X10D00D",
                                             "imageAtomicOr(01X10D00E",
                                             "noise2(30B",
                                             "gl_SampleID",
                                             "imageAtomicOr(01U20D00D00E",
                                             "greaterThanEqual(10B10B",
                                             "clamp(10D10D10D",
                                             "texelFetch(00M10D00D",
                                             "textureQueryLod(00Y20B",
                                             "transpose(F0B",
                                             "textureOffset(00Y20B20D00B",
                                             "textureGradOffset(00S20B20B20B20D",
                                             "imageAtomicOr(01U20D00D00D",
                                             "clamp(30E30E30E",
                                             "textureSize(00R00D",
                                             "acosh(10B",
                                             "imageLoad(01b20D",
                                             "imageAtomicCompSwap(01Z10D00E00E",
                                             "textureOffset(00L20B10D00B",
                                             "mod(20B00B",
                                             "imageLoad(01U20D00D",
                                             "textureProjLod(00J30B00B",
                                             "subpassLoad(01k",
                                             "transpose(90B",
                                             "mix(30C30C00C",
                                             "subpassLoad(01l",
                                             "atomicAnd(00E00E",
                                             "max(20D00D",
                                             "texelFetchOffset(00I10D00D10D",
                                             "imageAtomicMin(01Z10D00D",
                                             "imageAtomicMin(01Z10D00E",
                                             "imageAtomicCompSwap(01i00D00E00E",
                                             "imageAtomicCompSwap(01K20D00D00D",
                                             "textureQueryLod(00L10B",
                                             "imageStore(01J20D30D",
                                             "atomicCounter(00G",
                                             "textureGrad(00m20B00B00B",
                                             "noise3(20B",
                                             "bitfieldInsert(30D30D00D00D",
                                             "min(10C00C",
                                             "greaterThan(10D10D",
                                             "bitfieldExtract(10E00D00D",
                                             "textureGradOffset(00h10B00B00B00D",
                                             "imageAtomicMax(01V20D00D00D",
                                             "texture2D(00I10B00B",
                                             "greaterThan(20D20D",
                                             "imageAtomicAnd(01W20D00D00D",
                                             "imageAtomicAnd(01W20D00D00E",
                                             "textureProjLodOffset(00t10B00B00D",
                                             "textureProjOffset(00O20B10D",
                                             "trunc(00B",
                                             "length(10C",
                                             "length(10B",
                                             "imageLoad(01R10D00D",
                                             "imageAtomicAdd(01H20D00D",
                                             "imageAtomicAdd(01H20D00E",
                                             "subpassLoad(01j",
                                             "dot(00B00B",
                                             "tan(30B",
                                             "textureLod(00T20B00B",
                                             "textureProjGrad(00R30B10B10B",
                                             "exp2(10B",
                                             "textureProjOffset(00X20B10D00B",
                                             "textureProjGradOffset(00X30B10B10B10D",
                                             "imageAtomicAnd(01B10D00D",
                                             "imageStore(01U20D00D30B",
                                             "matrixCompMult(A0BA0B",
                                             "textureGrad(00S20B20B20B",
                                             "round(30B",
                                             "round(30C",
                                             "anyInvocation(00F",
                                             "textureGrad(00x30B20B20B",
                                             "imageAtomicCompSwap(01D20D00E00E",
                                             "textureProjLod(00o30B00B",
                                             "smoothstep(00C00C10C",
                                             "interpolateAtSample(00B00D",
                                             "dFdx(20B",
                                             "texture(00L20B",
                                             "barrier(",
                                             "imageAtomicOr(01N00D00E",
                                             "imageAtomicOr(01N00D00D",
                                             "imageAtomicAdd(01a20D00D",
                                             "textureGather(00k30B00D",
                                             "findMSB(20D",
                                             "textureGatherOffset(00L20B10D",
                                             "imageAtomicMin(01S10D00D00D",
                                             "imageLoad(01J20D",
                                             "textureProjOffset(00S30B20D00B",
                                             "imageAtomicAdd(01D20D00D",
                                             "normalize(10C",
                                             "unpackSnorm4x8(00E",
                                             "imageLoad(01C20D",
                                             "imageAtomicMax(01C20D00D",
                                             "imageAtomicMax(01C20D00E",
                                             "textureGather(00l30B00B",
                                             "normalize(10B",
                                             "asin(30B",
                                             "isnan(20B",
                                             "isnan(20C",
                                             "fwidth(00B",
                                             "dFdy(10B",
                                             "imageAtomicAdd(01P10D00E",
                                             "imageAtomicAdd(01P10D00D",
                                             "max(30E00E",
                                             "textureLod(00d20B00B",
                                             "textureOffset(00q10B10D",
                                             "imageAtomicAdd(01c20D00E",
                                             "imageAtomicAdd(01c20D00D",
                                             "mod(10B00B",
                                             "texture(00g00B00B",
                                             "uintBitsToFloat(10E",
                                             "textureProjOffset(00t30B00D",
                                             "matrixCompMult(70B70B",
                                             "imageAtomicAdd(01I20D00D",
                                             "imageAtomicMax(01M00D00D",
                                             "imageAtomicMax(01M00D00E",
                                             "textureLod(00k30B00B",
                                             "imageAtomicAdd(01E20D00D",
                                             "textureLodOffset(00Y20B00B20D",
                                             "refract(00C00C00B",
                                             "log2(00B",
                                             "tanh(10B",
                                             "imageAtomicMin(01I20D00E",
                                             "textureLod(00h10B00B",
                                             "textureGather(00O20B00D",
                                             "gl_LocalInvocationID",
                                             "gl_MaxCombinedClipAndCullDistances",
                                             "clamp(00B00B00B",
                                             "textureGather(00d10B",
                                             "gl_MaxGeometryAtomicCounterBuffers",
                                             "textureOffset(00p10B00D00B",
                                             "clamp(10C10C10C",
                                             "imageAtomicXor(01B10D00D",
                                             "outerProduct(20B10B",
                                             "textureProjOffset(00t10B00D",
                                             "isinf(20C",
                                             "textureGrad(00e30B20B20B",
                                             "textureSize(00J00D",
                                             "textureQueryLod(00Z20B",
                                             "dot(10C10C",
                                             "imageAtomicXor(01K20D00E",
                                             "imageAtomicXor(01K20D00D",
                                             "textureProjGrad(00n30B10B10B",
                                             "imageAtomicMin(01U20D00D00E",
                                             "imageAtomicMin(01U20D00D00D",
                                             "imageAtomicAdd(01Q10D00D",
                                             "texture2DProjLodEXT(00I30B00B",
                                             "imageAtomicXor(01T10D00D00D",
                                             "imageAtomicXor(01T10D00D00E",
                                             "imageAtomicAnd(01b20D00D",
                                             "step(00B00B",
                                             "texture2DLodEXT(00I10B00B",
                                             "texture(00K20B00B",
                                             "textureProjGradOffset(00n30B10B10B10D",
                                             "textureGrad(00J20B20B20B",
                                             "imageAtomicCompSwap(01V20D00D00E00E",
                                             "textureOffset(00U20B10D00B",
                                             "intBitsToFloat(10D",
                                             "min(20C20C",
                                             "findLSB(10D",
                                             "textureProjLodOffset(00Y30B00B20D",
                                             "imageAtomicMax(01h00D00E",
                                             "texture3D(00J20B",
                                             "gl_SecondaryFragDataEXT",
                                             "imageAtomicAdd(01X10D00E",
                                             "faceforward(20C20C20C",
                                             "imageAtomicAnd(01O10D00E",
                                             "imageAtomicAdd(01X10D00D",
                                             "imageAtomicXor(01W20D00D00D",
                                             "imageAtomicXor(01W20D00D00E",
                                             "textureGather(00n10B00B",
                                             "imageAtomicXor(01Z10D00E",
                                             "imageAtomicXor(01Z10D00D",
                                             "textureGather(00X10B00D",
                                             "imageAtomicMax(01L00D00E",
                                             "imageAtomicMax(01L00D00D",
                                             "imageAtomicXor(01G20D00E",
                                             "imageAtomicXor(01G20D00D",
                                             "textureOffset(00a20B10D",
                                             "imageAtomicExchange(01X10D00B",
                                             "textureGatherOffsets(00v10B10Dx4",
                                             "texture2DProj(00I30B00B",
                                             "textureQueryLod(00X10B",
                                             "imageAtomicAnd(01I20D00E",
                                             "textureCubeGradEXT(00K20B20B20B",
                                             "min(00B00B",
                                             "textureGradOffset(00o00B00B00B00D",
                                             "gl_CullDistance",
                                             "imageAtomicExchange(01Q10D00B",
                                             "mix(30C30C30F",
                                             "mix(30C30C30C",
                                             "gl_WorkGroupID",
                                             "degrees(00B",
                                             "imageAtomicMax(01J20D00E",
                                             "imageAtomicMax(01J20D00D",
                                             "imageAtomicMin(01D20D00D",
                                             "textureGatherOffsets(00R10B10Dx4",
                                             "atomicExchange(00D00D",
                                             "textureOffset(00m20B00D00B",
                                             "gl_MaxGeometryAtomicCounters",
                                             "textureOffset(00f30B10D",
                                             "imageStore(01c20D30E",
                                             "imageAtomicExchange(01a20D00D",
                                             "imageAtomicExchange(01a20D00E",
                                             "imageAtomicExchange(01a20D00B",
                                             "matrixCompMult(60B60B",
                                             "imageAtomicCompSwap(00z10D00D00D",
                                             "textureProj(00t30B",
                                             "textureProjGradOffset(00t10B00B00B00D",
                                             "unpackSnorm2x16(00E",
                                             "lessThan(30D30D",
                                             "atan(00B00B",
                                             "textureQueryLod(00S20B",
                                             "notEqual(10B10B",
                                             "imageLoad(01G20D",
                                             "trunc(30B",
                                             "trunc(30C",
                                             "length(00B",
                                             "length(00C",
                                             "imageAtomicAnd(01H20D00D",
                                             "imageAtomicAnd(01H20D00E",
                                             "textureProj(00X30B00B",
                                             "imageAtomicCompSwap(01C20D00E00E",
                                             "tan(00B",
                                             "min(20E00E",
                                             "textureLod(00x30B00B",
                                             "textureSize(00j",
                                             "textureSize(00n",
                                             "imageAtomicXor(01F20D00D",
                                             "textureSize(00c",
                                             "textureSize(00b",
                                             "min(20B20B",
                                             "textureSize(00q",
                                             "textureSize(00r",
                                             "textureSize(00w",
                                             "textureSize(00v",
                                             "bitfieldInsert(20E20E00D00D",
                                             "gl_MaxProgramTexelOffset",
                                             "textureSize(00O",
                                             "imageAtomicAnd(01a20D00E",
                                             "imageAtomicMin(01g00D00D",
                                             "trunc(00C",
                                             "imageAtomicAnd(01a20D00D",
                                             "textureSize(00Q",
                                             "textureSize(00P",
                                             "imageAtomicAdd(01M00D00E",
                                             "imageLoad(01K20D",
                                             "textureSize(00W",
                                             "textureProjLod(00X20B00B",
                                             "smoothstep(00C00C00C",
                                             "atomicCounterAnd(00G00E",
                                             "faceforward(30B30B30B",
                                             "distance(20C20C",
                                             "atomicCounterAdd(00G00E",
                                             "imageStore(01O10D30B",
                                             "texture(00X10B",
                                             "ceil(00C",
                                             "ceil(00B",
                                             "distance(00B00B",
                                             "texelFetch(00O10D",
                                             "imageAtomicExchange(01C20D00D",
                                             "imageAtomicExchange(01C20D00E",
                                             "textureGrad(00s30B20B20B",
                                             "textureGather(00I10B",
                                             "imageAtomicExchange(01C20D00B",
                                             "min(30D30D",
                                             "imageAtomicExchange(01Z10D00B",
                                             "findMSB(30E",
                                             "findMSB(30D",
                                             "textureGradOffset(00R10B10B10B10D",
                                             "fwidth(30B",
                                             "textureGrad(00K20B20B20B",
                                             "texelFetch(00S20D00D",
                                             "max(10B00B",
                                             "textureProjGradOffset(00R30B10B10B10D",
                                             "gl_MaxTessControlTextureImageUnits",
                                             "texelFetchOffset(00L20D00D10D",
                                             "isnan(30C",
                                             "transpose(50B",
                                             "greaterThanEqual(20D20D",
                                             "asinh(00B",
                                             "gl_PrimitiveIDIn",
                                             "textureGather(00Z20B",
                                             "textureGrad(00p10B00B00B",
                                             "textureProjOffset(00v30B10D",
                                             "greaterThan(20B20B",
                                             "min(20D20D",
                                             "texelFetchOffset(00g00D00D00D",
                                             "imageAtomicCompSwap(01g00D00E00E",
                                             "imageAtomicMin(01W20D00D00E",
                                             "imageAtomicMin(01W20D00D00D",
                                             "imageAtomicXor(01O10D00D",
                                             "imageAtomicXor(01O10D00E",
                                             "tanh(20B",
                                             "textureProj(00m30B00B",
                                             "sin(20B",
                                             "smoothstep(00C00C30C",
                                             "textureSize(00l00D",
                                             "textureLod(00o00B00B",
                                             "textureOffset(00I10B10D00B",
                                             "imageAtomicAnd(00z10D00D",
                                             "imageAtomicAnd(00z10D00E",
                                             "imageAtomicCompSwap(01W20D00D00D00D",
                                             "gl_MaxAtomicCounterBufferSize",
                                             "textureOffset(00J20B20D00B",
                                             "lessThanEqual(20E20E",
                                             "gl_BaseVertex",
                                             "textureOffset(00g00B00D",
                                             "textureProj(00g30B",
                                             "gl_MaxGeometryTotalOutputComponents",
                                             "bitfieldInsert(30E30E00D00D",
                                             "bitfieldExtract(20E00D00D",
                                             "uintBitsToFloat(20E",
                                             "unpackUnorm4x8(00E",
                                             "imageAtomicExchange(01K20D00E",
                                             "mod(10B10B",
                                             "imageAtomicExchange(01K20D00B",
                                             "imageAtomicAnd(01B10D00E",
                                             "imageAtomicXor(01i00D00D",
                                             "gl_MaxVertexImageUniforms",
                                             "equal(20D20D",
                                             "mix(10E10E10F",
                                             "textureGather(00R10B00D",
                                             "textureSize(00Z00D",
                                             "bitfieldExtract(30D00D00D",
                                             "imageAtomicXor(01J20D00D",
                                             "imageAtomicXor(01J20D00E",
                                             "intBitsToFloat(00D",
                                             "textureLodOffset(00m20B00B00D",
                                             "findLSB(00E",
                                             "texelFetch(00p10D00D",
                                             "textureGather(00d10B00B",
                                             "shadow2DProj(00d30B00B",
                                             "imageAtomicAdd(01T10D00D00D",
                                             "imageAtomicAdd(01T10D00D00E",
                                             "inversesqrt(10B",
                                             "inversesqrt(10C",
                                             "abs(30D",
                                             "transpose(D0B",
                                             "abs(30C",
                                             "textureProjGrad(00O30B10B10B",
                                             "",
                                             "imageLoad(01E20D",
                                             "textureProj(00N20B00B",
                                             "gl_FragData",
                                             "dFdxCoarse(20B",
                                             "clamp(20E00E00E",
                                             "textureProj(00d30B",
                                             "gl_MaxVertexOutputVectors",
                                             "imageAtomicOr(01i00D00D",
                                             "imageAtomicOr(01i00D00E",
                                             "shadow1D(00m20B",
                                             "textureOffset(00u10B00D",
                                             "cosh(10B",
                                             "sign(10C",
                                             "imageAtomicAnd(01G20D00E",
                                             "imageAtomicAnd(01G20D00D",
                                             "sign(10D",
                                             "umulExtended(00E00E00E00E",
                                             "gl_MaxVertexAttribs",
                                             "",
                                             "texture(00a20B",
                                             "imageAtomicExchange(01g00D00B",
                                             "imageAtomicExchange(01B10D00B",
                                             "ldexp(10B10D",
                                             "imageAtomicExchange(01B10D00D",
                                             "imageAtomicExchange(01B10D00E",
                                             "textureProjOffset(00g30B00D",
                                             "texture(00Z20B",
                                             "degrees(10B",
                                             "texture(00k30B00B",
                                             "texture(00K20B",
                                             "sinh(10B",
                                             "texture(00m20B",
                                             "imageAtomicXor(01C20D00D",
                                             "textureGatherOffsets(00I10B10Dx400D",
                                             "not(30F",
                                             "textureProjLodOffset(00I20B00B10D",
                                             "textureGather(00K20B",
                                             "textureGatherOffset(00R10B10D",
                                             "memoryBarrierShared(",
                                             "clamp(20B20B20B",
                                             "texelFetch(00W20D00D",
                                             "textureProjLod(00g10B00B",
                                             "trunc(20C",
                                             "trunc(20B",
                                             "textureProjOffset(00I30B10D00B",
                                             "max(00C00C",
                                             "tan(10B",
                                             "texture(00g00B",
                                             "textureLodOffset(00L20B00B10D",
                                             "textureLodOffset(00u10B00B00D",
                                             "imageAtomicOr(01B10D00D",
                                             "imageAtomicOr(01B10D00E",
                                             "isinf(20B",
                                             "dFdyCoarse(10B",
                                             "textureGatherOffset(00X10B10D00D",
                                             "min(10E10E",
                                             "memoryBarrierImage(",
                                             "round(10B",
                                             "round(10C",
                                             "textureProjLodOffset(00m30B00B00D",
                                             "textureProjGradOffset(00g10B00B00B00D",
                                             "textureProj(00R30B",
                                             "shadow1DProj(00m30B",
                                             "texture(00f30B00B",
                                             "fma(00B00B00B",
                                             "imageStore(01X10D30B",
                                             "imageAtomicOr(01b20D00E",
                                             "imageAtomicOr(01b20D00D",
                                             "textureGatherOffset(00v10B10D00D",
                                             "atomicMax(00E00E",
                                             "textureQueryLod(00t00B",
                                             "textureProjOffset(00R30B10D",
                                             "textureProj(00X30B",
                                             "findMSB(00D",
                                             "findMSB(00E",
                                             "mix(20B20B20B",
                                             "imageAtomicCompSwap(01X10D00D00D",
                                             "frexp(30C30D",
                                             "mix(10C10C10C",
                                             "min(30D00D",
                                             "imageAtomicCompSwap(01K20D00E00E",
                                             "texture(00M10B00B",
                                             "fwidth(20B",
                                             "imageAtomicOr(01S10D00D00D",
                                             "imageAtomicOr(01S10D00D00E",
                                             "mod(30C00C",
                                             "imageAtomicAdd(01A10D00D",
                                             "imageAtomicAdd(01A10D00E",
                                             "texture(00o00B00B",
                                             "imageAtomicOr(01H20D00E",
                                             "imageAtomicOr(01H20D00D",
                                             "cos(20B",
                                             "gl_MaxGeometryUniformComponents",
                                             "textureGather(00T20B",
                                             "textureProjGradOffset(00J30B20B20B20D",
                                             "asinh(10B",
                                             "texelFetchOffset(00v10D10D",
                                             "imageAtomicXor(01E20D00E",
                                             "imageAtomicXor(01E20D00D",
                                             "textureGatherOffsets(00R10B10Dx400D"};
    
    // Flat array of offsets from a symbol into the rules table.
    constexpr uint16_t kMangledOffsets[] = {
        0,     // textureProj_00R30B00B
        2,     // imageAtomicExchange_01g00D00E
        4,     // interpolateAtOffset_30B10B
        7,     // textureProjOffset_00g10B00D
        8,     // imageAtomicOr_00z10D00D
        10,    // texture2DProj_00I20B
        12,    // textureProjGradOffset_00v30B10B10B10D
        13,    // texelFetch_00o00D00D
        14,    // imageLoad_01g00D
        16,    // imageAtomicAdd_01S10D00D00E
        18,    // imageLoad_01I20D
        20,    // tanh_30B
        22,    // imageAtomicCompSwap_01E20D00D00D
        24,    // textureQueryLod_00m00B
        25,    // not_10F
        27,    // findMSB_20E
        29,    // lessThanEqual_30B30B
        31,    // imageAtomicAdd_00z10D00E
        33,    // textureLod_00t00B00B
        34,    // textureProjGradOffset_00O30B10B10B10D
        35,    // outerProduct_20B30B
        37,    // imageAtomicOr_00z10D00E
        39,    // imageSamples_01W
        40,    // imageSamples_01V
        41,    // imageSamples_01U
        42,    // imageSamples_01T
        43,    // imageSamples_01S
        44,    // mix_20B20B00B
        46,    // textureLodOffset_00o00B00B00D
        47,    // imageAtomicMin_01S10D00D00E
        49,    // uintBitsToFloat_30E
        51,    // imageAtomicExchange_01R10D00D00B
        53,    // textureSize_00K00D
        55,    // textureSize_00h00D
        56,    // gl_MaxAtomicCounterBindings
        58,    // texelFetchOffset_00q10D10D
        59,    // greaterThanEqual_10E10E
        61,    // texture_00d20B
        63,    // atan_10B10B
        65,    // clamp_30B30B30B
        67,    // imageAtomicCompSwap_01a20D00E00E
        69,    // imageAtomicCompSwap_01R10D00D00D00D
        71,    // textureLodOffset_00a20B00B10D
        73,    // greaterThanEqual_20B20B
        75,    // imageLoad_01F20D
        77,    // ceil_10C
        78,    // imageAtomicCompSwap_01b20D00D00D
        80,    // imageAtomicAnd_01A10D00D
        82,    // imageAtomicAdd_01D20D00E
        84,    // atomicAdd_00D00D
        86,    // textureSize_00p00D
        87,    // floatBitsToUint_20B
        89,    // textureProjOffset_00t30B00D00B
        90,    // mix_20D20D20F
        92,    // degrees_20B
        94,    // imageAtomicMin_01Y10D00D
        96,    // gl_MaxTessEvaluationTextureImageUnits
        97,    // imageAtomicXor_01R10D00D00D
        99,    // imageAtomicCompSwap_01D20D00D00D
        101,   // min_00C00C
        102,   // imageAtomicMax_01S10D00D00E
        104,   // inversesqrt_00C
        105,   // inversesqrt_00B
        107,   // texelFetchOffset_00J20D00D20D
        109,   // textureProjGrad_00S30B20B20B
        111,   // equal_10D10D
        113,   // max_30D00D
        115,   // groupMemoryBarrier_
        117,   // imageAtomicExchange_01b20D00B
        119,   // imageAtomicExchange_01b20D00E
        121,   // imageAtomicExchange_01b20D00D
        123,   // step_20C20C
        124,   // texelFetch_00I10D00D
        126,   // mod_00C00C
        127,   // transpose_E0B
        129,   // imageAtomicMin_01R10D00D00E
        131,   // imageAtomicMin_01R10D00D00D
        133,   // imageAtomicExchange_01i00D00E
        135,   // textureGather_00O20B
        136,   // textureProjOffset_00Y30B20D00B
        138,   // imageStore_01C20D30B
        140,   // modf_10B10B
        142,   // determinant_50B
        143,   // imageAtomicCompSwap_01J20D00E00E
        145,   // textureProj_00g10B00B
        146,   // lessThan_20B20B
        148,   // imageAtomicCompSwap_01W20D00D00E00E
        150,   // imageStore_01K20D30E
        152,   // gl_MaxFragmentInputVectors
        154,   // sign_20C
        155,   // cosh_20B
        157,   // sign_20D
        159,   // atanh_00B
        161,   // imageAtomicAnd_01V20D00D00E
        163,   // imageAtomicAnd_01V20D00D00D
        165,   // textureProj_00t10B
        166,   // texture_00p20B00B
        167,   // fma_10C10C10C
        168,   // imageAtomicXor_01Y10D00D
        170,   // imageAtomicXor_01Y10D00E
        172,   // imageAtomicAnd_01C20D00E
        174,   // textureOffset_00d20B10D00B
        176,   // textureOffset_00m20B00D
        177,   // imageAtomicAnd_01C20D00D
        179,   // lessThan_10E10E
        181,   // imageAtomicCompSwap_01A10D00D00D
        183,   // textureGrad_00X00B00B00B
        184,   // textureProjLodOffset_00t30B00B00D
        185,   // fma_30C30C30C
        186,   // textureGrad_00v10B10B10B
        187,   // textureProj_00N30B00B
        188,   // step_00C00C
        189,   // gl_MaxCombinedShaderOutputResources
        191,   // imageAtomicCompSwap_01T10D00D00D00D
        193,   // texture_00I10B00B
        195,   // texelFetch_00j00D
        197,   // lessThan_20D20D
        199,   // clamp_20C20C20C
        200,   // gl_MaxTessGenLevel
        201,   // imageAtomicXor_00z10D00E
        203,   // all_10F
        205,   // dFdyCoarse_00B
        206,   // isinf_30B
        208,   // textureGatherOffset_00a20B10D00D
        210,   // textureGatherOffset_00I10B10D
        212,   // textureProjOffset_00q30B10D
        213,   // textureOffset_00L20B10D
        215,   // lessThanEqual_30E30E
        217,   // min_10E00E
        219,   // imageAtomicXor_01a20D00E
        221,   // imageAtomicXor_01a20D00D
        223,   // textureProjOffset_00S30B20D
        225,   // round_00C
        226,   // round_00B
        228,   // gl_LastFragData
        230,   // greaterThan_30D30D
        232,   // texture_00U20B
        234,   // imageAtomicCompSwap_01P10D00E00E
        236,   // smoothstep_00C00C20C
        237,   // texture2DRect_00O10B
        238,   // imageLoad_01N00D
        239,   // noise2_20B
        240,   // step_20B20B
        242,   // imageAtomicAnd_01b20D00E
        244,   // findMSB_10E
        246,   // findMSB_10D
        248,   // interpolateAtOffset_00B10B
        251,   // texture_00t00B
        252,   // gl_SampleMaskIn
        253,   // textureLodOffset_00S20B00B20D
        255,   // textureQueryLod_00p00B
        256,   // imageStore_00z10D30B
        258,   // textureGatherOffsets_00X10B10Dx400D
        261,   // outerProduct_10B20B
        263,   // imageAtomicMax_01Z10D00E
        265,   // fwidthFine_10B
        266,   // cos_30B
        268,   // unpackHalf2x16_00E
        270,   // outerProduct_10B10B
        272,   // imageAtomicOr_01M00D00D
        274,   // gl_MaxComputeTextureImageUnits
        276,   // imageAtomicMax_01Y10D00E
        278,   // imageAtomicMax_01Y10D00D
        280,   // sin_30B
        282,   // imageAtomicAnd_01O10D00D
        284,   // textureGather_00L20B00D
        286,   // imageStore_01i00D30E
        288,   // imageStore_01A10D30D
        290,   // gl_MaxGeometryOutputVertices
        291,   // imageAtomicXor_01H20D00D
        293,   // imageAtomicXor_01H20D00E
        295,   // shadow1D_00m20B00B
        296,   // max_10E10E
        298,   // max_30B30B
        300,   // clamp_10E10E10E
        302,   // texture_00N10B
        303,   // textureProjGrad_00t30B00B00B
        304,   // imageAtomicOr_01E20D00D
        306,   // imageAtomicOr_01E20D00E
        308,   // texelFetchOffset_00a20D00D10D
        310,   // imageLoad_01V20D00D
        311,   // gl_PatchVerticesIn
        313,   // not_20F
        315,   // imageAtomicExchange_01F20D00D
        317,   // imageAtomicExchange_01F20D00B
        319,   // imageStore_01L00D30B
        320,   // outerProduct_20B20B
        322,   // imageAtomicXor_01D20D00D
        324,   // textureProjLodOffset_00R20B00B10D
        326,   // textureOffset_00p10B00D
        327,   // texture_00h20B
        328,   // textureProjGrad_00J30B20B20B
        330,   // imageAtomicOr_01R10D00D00E
        332,   // imageAtomicOr_01R10D00D00D
        334,   // textureProjOffset_00g10B00D00B
        335,   // gl_InvocationID
        337,   // imageAtomicAnd_01R10D00D00D
        339,   // imageAtomicAdd_01E20D00E
        341,   // radians_10B
        343,   // textureGatherOffset_00n10B00B10D
        344,   // noise2_10B
        345,   // textureQueryLod_00a10B
        346,   // textureGather_00e20B00B
        348,   // distance_10B10B
        350,   // textureGrad_00Z20B20B20B
        352,   // sign_00B
        354,   // bitfieldReverse_00D
        356,   // bitfieldReverse_00E
        358,   // bitfieldExtract_30E00D00D
        360,   // textureLod_00I10B00B
        362,   // greaterThanEqual_10D10D
        364,   // imageAtomicCompSwap_01I20D00E00E
        366,   // degrees_30B
        368,   // inversesqrt_30B
        370,   // inversesqrt_30C
        371,   // imageAtomicMin_01I20D00D
        373,   // textureGather_00v20B00D
        374,   // intBitsToFloat_20D
        376,   // exp_20B
        378,   // imageAtomicMax_01A10D00E
        380,   // imageAtomicMax_01A10D00D
        382,   // acosh_00B
        384,   // log_10B
        386,   // textureProjLodOffset_00S30B00B20D
        388,   // textureGather_00L20B
        390,   // textureProj_00n30B
        391,   // textureQueryLod_00i00B
        392,   // texture_00p20B
        393,   // outerProduct_30B20B
        395,   // texture_00S20B
        397,   // atomicXor_00D00D
        399,   // texelFetch_00Y20D00D
        401,   // imageAtomicOr_01P10D00D
        403,   // imageAtomicOr_01P10D00E
        405,   // bitfieldExtract_10D00D00D
        407,   // sign_30B
        409,   // sign_30C
        410,   // sign_30D
        412,   // texture_00Y20B00B
        414,   // gl_MaxTessEvaluationInputComponents
        415,   // dFdy_20B
        418,   // textureProj_00Y30B
        420,   // textureOffset_00X10B10D00B
        422,   // memoryBarrierBuffer_
        424,   // isinf_00B
        426,   // isinf_00C
        427,   // clamp_20D00D00D
        429,   // texture2DProj_00I20B00B
        431,   // mod_30B00B
        433,   // imageAtomicAnd_01A10D00E
        435,   // textureGather_00f20B00B
        437,   // textureProj_00m30B
        438,   // greaterThan_20E20E
        440,   // gl_MaxTessEvaluationAtomicCounters
        441,   // textureProjLod_00I30B00B
        443,   // refract_00B00B00B
        445,   // gl_MaxGeometryImageUniforms
        446,   // imageAtomicMin_01X10D00D
        448,   // imageAtomicMin_01X10D00E
        450,   // noise4_20B
        451,   // textureSize_00e00D
        453,   // imageStore_01N00D30E
        454,   // gl_NumWorkGroups
        456,   // texelFetch_00a20D00D
        458,   // step_00C10C
        459,   // frexp_30B30D
        461,   // imageAtomicMin_01Y10D00E
        463,   // texture_00t00B00B
        464,   // min_30C00C
        465,   // imageAtomicCompSwap_01X10D00E00E
        467,   // texture_00I10B
        469,   // gl_InstanceID
        471,   // normalize_20B
        473,   // normalize_20C
        474,   // imageAtomicCompSwap_01H20D00D00D
        476,   // inverse_F0B
        478,   // frexp_20C20D
        479,   // atan_00B
        481,   // textureGatherOffset_00R10B10D00D
        483,   // imageAtomicMin_01h00D00E
        485,   // imageAtomicMin_01h00D00D
        487,   // greaterThan_30E30E
        489,   // imageAtomicAdd_01N00D00D
        491,   // imageAtomicAdd_01N00D00E
        493,   // texelFetchOffset_00p10D00D00D
        494,   // imageAtomicAnd_01J20D00D
        496,   // imageAtomicAnd_01J20D00E
        498,   // gl_DepthRange
        500,   // imageAtomicMax_01S10D00D00D
        502,   // textureProj_00o30B
        503,   // imageAtomicAdd_01I20D00E
        505,   // bitfieldExtract_20D00D00D
        507,   // texture_00L20B00B
        509,   // imageAtomicOr_01L00D00E
        511,   // imageAtomicOr_01L00D00D
        513,   // mix_30D30D30F
        515,   // gl_MaxComputeUniformComponents
        517,   // imageLoad_01h00D
        519,   // imageAtomicCompSwap_01E20D00E00E
        521,   // textureProjOffset_00O30B10D
        522,   // floor_10B
        524,   // floor_10C
        525,   // imageAtomicMax_01R10D00D00E
        527,   // imageAtomicMax_01R10D00D00D
        529,   // textureProjLodOffset_00o10B00B00D
        530,   // textureGather_00x30B00D
        532,   // interpolateAtSample_10B00D
        535,   // imageAtomicMin_01F20D00E
        537,   // imageAtomicMin_01F20D00D
        539,   // outerProduct_10B30B
        541,   // texture_00k30B
        542,   // imageAtomicCompSwap_01O10D00E00E
        544,   // cos_00B
        546,   // imageAtomicXor_01F20D00E
        548,   // imageAtomicXor_01B10D00E
        550,   // frexp_00C00D
        551,   // atomicCounterCompSwap_00G00E00E
        552,   // textureOffset_00a20B10D00B
        554,   // imageAtomicCompSwap_01b20D00E00E
        556,   // textureGather_00X10B
        558,   // imageLoad_01T10D00D
        559,   // textureOffset_00R10B10D00B
        561,   // textureGatherOffset_00d10B00B10D
        563,   // gl_MaxFragmentImageUniforms
        565,   // textureSize_00i00D
        566,   // equal_20E20E
        568,   // uaddCarry_00E00E00E
        570,   // textureQueryLod_00T20B
        571,   // textureCube_00K20B
        573,   // imageAtomicMax_01U20D00D00E
        575,   // imageAtomicMax_01U20D00D00D
        577,   // imageAtomicAnd_01K20D00D
        579,   // matrixCompMult_90B90B
        580,   // textureGatherOffsets_00I10B10Dx4
        583,   // textureGradOffset_00p10B00B00B00D
        584,   // textureProjLodOffset_00g30B00B00D
        585,   // clamp_30E00E00E
        587,   // asin_00B
        589,   // textureProjOffset_00J30B20D00B
        591,   // texelFetch_00w00D
        593,   // notEqual_30E30E
        595,   // imageAtomicOr_01K20D00D
        597,   // imageAtomicOr_01K20D00E
        599,   // lessThanEqual_10E10E
        601,   // inversesqrt_20C
        602,   // inversesqrt_20B
        604,   // textureLod_00i20B00B
        605,   // textureOffset_00u10B00D00B
        606,   // reflect_00C00C
        607,   // atomicAdd_00E00E
        609,   // intBitsToFloat_30D
        611,   // textureProjGradOffset_00v20B10B10B10D
        612,   // textureGrad_00X10B10B10B
        614,   // greaterThanEqual_30E30E
        616,   // mix_20B20B20F
        618,   // imageAtomicExchange_01T10D00D00E
        620,   // imageAtomicExchange_01T10D00D00D
        622,   // gl_MaxVertexAtomicCounters
        624,   // textureProjOffset_00X20B10D
        626,   // any_10F
        628,   // textureProjGradOffset_00d30B10B10B10D
        630,   // imageLoad_01X10D
        631,   // textureProjOffset_00I30B10D
        633,   // textureOffset_00X10B10D
        635,   // texture_00R10B
        637,   // imageAtomicXor_01R10D00D00E
        639,   // imageStore_01M00D30D
        640,   // radians_00B
        642,   // textureGatherOffsets_00f20B00B10Dx4
        645,   // step_10B10B
        647,   // gl_MaxDualSourceDrawBuffersEXT
        648,   // imageAtomicAdd_01Y10D00D
        650,   // imageAtomicAdd_01Y10D00E
        652,   // bitfieldReverse_10E
        654,   // bitfieldReverse_10D
        656,   // imageStore_01g00D30B
        658,   // textureProjGradOffset_00q20B10B10B10D
        659,   // imageAtomicExchange_01S10D00D00E
        661,   // atomicXor_00E00E
        663,   // mix_00C00C00F
        664,   // textureLodOffset_00g00B00B00D
        665,   // greaterThan_30B30B
        667,   // gl_MaxFragmentAtomicCounters
        669,   // faceforward_20B20B20B
        671,   // textureSize_00x00D
        673,   // textureProj_00S30B00B
        675,   // fma_20B20B20B
        678,   // textureProjLod_00o10B00B
        679,   // imageAtomicMin_01J20D00E
        681,   // outerProduct_30B30B
        683,   // exp_30B
        685,   // bitCount_10E
        687,   // bitCount_10D
        689,   // log_00B
        691,   // mix_00F00F00F
        693,   // imageAtomicCompSwap_01M00D00D00D
        695,   // imageAtomicAdd_01Q10D00E
        697,   // acosh_30B
        699,   // imageAtomicOr_01Y10D00E
        701,   // imageAtomicOr_01Y10D00D
        703,   // textureGradOffset_00X10B10B10B10D
        705,   // texelFetchOffset_00X10D00D10D
        707,   // packUnorm2x16_10B
        709,   // texture_00h20B00B
        710,   // umulExtended_20E20E20E20E
        712,   // texture_00m20B00B
        713,   // textureProjGradOffset_00g30B00B00B00D
        714,   // textureProj_00o30B00B
        715,   // imageAtomicCompSwap_01T10D00D00E00E
        717,   // textureCubeLod_00K20B00B
        719,   // textureSize_00L00D
        721,   // imageAtomicXor_01L00D00E
        723,   // imageAtomicCompSwap_01Q10D00D00D
        725,   // max_20E00E
        727,   // textureProj_00S30B
        729,   // dFdy_30B
        732,   // isinf_10C
        733,   // isinf_10B
        735,   // gl_MaxVertexTextureImageUnits
        737,   // greaterThanEqual_30B30B
        739,   // texture2DProjLodEXT_00I20B00B
        740,   // gl_FrontFacing
        742,   // textureProjOffset_00t10B00D00B
        743,   // acos_10B
        745,   // textureCube_00K20B00B
        747,   // lessThan_10B10B
        749,   // imageAtomicCompSwap_01B10D00E00E
        751,   // gl_MaxComputeAtomicCounterBuffers
        753,   // textureSize_00f00D
        755,   // texelFetchOffset_00h10D00D00D
        756,   // mod_20C00C
        757,   // imageAtomicAnd_01g00D00D
        759,   // gl_LastFragColorARM
        760,   // gl_MaxTessControlTotalOutputComponents
        761,   // textureGatherOffsets_00q10B10Dx4
        762,   // lessThanEqual_20D20D
        764,   // textureQueryLod_00k20B
        765,   // imageAtomicAdd_01B10D00E
        767,   // textureProjLod_00Y30B00B
        769,   // gl_MaxTessEvaluationOutputComponents
        770,   // gl_SecondaryFragColorEXT
        771,   // imageAtomicAnd_01U20D00D00D
        773,   // imageAtomicAnd_01U20D00D00E
        775,   // gl_BaseInstance
        776,   // transpose_B0B
        778,   // imageAtomicXor_01b20D00E
        780,   // mix_20F20F20F
        782,   // smoothstep_00B00B30B
        784,   // imageAtomicExchange_01M00D00B
        786,   // imageAtomicExchange_01M00D00D
        788,   // imageAtomicExchange_01M00D00E
        790,   // textureQueryLod_00d10B
        791,   // texelFetch_00N10D00D
        792,   // textureSize_00a00D
        794,   // EmitStreamVertex_00D
        795,   // textureProjOffset_00Y30B20D
        797,   // bitCount_30E
        799,   // atan_30B
        801,   // imageAtomicMax_01b20D00E
        803,   // imageAtomicMax_01b20D00D
        805,   // ceil_10B
        807,   // textureSize_00S00D
        809,   // imageAtomicExchange_01S10D00D00B
        811,   // atomicCounterDecrement_00G
        813,   // ceil_30B
        815,   // imageAtomicAnd_01Q10D00D
        817,   // imageAtomicAnd_01Q10D00E
        819,   // imageAtomicAnd_01c20D00E
        821,   // imageAtomicAnd_01c20D00D
        823,   // textureSize_00t00D
        824,   // texture_00f30B
        826,   // imageSamples_01R
        827,   // texelFetch_00R10D00D
        829,   // sign_20B
        831,   // smoothstep_30B30B30B
        833,   // imageAtomicExchange_01T10D00D00B
        835,   // textureGrad_00R10B10B10B
        837,   // min_00D00D
        839,   // textureProj_00t10B00B
        840,   // shadow2DProjEXT_00d30B
        841,   // imageAtomicAdd_01V20D00D00E
        843,   // ldexp_20B20D
        845,   // greaterThanEqual_30D30D
        847,   // imageLoad_01D20D
        849,   // findLSB_10E
        851,   // texture_00Z20B00B
        853,   // imageAtomicXor_01S10D00D00E
        855,   // imageAtomicXor_01S10D00D00D
        857,   // cos_10B
        859,   // texelFetch_00v10D
        860,   // texture_00e30B
        862,   // textureSize_00T00D
        864,   // imageAtomicAnd_01g00D00E
        866,   // textureSize_00u00D
        867,   // textureProjGradOffset_00Y30B20B20B20D
        869,   // noise3_30B
        870,   // textureGrad_00T20B20B20B
        872,   // texture1DProj_00g10B00B
        873,   // textureProjOffset_00d30B10D00B
        875,   // imageAtomicMin_01B10D00D
        877,   // imageAtomicMin_01B10D00E
        879,   // imageAtomicXor_01U20D00D00D
        881,   // imageAtomicXor_01U20D00D00E
        883,   // imageAtomicAdd_01h00D00D
        885,   // imageAtomicAdd_01h00D00E
        887,   // matrixCompMult_50B50B
        889,   // equal_30B30B
        891,   // imageAtomicExchange_01E20D00B
        893,   // textureLod_00U20B00B
        895,   // imageAtomicXor_01I20D00E
        897,   // imageAtomicXor_01I20D00D
        899,   // textureOffset_00h10B00D
        900,   // textureLod_00p10B00B
        901,   // max_20C20C
        902,   // max_10B10B
        904,   // gl_PointSize
        906,   // imageAtomicCompSwap_01F20D00E00E
        908,   // asin_10B
        910,   // sinh_00B
        912,   // imageAtomicAdd_01g00D00D
        914,   // imageAtomicCompSwap_01h00D00E00E
        916,   // textureOffset_00S20B20D
        918,   // fma_20C20C20C
        919,   // textureProj_00R20B
        921,   // greaterThan_10E10E
        923,   // imageAtomicAnd_01M00D00E
        925,   // imageAtomicAdd_01B10D00D
        927,   // imageAtomicAnd_01M00D00D
        929,   // textureGatherOffsets_00n10B00B10Dx4
        930,   // EmitVertex_
        932,   // smoothstep_20B20B20B
        934,   // textureSamples_00b
        935,   // textureOffset_00J20B20D
        937,   // texelFetch_00J20D00D
        939,   // imageAtomicExchange_01V20D00D00E
        941,   // imageAtomicExchange_01V20D00D00B
        943,   // imageAtomicCompSwap_01Y10D00E00E
        945,   // gl_ViewID_OVR
        946,   // radians_30B
        948,   // fract_30B
        950,   // imageAtomicMin_01H20D00E
        952,   // uaddCarry_20E20E20E
        954,   // textureProjGrad_00X30B10B10B
        956,   // textureSamples_00P
        957,   // textureProjOffset_00v20B10D
        958,   // shadow2D_00d20B00B
        959,   // texelFetchOffset_00o00D00D00D
        960,   // textureSamples_00V
        961,   // textureSamples_00W
        962,   // textureProjGrad_00q30B10B10B
        963,   // textureGatherOffset_00O10B10D
        964,   // clamp_10D00D00D
        966,   // gl_MaxComputeImageUniforms
        968,   // textureLod_00L20B00B
        970,   // imageAtomicExchange_01A10D00B
        972,   // imageAtomicCompSwap_01V20D00D00D00D
        974,   // imageAtomicExchange_01A10D00E
        976,   // imageAtomicExchange_01A10D00D
        978,   // imageAtomicXor_01b20D00D
        980,   // texture_00n20B
        981,   // ldexp_20C20D
        982,   // clamp_00E00E00E
        984,   // length_20B
        986,   // ldexp_00B00D
        988,   // bitfieldInsert_00D00D00D00D
        990,   // textureProjGrad_00Y30B20B20B
        992,   // imageAtomicAdd_01W20D00D00E
        994,   // roundEven_30B
        996,   // roundEven_30C
        997,   // acosh_20B
        999,   // atanh_10B
        1001,  // length_20C
        1002,  // clamp_10B10B10B
        1004,  // textureGatherOffset_00L20B10D00D
        1006,  // bitCount_00D
        1008,  // bitCount_00E
        1010,  // gl_SamplePosition
        1011,  // floatBitsToInt_30B
        1013,  // max_20B00B
        1015,  // imageAtomicAdd_00z10D00D
        1017,  // texelFetchOffset_00Y20D00D20D
        1019,  // atomicExchange_00E00E
        1021,  // imageAtomicXor_01h00D00D
        1023,  // imageAtomicXor_01h00D00E
        1025,  // ldexp_30C30D
        1026,  // texture_00o00B
        1027,  // texture_00x30B00B
        1028,  // lessThanEqual_20B20B
        1030,  // min_10B00B
        1032,  // textureQueryLod_00f10B
        1033,  // gl_MaxTessPatchComponents
        1034,  // smoothstep_10C10C10C
        1035,  // imageAtomicAnd_01L00D00D
        1037,  // imageAtomicAnd_01L00D00E
        1039,  // mix_30F30F30F
        1041,  // imageAtomicMax_01T10D00D00E
        1043,  // imageAtomicMax_01T10D00D00D
        1045,  // textureGatherOffsets_00O10B10Dx400D
        1046,  // abs_20D
        1048,  // abs_20C
        1049,  // abs_20B
        1051,  // lessThanEqual_10B10B
        1053,  // min_30E30E
        1055,  // imageAtomicOr_01a20D00D
        1057,  // mix_00B00B00B
        1059,  // mix_00B00B00F
        1061,  // textureGather_00s30B00D
        1063,  // textureProj_00I20B
        1065,  // textureLodOffset_00p10B00B00D
        1066,  // gl_MaxVertexAtomicCounterBuffers
        1068,  // unpackDouble2x32_00C
        1069,  // acos_00B
        1071,  // textureGradOffset_00J20B20B20B20D
        1073,  // fma_00C00C00C
        1074,  // texture2DGradEXT_00I10B10B10B
        1075,  // imageAtomicCompSwap_01G20D00D00D
        1077,  // imageAtomicAnd_01I20D00D
        1079,  // texture2DProjGradEXT_00I30B10B10B
        1080,  // fma_30B30B30B
        1083,  // imageAtomicAdd_01L00D00D
        1085,  // texture_00i20B00B
        1086,  // gl_MaxComputeWorkGroupCount
        1088,  // clamp_20C00C00C
        1089,  // imageAtomicMax_01X10D00E
        1091,  // imageLoad_01i00D
        1093,  // mix_30E30E30F
        1095,  // gl_FragColor
        1097,  // imageAtomicMin_01G20D00D
        1099,  // imageAtomicMin_01G20D00E
        1101,  // imageAtomicExchange_01S10D00D00D
        1103,  // atan_20B
        1105,  // interpolateAtSample_30B00D
        1108,  // dFdxCoarse_30B
        1109,  // texture_00M10B
        1110,  // gl_PerVertex
        1113,  // min_10B10B
        1115,  // textureLodOffset_00h10B00B00D
        1116,  // EndStreamPrimitive_00D
        1117,  // pow_10B10B
        1119,  // texture_00Y20B
        1121,  // imageAtomicXor_01P10D00D
        1123,  // texture_00X10B00B
        1125,  // frexp_00B00D
        1127,  // gl_MaxTessControlOutputComponents
        1128,  // texture2D_00I10B
        1130,  // imageLoad_01O10D
        1131,  // ceil_20C
        1132,  // ceil_20B
        1134,  // imageAtomicMin_01b20D00E
        1136,  // imageAtomicMin_01b20D00D
        1138,  // imageAtomicMax_01P10D00D
        1140,  // imageAtomicMax_01P10D00E
        1142,  // imageAtomicExchange_01P10D00B
        1144,  // textureProjOffset_00R20B10D
        1146,  // imageStore_01V20D00D30D
        1147,  // subpassLoad_01m00D
        1148,  // textureOffset_00I10B10D
        1150,  // min_20B00B
        1152,  // reflect_00B00B
        1154,  // noise4_10B
        1155,  // sqrt_10C
        1156,  // sqrt_10B
        1158,  // clamp_20E20E20E
        1160,  // textureGradOffset_00g00B00B00B00D
        1161,  // textureGather_00q20B
        1162,  // noise3_00B
        1163,  // imageAtomicOr_01G20D00D
        1165,  // imageAtomicOr_01G20D00E
        1167,  // imageAtomicMin_01C20D00D
        1169,  // imageAtomicMin_01C20D00E
        1171,  // gl_TessCoord
        1173,  // gl_MaxPatchVertices
        1174,  // imageAtomicAnd_01F20D00E
        1176,  // imageStore_01a20D30B
        1178,  // textureProjLod_00d30B00B
        1180,  // imageLoad_01H20D
        1182,  // textureProjGradOffset_00I20B10B10B10D
        1184,  // interpolateAtSample_20B00D
        1187,  // reflect_10B10B
        1189,  // refract_10B10B00B
        1191,  // imageAtomicMax_01h00D00D
        1193,  // mix_20C20C20F
        1194,  // imageAtomicExchange_01X10D00D
        1196,  // imageAtomicExchange_01X10D00E
        1198,  // mix_20C20C20C
        1199,  // textureOffset_00v10B10D
        1200,  // imageAtomicExchange_01Q10D00E
        1202,  // imageAtomicExchange_01Q10D00D
        1204,  // imageAtomicMin_01P10D00D
        1206,  // sinh_30B
        1208,  // textureSize_00m00D
        1209,  // imageAtomicMin_01N00D00E
        1211,  // imageAtomicMin_01N00D00D
        1213,  // textureQueryLod_00e20B
        1214,  // asinh_20B
        1216,  // imageAtomicAdd_01C20D00D
        1218,  // imageAtomicCompSwap_01I20D00D00D
        1220,  // textureProj_00O20B
        1222,  // imageAtomicCompSwap_01M00D00E00E
        1224,  // frexp_10B10D
        1226,  // inverse_50B
        1228,  // dot_10B10B
        1230,  // gl_TessLevelOuter
        1232,  // noise2_00B
        1233,  // textureProjGradOffset_00o10B00B00B00D
        1234,  // radians_20B
        1236,  // atomicCompSwap_00E00E00E
        1238,  // textureGrad_00I00B00B00B
        1239,  // textureGrad_00Y20B20B20B
        1241,  // imageAtomicCompSwap_01Z10D00D00D
        1243,  // gl_MaxVertexUniformVectors
        1245,  // imageAtomicExchange_01W20D00D00B
        1247,  // textureOffset_00o00B00D00B
        1248,  // imageAtomicExchange_01W20D00D00E
        1250,  // imageAtomicExchange_01W20D00D00D
        1252,  // ftransform_
        1253,  // textureProj_00X20B
        1255,  // textureProjOffset_00n30B10D
        1256,  // imageAtomicOr_01W20D00D00E
        1258,  // imageAtomicOr_01W20D00D00D
        1260,  // greaterThanEqual_20E20E
        1262,  // gl_NumSamples
        1263,  // textureProj_00M20B
        1264,  // texture3DProjLod_00J30B00B
        1266,  // isinf_30C
        1267,  // imageAtomicAdd_01Z10D00E
        1269,  // imageAtomicAdd_01Z10D00D
        1271,  // mix_10D10D10F
        1273,  // textureProjGrad_00g10B00B00B
        1274,  // log_20B
        1276,  // imageAtomicMax_01D20D00E
        1278,  // imageAtomicMax_01D20D00D
        1280,  // textureOffset_00h10B00D00B
        1281,  // modf_30B30B
        1283,  // roundEven_20C
        1284,  // roundEven_20B
        1286,  // outerProduct_30B10B
        1288,  // textureProj_00J30B
        1290,  // imageAtomicOr_01F20D00E
        1292,  // imageAtomicOr_01F20D00D
        1294,  // textureLodOffset_00t00B00B00D
        1295,  // floatBitsToInt_20B
        1297,  // texelFetch_00U20D00D
        1299,  // max_00D00D
        1301,  // round_20C
        1302,  // atomicMin_00E00E
        1304,  // textureGradOffset_00v10B10B10B10D
        1305,  // textureGrad_00n20B10B10B
        1306,  // imageLoad_01S10D00D
        1307,  // shadow2DEXT_00d20B
        1308,  // textureGatherOffsets_00a20B10Dx4
        1311,  // max_20E20E
        1313,  // gl_MaxCullDistances
        1314,  // imageAtomicCompSwap_01F20D00D00D
        1316,  // abs_10D
        1318,  // abs_10B
        1320,  // abs_10C
        1321,  // gl_FragDepthEXT
        1322,  // imageAtomicAdd_01V20D00D00D
        1324,  // gl_ClipDistance
        1326,  // modf_30C30C
        1327,  // imageAtomicMin_01T10D00D00E
        1329,  // imageAtomicMin_01T10D00D00D
        1331,  // textureGrad_00i20B00B00B
        1332,  // textureProj_00g10B
        1333,  // equal_20B20B
        1335,  // textureProjLodOffset_00X20B00B10D
        1337,  // max_30C00C
        1338,  // gl_MaxTessEvaluationImageUniforms
        1339,  // texture_00U20B00B
        1341,  // textureProj_00I30B
        1343,  // mix_00E00E00F
        1345,  // imageAtomicCompSwap_01h00D00D00D
        1347,  // mix_00D00D00F
        1349,  // textureProjOffset_00q20B10D
        1350,  // texture_00i20B
        1351,  // textureGradOffset_00a20B10B10B10D
        1353,  // smoothstep_00B00B20B
        1355,  // textureLod_00s30B00B
        1357,  // imageAtomicOr_01C20D00D
        1359,  // imageAtomicOr_01C20D00E
        1361,  // imageAtomicXor_01g00D00E
        1363,  // notEqual_30B30B
        1365,  // textureGatherOffset_00f20B00B10D
        1367,  // imageAtomicAnd_01N00D00D
        1369,  // imageAtomicAnd_01N00D00E
        1371,  // imageSize_00z
        1373,  // mod_10C10C
        1374,  // imageAtomicXor_01g00D00D
        1376,  // faceforward_00C00C00C
        1377,  // textureGrad_00a20B10B10B
        1379,  // dFdxCoarse_00B
        1380,  // imageAtomicMin_01a20D00D
        1382,  // texture_00J20B00B
        1384,  // refract_20B20B00B
        1386,  // ceil_30C
        1387,  // gl_MaxGeometryOutputComponents
        1388,  // noise1_30B
        1389,  // gl_MaxTessControlAtomicCounters
        1390,  // log2_30B
        1392,  // gl_MaxTessControlImageUniforms
        1393,  // textureProjGrad_00d30B10B10B
        1395,  // mod_20C20C
        1396,  // fract_30C
        1397,  // texelFetch_00t00D00D
        1398,  // imageAtomicXor_01L00D00D
        1400,  // max_30E30E
        1402,  // gl_MaxFragmentAtomicCounterBuffers
        1404,  // gl_in
        1407,  // noise4_00B
        1408,  // distance_10C10C
        1409,  // textureProjLodOffset_00J30B00B20D
        1411,  // imageAtomicExchange_01O10D00B
        1413,  // imageAtomicMax_01H20D00E
        1415,  // imageAtomicMax_01H20D00D
        1417,  // imageStore_01h00D30D
        1419,  // imageAtomicExchange_01O10D00D
        1421,  // texelFetch_00c20D00D
        1423,  // sqrt_00B
        1425,  // sqrt_00C
        1426,  // textureProjLod_00R30B00B
        1428,  // noise3_10B
        1429,  // texelFetch_00q10D
        1430,  // imageAtomicAnd_01F20D00D
        1432,  // textureLod_00m20B00B
        1433,  // textureProjOffset_00m30B00D00B
        1434,  // textureProjGrad_00v30B10B10B
        1435,  // clamp_20D20D20D
        1437,  // imageAtomicMin_01P10D00E
        1439,  // imageAtomicAdd_01C20D00E
        1441,  // clamp_00C00C00C
        1442,  // imageAtomicXor_01N00D00D
        1444,  // imageAtomicXor_01N00D00E
        1446,  // texture_00x30B
        1447,  // max_10E00E
        1449,  // imageLoad_01c20D
        1451,  // textureGrad_00U20B10B10B
        1453,  // imageLoad_00z10D
        1455,  // clamp_30C00C00C
        1456,  // textureGatherOffsets_00a20B10Dx400D
        1459,  // sinh_20B
        1461,  // matrixCompMult_E0BE0B
        1462,  // fwidthFine_00B
        1463,  // gl_MaxTessEvaluationAtomicCounterBuffers
        1464,  // textureGradOffset_00m20B00B00B00D
        1465,  // imageAtomicMin_01K20D00E
        1467,  // textureQueryLevels_00p
        1468,  // gl_WorkGroupSize
        1470,  // asinh_30B
        1472,  // cross_20C20C
        1473,  // textureGather_00a20B
        1475,  // textureProjGradOffset_00O20B10B10B10D
        1476,  // pow_30B30B
        1478,  // imageAtomicCompSwap_01G20D00E00E
        1480,  // smoothstep_10B10B10B
        1482,  // textureProj_00O30B
        1484,  // textureQueryLod_00R10B
        1485,  // imageAtomicAdd_01R10D00D00D
        1487,  // imageAtomicAdd_01R10D00D00E
        1489,  // imageAtomicExchange_01E20D00D
        1491,  // imageAtomicMin_01Q10D00E
        1493,  // imageAtomicMin_01Q10D00D
        1495,  // imageAtomicExchange_01E20D00E
        1497,  // isnan_00B
        1499,  // isnan_00C
        1500,  // imulExtended_10D10D10D10D
        1502,  // textureProjGrad_00o10B00B00B
        1503,  // imageAtomicMax_01i00D00D
        1505,  // imageAtomicMax_01i00D00E
        1507,  // refract_10C10C00B
        1508,  // min_00E00E
        1510,  // imageStore_01T10D00D30E
        1511,  // texture2DProj_00I30B
        1513,  // textureGradOffset_00I10B10B10B10D
        1515,  // textureLodOffset_00J20B00B20D
        1517,  // notEqual_20B20B
        1519,  // atomicCompSwap_00D00D00D
        1521,  // Empty
        1521,  // textureOffset_00i20B00D
        1522,  // dFdyFine_00B
        1523,  // textureLod_00a20B00B
        1525,  // textureProj_00N30B
        1526,  // refract_30C30C00B
        1527,  // equal_30D30D
        1529,  // imageStore_01D20D30D
        1531,  // packSnorm2x16_10B
        1533,  // floatBitsToUint_30B
        1535,  // textureOffset_00R10B10D
        1537,  // textureProjGrad_00q20B10B10B
        1538,  // textureProjGradOffset_00R20B10B10B10D
        1540,  // ldexp_30B30D
        1542,  // max_30B00B
        1544,  // atomicCounterOr_00G00E
        1545,  // imageAtomicMin_01i00D00E
        1547,  // gl_TessLevelInner
        1549,  // step_30B30B
        1551,  // textureProj_00I30B00B
        1553,  // imageAtomicExchange_01D20D00E
        1555,  // textureOffset_00g00B00D00B
        1556,  // imageAtomicExchange_01D20D00B
        1558,  // imageAtomicMin_01g00D00E
        1560,  // imageAtomicMax_01c20D00D
        1562,  // abs_00D
        1564,  // abs_00C
        1565,  // abs_00B
        1567,  // textureLod_00R10B00B
        1569,  // dFdxCoarse_10B
        1570,  // texture1D_00g00B
        1571,  // frexp_10C10D
        1572,  // imageAtomicAdd_01g00D00E
        1574,  // texture2DLod_00I10B00B
        1576,  // textureProjGradOffset_00X20B10B10B10D
        1578,  // imageAtomicMax_01Z10D00D
        1580,  // gl_MaxComputeAtomicCounters
        1582,  // texture_00s30B
        1583,  // EndPrimitive_
        1585,  // step_00B30B
        1587,  // round_20B
        1589,  // equal_30E30E
        1591,  // imageAtomicCompSwap_01R10D00D00E00E
        1593,  // imageAtomicAdd_01M00D00D
        1595,  // step_00C20C
        1596,  // dot_00C00C
        1597,  // max_30C30C
        1598,  // atomicOr_00D00D
        1600,  // texture2DProj_00M20B
        1601,  // notEqual_10D10D
        1603,  // imageAtomicExchange_01Z10D00D
        1605,  // textureSize_00V
        1608,  // imageAtomicAnd_01h00D00D
        1610,  // min_20C00C
        1611,  // imageAtomicAdd_01G20D00E
        1613,  // imageAtomicAdd_01G20D00D
        1615,  // findLSB_30D
        1617,  // findLSB_30E
        1619,  // textureProj_00X20B00B
        1621,  // shadow2D_00d20B
        1622,  // textureGatherOffset_00U20B10D
        1624,  // imageAtomicExchange_01Z10D00E
        1626,  // faceforward_10B10B10B
        1628,  // gl_MaxTessControlAtomicCounterBuffers
        1629,  // imageAtomicAnd_01h00D00E
        1631,  // min_10D00D
        1633,  // imageAtomicCompSwap_01J20D00D00D
        1635,  // all_20F
        1637,  // imageSize_01J
        1639,  // imageSize_01K
        1641,  // textureOffset_00t00B00D00B
        1642,  // imageSize_01I
        1644,  // packHalf2x16_10B
        1646,  // textureProj_00I20B00B
        1648,  // imageSize_01L
        1649,  // imageSize_01M
        1650,  // imageSize_01B
        1652,  // imageSize_01C
        1654,  // texelFetch_00r00D
        1656,  // imageSize_01F
        1658,  // imageSize_01G
        1660,  // imageSize_01D
        1662,  // imageSize_01E
        1664,  // imageAtomicExchange_01L00D00B
        1666,  // imageAtomicExchange_01L00D00E
        1668,  // texelFetch_00X10D00D
        1670,  // notEqual_30F30F
        1672,  // imageSize_01R
        1673,  // imageSize_01S
        1674,  // imageSize_01P
        1675,  // imageSize_01Q
        1676,  // imageSize_01V
        1677,  // textureQueryLod_00g00B
        1678,  // imageSize_01T
        1679,  // imageSize_01U
        1680,  // imageSize_01h
        1682,  // imageSize_01i
        1684,  // fract_20C
        1685,  // fract_20B
        1687,  // textureGatherOffset_00X10B10D
        1689,  // imageSize_01c
        1691,  // imageStore_01R10D00D30B
        1692,  // imageSize_01a
        1694,  // imageSize_01f
        1695,  // texture2DProjGradEXT_00I20B10B10B
        1696,  // imageSize_01d
        1697,  // textureLod_00S20B00B
        1699,  // step_30C30C
        1700,  // imageAtomicMin_01J20D00D
        1702,  // gl_FragDepth
        1704,  // textureGather_00x30B
        1706,  // mix_30B30B30F
        1708,  // mix_30B30B30B
        1710,  // textureGather_00Z20B00D
        1712,  // imageAtomicAnd_01Z10D00E
        1714,  // imageAtomicAnd_01Z10D00D
        1716,  // imageStore_01E20D30E
        1718,  // sqrt_30C
        1719,  // sqrt_30B
        1721,  // exp_00B
        1723,  // max_30D30D
        1725,  // gl_MaxGeometryTextureImageUnits
        1726,  // interpolateAtCentroid_10B
        1729,  // texture_00q10B
        1730,  // textureSize_00M00D
        1731,  // textureSamples_00c
        1732,  // angle_BaseInstance
        1733,  // mix_10F10F10F
        1735,  // textureGradOffset_00U20B10B10B10D
        1737,  // gl_Position
        1742,  // textureGradOffset_00O10B10B10B10D
        1743,  // textureProj_00M30B
        1744,  // textureGradOffset_00L20B10B10B10D
        1746,  // imageAtomicExchange_01V20D00D00D
        1748,  // imageAtomicExchange_01J20D00B
        1750,  // imageAtomicExchange_01J20D00E
        1752,  // imageAtomicExchange_01J20D00D
        1754,  // textureQueryLod_00l20B
        1755,  // imageAtomicOr_01M00D00E
        1757,  // dot_20B20B
        1759,  // textureProjGrad_00v20B10B10B
        1760,  // textureProjLod_00S30B00B
        1762,  // textureProjGrad_00R20B10B10B
        1764,  // imageAtomicAnd_01i00D00E
        1766,  // imageAtomicAnd_01i00D00D
        1768,  // imageAtomicMax_00z10D00E
        1770,  // imageAtomicMax_00z10D00D
        1772,  // normalize_30C
        1773,  // normalize_30B
        1775,  // textureOffset_00O10B10D
        1776,  // textureProjGrad_00I20B10B10B
        1778,  // textureGather_00e20B
        1779,  // imageAtomicMax_01V20D00D00E
        1781,  // texture2D_00M10B
        1782,  // imageAtomicAdd_01a20D00E
        1784,  // fwidthFine_30B
        1785,  // textureGather_00K20B00D
        1787,  // textureCubeLodEXT_00K20B00B
        1788,  // textureGather_00T20B00D
        1790,  // textureProj_00N20B
        1791,  // textureQueryLod_00I10B
        1792,  // imageAtomicCompSwap_01A10D00E00E
        1794,  // dFdyFine_10B
        1795,  // modf_10C10C
        1796,  // imageAtomicMax_01E20D00D
        1798,  // imageAtomicMax_01E20D00E
        1800,  // textureProjLodOffset_00X30B00B10D
        1802,  // imageStore_01W20D00D30E
        1803,  // gl_MaxSamples
        1804,  // textureProjLod_00m30B00B
        1805,  // textureProjOffset_00g30B00D00B
        1806,  // texelFetchOffset_00U20D00D10D
        1808,  // imageAtomicCompSwap_00z10D00E00E
        1810,  // imageAtomicMin_01D20D00E
        1812,  // textureProjGradOffset_00q30B10B10B10D
        1813,  // textureGradOffset_00d20B10B10B10D
        1815,  // fwidthCoarse_20B
        1816,  // imageAtomicCompSwap_01N00D00E00E
        1818,  // textureProjOffset_00d30B10D
        1820,  // imageAtomicOr_01T10D00D00E
        1822,  // imageAtomicOr_01T10D00D00D
        1824,  // equal_20F20F
        1826,  // mix_20C20C00C
        1827,  // usubBorrow_10E10E10E
        1829,  // equal_10B10B
        1831,  // textureLodOffset_00U20B00B10D
        1833,  // isnan_10C
        1834,  // isnan_10B
        1836,  // imageAtomicMin_01H20D00D
        1838,  // imageAtomicXor_01A10D00D
        1840,  // imageAtomicXor_01A10D00E
        1842,  // imageAtomicCompSwap_01C20D00D00D
        1844,  // textureGrad_00R00B00B00B
        1845,  // atomicMin_00D00D
        1847,  // textureSize_00X00D
        1849,  // greaterThan_10B10B
        1851,  // mix_00C00C00C
        1852,  // noise1_20B
        1853,  // clamp_30D00D00D
        1855,  // mix_20E20E20F
        1857,  // floatBitsToInt_10B
        1859,  // textureProjOffset_00R30B10D00B
        1861,  // textureGather_00U20B00D
        1863,  // floatBitsToInt_00B
        1865,  // imageLoad_01a20D
        1867,  // floatBitsToUint_00B
        1869,  // min_30C30C
        1870,  // textureSamples_00Q
        1871,  // textureGradOffset_00i20B00B00B00D
        1872,  // imageAtomicXor_00z10D00D
        1874,  // texture2DRectProj_00O20B
        1875,  // modf_20C20C
        1876,  // tan_20B
        1878,  // floor_00C
        1879,  // floor_00B
        1881,  // imageAtomicMax_01O10D00E
        1883,  // imageAtomicMax_01O10D00D
        1885,  // mod_30C30C
        1886,  // gl_DrawID
        1887,  // textureOffset_00t00B00D
        1888,  // texture3DLod_00J20B00B
        1890,  // imageLoad_01Q10D
        1891,  // texture_00R10B00B
        1893,  // imageStore_01Y10D30D
        1894,  // modf_00B00B
        1896,  // notEqual_20D20D
        1898,  // imageAtomicExchange_01R10D00D00E
        1900,  // imageAtomicExchange_01R10D00D00D
        1902,  // ldexp_10C10D
        1903,  // imageAtomicExchange_01F20D00E
        1905,  // determinant_A0B
        1906,  // imageAtomicExchange_01i00D00D
        1908,  // textureLodOffset_00i20B00B00D
        1909,  // imageAtomicExchange_01i00D00B
        1911,  // shadow1DLod_00m20B00B
        1912,  // imageAtomicOr_01I20D00E
        1914,  // distance_00C00C
        1915,  // isnan_30B
        1917,  // textureProjOffset_00o30B00D
        1918,  // lessThanEqual_30D30D
        1920,  // textureProj_00M30B00B
        1921,  // texture2DProj_00M30B
        1922,  // atomicCounterMax_00G00E
        1923,  // atomicCounterExchange_00G00E
        1924,  // textureGrad_00I10B10B10B
        1926,  // step_00B20B
        1928,  // texture2DProjLod_00I20B00B
        1930,  // step_00C30C
        1931,  // yuv_2_rgb_20B00H
        1932,  // texelFetch_00b10D00D
        1935,  // textureProj_00J30B00B
        1937,  // textureGather_00R10B
        1939,  // imageAtomicCompSwap_01c20D00D00D
        1941,  // imageAtomicOr_01V20D00D00D
        1943,  // imageAtomicOr_01V20D00D00E
        1945,  // imageAtomicExchange_01P10D00D
        1947,  // imageLoad_01L00D
        1948,  // min_10D10D
        1950,  // all_30F
        1952,  // imageAtomicExchange_01P10D00E
        1954,  // imageAtomicAnd_01S10D00D00E
        1956,  // imageAtomicAnd_01S10D00D00D
        1958,  // angle_BaseVertex
        1959,  // bitfieldReverse_20D
        1961,  // bitfieldReverse_20E
        1963,  // imageAtomicExchange_01I20D00D
        1965,  // imageAtomicExchange_01I20D00E
        1967,  // imageAtomicExchange_01I20D00B
        1969,  // imageAtomicExchange_01c20D00E
        1971,  // gl_MaxGeometryInputComponents
        1972,  // textureGatherOffsets_00X10B10Dx4
        1975,  // texture_00u20B
        1976,  // textureGather_00v20B
        1977,  // fract_10B
        1979,  // fract_10C
        1980,  // textureGatherOffset_00O10B10D00D
        1981,  // textureQueryLod_00K20B
        1982,  // textureLodOffset_00I10B00B10D
        1984,  // imageAtomicCompSwap_01S10D00D00E00E
        1986,  // imageAtomicXor_01c20D00E
        1988,  // imageAtomicXor_01c20D00D
        1990,  // textureOffset_00U20B10D
        1992,  // min_30B00B
        1994,  // atomicAnd_00D00D
        1996,  // exp_10B
        1998,  // textureOffset_00n20B10D
        1999,  // bitCount_30D
        2001,  // unpackUnorm2x16_00E
        2003,  // sqrt_20B
        2005,  // sqrt_20C
        2006,  // textureGrad_00L20B10B10B
        2008,  // interpolateAtCentroid_00B
        2011,  // textureSize_00o00D
        2012,  // gl_MaxTessEvaluationUniformComponents
        2013,  // gl_MaxImageUnits
        2015,  // textureProjGrad_00o30B00B00B
        2016,  // imageAtomicOr_01Q10D00D
        2018,  // packUnorm4x8_30B
        2020,  // imageAtomicMax_01Q10D00E
        2022,  // texelFetch_00P10D00D
        2025,  // imageAtomicCompSwap_01i00D00D00D
        2027,  // textureGatherOffsets_00d10B00B10Dx4
        2030,  // texture_00O10B
        2032,  // imageAtomicMin_01M00D00D
        2034,  // imageAtomicMin_01M00D00E
        2036,  // texture_00e30B00B
        2038,  // imageAtomicMin_01O10D00E
        2040,  // imageAtomicMin_01O10D00D
        2042,  // gl_FragCoord
        2044,  // imageAtomicMax_01Q10D00D
        2046,  // imageAtomicMax_01X10D00D
        2048,  // textureGrad_00u10B00B00B
        2049,  // fwidthFine_20B
        2050,  // textureQueryLod_00o00B
        2051,  // imageAtomicAnd_01E20D00E
        2053,  // imageAtomicAnd_01E20D00D
        2055,  // normalize_00B
        2057,  // normalize_00C
        2058,  // clamp_10C00C00C
        2059,  // imageAtomicOr_01A10D00E
        2061,  // imageAtomicOr_01A10D00D
        2063,  // imageAtomicCompSwap_01Q10D00E00E
        2065,  // atomicMax_00D00D
        2067,  // textureProjGrad_00m30B00B00B
        2068,  // imageAtomicAnd_01R10D00D00E
        2070,  // floatBitsToUint_10B
        2072,  // textureLod_00J20B00B
        2074,  // textureGrad_00O10B10B10B
        2075,  // dFdyFine_20B
        2076,  // imageLoad_01W20D00D
        2077,  // textureSize_00I00D
        2079,  // gl_MaxComputeWorkGroupSize
        2081,  // texelFetchOffset_00R10D00D10D
        2083,  // dFdxFine_10B
        2084,  // imageAtomicExchange_01D20D00D
        2086,  // textureLodOffset_00X10B00B10D
        2088,  // texture_00T20B00B
        2090,  // gl_out
        2092,  // log_30B
        2094,  // notEqual_20F20F
        2096,  // allInvocationsEqual_00F
        2097,  // imageAtomicMax_01K20D00D
        2099,  // imageAtomicMax_01K20D00E
        2101,  // dFdyCoarse_30B
        2102,  // textureProjLod_00R20B00B
        2104,  // notEqual_30D30D
        2106,  // fwidthCoarse_30B
        2107,  // textureProjOffset_00I20B10D
        2109,  // textureQueryLevels_00l
        2110,  // textureQueryLevels_00m
        2111,  // textureQueryLevels_00o
        2112,  // textureQueryLevels_00h
        2113,  // textureQueryLevels_00i
        2114,  // textureQueryLevels_00k
        2115,  // textureQueryLevels_00d
        2116,  // textureQueryLevels_00e
        2117,  // textureQueryLevels_00f
        2118,  // textureQueryLevels_00g
        2119,  // gl_MaxDrawBuffers
        2121,  // textureQueryLevels_00a
        2122,  // atomicCounterMin_00G00E
        2123,  // textureGradOffset_00u10B00B00B00D
        2124,  // gl_MaxCombinedTextureImageUnits
        2126,  // textureQueryLevels_00x
        2127,  // textureQueryLevels_00t
        2128,  // textureQueryLevels_00u
        2129,  // imageAtomicMin_01K20D00D
        2131,  // imulExtended_20D20D20D20D
        2133,  // any_30F
        2135,  // distance_30B30B
        2137,  // textureQueryLevels_00s
        2138,  // textureQueryLevels_00L
        2139,  // textureQueryLevels_00I
        2140,  // textureQueryLevels_00J
        2141,  // textureQueryLevels_00K
        2142,  // imageAtomicExchange_01L00D00D
        2144,  // texture3D_00J20B00B
        2146,  // texture1DLod_00g00B00B
        2147,  // textureQueryLevels_00X
        2148,  // textureQueryLevels_00Y
        2149,  // textureQueryLevels_00Z
        2150,  // dot_30B30B
        2152,  // textureQueryLevels_00T
        2153,  // textureQueryLevels_00U
        2154,  // textureQueryLevels_00R
        2155,  // textureQueryLevels_00S
        2156,  // gl_MaxTextureImageUnits
        2158,  // usubBorrow_20E20E20E
        2160,  // textureProj_00t30B00B
        2161,  // shadow1DProj_00m30B00B
        2162,  // clamp_30B00B00B
        2164,  // textureGatherOffsets_00O10B10Dx4
        2165,  // texture2DRectProj_00O30B
        2166,  // max_10D00D
        2168,  // textureGradOffset_00n20B10B10B10D
        2169,  // clamp_00D00D00D
        2171,  // floor_30B
        2173,  // floor_30C
        2174,  // imageStore_01P10D30D
        2175,  // textureProjGradOffset_00S30B20B20B20D
        2177,  // reflect_30C30C
        2178,  // gl_PointCoord
        2180,  // imageAtomicOr_01D20D00E
        2182,  // textureGatherOffset_00v10B10D
        2183,  // imageAtomicOr_01D20D00D
        2185,  // imageStore_01F20D30B
        2187,  // packDouble2x32_10E
        2188,  // clamp_10B00B00B
        2190,  // texelFetchOffset_00S20D00D20D
        2192,  // lessThan_10D10D
        2194,  // textureSize_00g00D
        2195,  // textureGatherOffset_00U20B10D00D
        2197,  // textureGatherOffset_00q10B10D00D
        2198,  // textureGather_00I10B00D
        2200,  // texture1DProjLod_00g30B00B
        2201,  // texelFetch_00V10D00D
        2204,  // imageAtomicExchange_01h00D00E
        2206,  // imageAtomicExchange_01h00D00D
        2208,  // atan_30B30B
        2210,  // imageAtomicExchange_01h00D00B
        2212,  // imageAtomicMax_01a20D00D
        2214,  // imageAtomicMax_01a20D00E
        2216,  // textureProjLod_00g30B00B
        2217,  // max_00B00B
        2219,  // imageAtomicOr_01J20D00E
        2221,  // imageAtomicOr_01J20D00D
        2223,  // imageAtomicMax_01F20D00E
        2225,  // imageAtomicMax_01F20D00D
        2227,  // exp2_20B
        2229,  // smoothstep_30C30C30C
        2230,  // imageAtomicExchange_00z10D00B
        2232,  // imageAtomicExchange_00z10D00E
        2234,  // imageAtomicExchange_00z10D00D
        2236,  // textureProj_00q20B
        2237,  // textureProjLod_00t10B00B
        2238,  // imageAtomicMin_01c20D00D
        2240,  // imageAtomicMin_01c20D00E
        2242,  // textureSize_00k00D
        2244,  // reflect_20B20B
        2246,  // imageAtomicXor_01V20D00D00E
        2248,  // imageAtomicXor_01V20D00D00D
        2250,  // equal_10F10F
        2252,  // acos_30B
        2254,  // textureVideoWEBGL_00y10B
        2256,  // dFdx_10B
        2259,  // bitfieldReverse_30E
        2261,  // bitfieldReverse_30D
        2263,  // imageAtomicOr_01Z10D00D
        2265,  // imageAtomicOr_01Z10D00E
        2267,  // texture1DProj_00g30B
        2268,  // textureGatherOffsets_00v10B10Dx400D
        2269,  // fract_00C
        2270,  // fract_00B
        2272,  // min_30E00E
        2274,  // gl_MinProgramTexelOffset
        2276,  // imageAtomicOr_01Q10D00E
        2278,  // interpolateAtOffset_20B10B
        2281,  // imageAtomicOr_01c20D00D
        2283,  // imageAtomicOr_01c20D00E
        2285,  // reflect_30B30B
        2287,  // interpolateAtCentroid_30B
        2290,  // textureGather_00s30B
        2292,  // imageAtomicXor_01X10D00E
        2294,  // imageAtomicXor_01X10D00D
        2296,  // memoryBarrier_
        2298,  // texture1D_00g00B00B
        2299,  // pow_00B00B
        2301,  // mod_00B00B
        2303,  // faceforward_30C30C30C
        2304,  // imageAtomicExchange_01K20D00D
        2306,  // roundEven_10B
        2308,  // roundEven_10C
        2309,  // atanh_30B
        2311,  // textureLod_00K20B00B
        2313,  // bitCount_20D
        2315,  // bitCount_20E
        2317,  // texelFetch_00L20D00D
        2319,  // dFdxFine_00B
        2320,  // imageAtomicAnd_01K20D00E
        2322,  // distance_20B20B
        2324,  // textureGradOffset_00q10B10B10B10D
        2325,  // uaddCarry_30E30E30E
        2327,  // textureSize_00U00D
        2329,  // textureProjOffset_00o10B00D00B
        2330,  // gl_MaxCombinedImageUniforms
        2332,  // atomicCounterXor_00G00E
        2333,  // imageAtomicOr_01g00D00D
        2335,  // imageAtomicOr_01g00D00E
        2337,  // gl_GlobalInvocationID
        2339,  // gl_LocalInvocationIndex
        2341,  // gl_VertexID
        2343,  // imageAtomicMin_01L00D00E
        2345,  // smoothstep_20C20C20C
        2346,  // imageAtomicCompSwap_01U20D00D00D00D
        2348,  // atomicOr_00E00E
        2350,  // mix_10B10B10F
        2352,  // reflect_10C10C
        2353,  // mix_10B10B10B
        2355,  // textureProj_00Y30B00B
        2357,  // imageAtomicMax_01I20D00D
        2359,  // imageAtomicMax_01I20D00E
        2361,  // frexp_20B20D
        2363,  // textureGatherOffset_00I10B10D00D
        2365,  // notEqual_20E20E
        2367,  // textureLodOffset_00d20B00B10D
        2369,  // inverse_A0B
        2371,  // textureProjGrad_00X20B10B10B
        2373,  // textureSize_00Y00D
        2375,  // atan_20B20B
        2377,  // usubBorrow_00E00E00E
        2379,  // imageAtomicXor_01M00D00E
        2381,  // textureGatherOffsets_00L20B10Dx400D
        2384,  // dFdyFine_30B
        2385,  // textureQueryLod_00s20B
        2386,  // texture_00v10B
        2387,  // textureGatherOffsets_00U20B10Dx4
        2390,  // subpassLoad_01n00D
        2391,  // imageAtomicCompSwap_01c20D00E00E
        2393,  // textureProjLodOffset_00g10B00B00D
        2394,  // step_10C10C
        2395,  // textureQueryLod_00x20B
        2396,  // fma_10B10B10B
        2399,  // smoothstep_00B00B10B
        2401,  // imageAtomicCompSwap_01a20D00D00D
        2403,  // imageSize_01N
        2404,  // textureLod_00u10B00B
        2405,  // textureProjGradOffset_00m30B00B00B00D
        2406,  // fwidthCoarse_00B
        2407,  // dFdyCoarse_20B
        2408,  // textureProjGradOffset_00o30B00B00B00D
        2409,  // imageStore_01b20D30D
        2411,  // textureProj_00g30B00B
        2412,  // bitfieldExtract_00E00D00D
        2414,  // distance_30C30C
        2415,  // any_20F
        2417,  // gl_HelperInvocation
        2419,  // textureLod_00g00B00B
        2420,  // sin_10B
        2422,  // gl_MaxClipDistances
        2423,  // textureSize_00N00D
        2424,  // mod_20B20B
        2426,  // imageAtomicOr_01h00D00E
        2428,  // imageAtomicOr_01h00D00D
        2430,  // gl_SampleMask
        2431,  // textureGrad_00k30B20B20B
        2433,  // textureProjOffset_00o10B00D
        2434,  // imageAtomicMin_01A10D00E
        2436,  // imageAtomicMin_01A10D00D
        2438,  // textureGradOffset_00f30B10B10B10D
        2440,  // max_20D20D
        2442,  // max_10D10D
        2444,  // textureGradOffset_00t00B00B00B00D
        2445,  // refract_30B30B00B
        2447,  // floor_20C
        2448,  // floor_20B
        2450,  // texelFetchOffset_00t00D00D00D
        2451,  // imageAtomicOr_01a20D00E
        2453,  // matrixCompMult_F0BF0B
        2455,  // umulExtended_10E10E10E10E
        2457,  // texture_00d20B00B
        2459,  // gl_MaxCombinedAtomicCounterBuffers
        2461,  // umulExtended_30E30E30E30E
        2463,  // textureGradOffset_00Y20B20B20B20D
        2465,  // textureGatherOffset_00a20B10D
        2467,  // textureGrad_00f30B10B10B
        2469,  // atomicCounterSubtract_00G00E
        2470,  // imageAtomicXor_01C20D00E
        2472,  // modf_20B20B
        2474,  // imageAtomicAnd_01Y10D00D
        2476,  // imageAtomicAnd_01Y10D00E
        2478,  // imageAtomicAdd_01i00D00E
        2480,  // imageAtomicAdd_01i00D00D
        2482,  // noise1_00B
        2483,  // imageLoad_01M00D
        2484,  // imageAtomicCompSwap_01L00D00E00E
        2486,  // texture_00y10B
        2488,  // length_30C
        2489,  // length_30B
        2491,  // imageStore_01B10D30E
        2493,  // mod_30B30B
        2495,  // mix_10C10C10F
        2496,  // imageAtomicMin_00z10D00E
        2498,  // imageAtomicMin_00z10D00D
        2500,  // imageStore_01I20D30B
        2502,  // exp2_30B
        2504,  // allInvocations_00F
        2505,  // max_20C00C
        2506,  // texture3DProj_00J30B00B
        2508,  // imageAtomicAdd_01K20D00E
        2510,  // imageAtomicAdd_01K20D00D
        2512,  // textureProjLod_00X30B00B
        2514,  // textureProjGradOffset_00I30B10B10B10D
        2516,  // imageAtomicAdd_01W20D00D00D
        2518,  // cosh_30B
        2520,  // textureProj_00q30B
        2521,  // textureOffset_00S20B20D00B
        2523,  // usubBorrow_30E30E30E
        2525,  // imageAtomicMax_01W20D00D00E
        2527,  // imageAtomicMax_01W20D00D00D
        2529,  // textureProjOffset_00R20B10D00B
        2531,  // imageSize_01H
        2533,  // textureOffset_00i20B00D00B
        2534,  // texture3DProj_00J30B
        2536,  // matrixCompMult_B0BB0B
        2537,  // lessThan_30B30B
        2539,  // cross_20B20B
        2541,  // imageSize_01O
        2542,  // textureGrad_00q10B10B10B
        2543,  // clamp_20B00B00B
        2545,  // dFdx_00B
        2548,  // findLSB_00D
        2550,  // textureProjLodOffset_00o30B00B00D
        2551,  // imageAtomicXor_01i00D00E
        2553,  // textureProj_00R20B00B
        2555,  // acos_20B
        2557,  // imageSize_01A
        2559,  // max_20B20B
        2561,  // lessThan_20E20E
        2563,  // textureLod_00X10B00B
        2565,  // equal_30F30F
        2567,  // sign_00C
        2568,  // cosh_00B
        2570,  // bitfieldExtract_00D00D00D
        2572,  // imageAtomicMin_01E20D00D
        2574,  // imageAtomicMin_01E20D00E
        2576,  // textureLod_00Z20B00B
        2578,  // sign_00D
        2580,  // textureOffset_00Y20B20D
        2582,  // imageAtomicXor_01Q10D00D
        2584,  // imageAtomicXor_01Q10D00E
        2586,  // transpose_60B
        2588,  // imageStore_01G20D30D
        2590,  // imageAtomicAdd_01O10D00D
        2592,  // imageAtomicAdd_01O10D00E
        2594,  // faceforward_00B00B00B
        2596,  // imageLoad_01Z10D
        2597,  // imageAtomicOr_01O10D00E
        2599,  // imageAtomicOr_01O10D00D
        2601,  // imageAtomicAdd_01b20D00D
        2603,  // interpolateAtCentroid_20B
        2606,  // textureProjLodOffset_00R30B00B10D
        2608,  // textureGrad_00h10B00B00B
        2609,  // imageAtomicExchange_01U20D00D00B
        2611,  // texture1DProj_00g30B00B
        2612,  // textureQueryLod_00h00B
        2613,  // imageAtomicExchange_01U20D00D00E
        2615,  // modf_00C00C
        2616,  // textureProjLod_00t30B00B
        2617,  // textureOffset_00o00B00D
        2618,  // imageAtomicExchange_01U20D00D00D
        2620,  // imageStore_01H20D30E
        2622,  // textureGather_00U20B
        2624,  // texelFetch_00Q20D00D
        2626,  // roundEven_00C
        2627,  // roundEven_00B
        2629,  // texelFetchOffset_00O10D10D
        2630,  // atanh_20B
        2632,  // clamp_10E00E00E
        2634,  // dFdxFine_30B
        2635,  // imageAtomicAdd_01L00D00E
        2637,  // textureQueryLod_00J20B
        2638,  // textureProjOffset_00X30B10D
        2640,  // gl_MaxFragmentUniformVectors
        2642,  // texture2DProjLod_00I30B00B
        2644,  // interpolateAtOffset_10B10B
        2647,  // max_10C10C
        2648,  // texelFetch_00g00D00D
        2649,  // abs_30B
        2651,  // bitfieldInsert_10E10E00D00D
        2653,  // packSnorm4x8_30B
        2655,  // mix_10B10B00B
        2657,  // imageSize_01b
        2659,  // clamp_30D30D30D
        2661,  // textureGatherOffsets_00L20B10Dx4
        2664,  // imageAtomicMax_01c20D00E
        2666,  // mod_10C00C
        2667,  // imageAtomicMax_01G20D00D
        2669,  // imageAtomicMax_01G20D00E
        2671,  // determinant_F0B
        2672,  // transpose_A0B
        2674,  // pow_20B20B
        2676,  // imageSize_01g
        2678,  // imageAtomicMax_01B10D00D
        2680,  // imageAtomicMax_01B10D00E
        2682,  // imageAtomicExchange_01G20D00B
        2684,  // imageSize_01e
        2685,  // imageAtomicExchange_01G20D00D
        2687,  // imageAtomicExchange_01G20D00E
        2689,  // imageLoad_01Y10D
        2690,  // imageAtomicMax_01g00D00D
        2692,  // imageAtomicMax_01g00D00E
        2694,  // textureProj_00v30B
        2695,  // textureProjGrad_00O20B10B10B
        2696,  // texture_00s30B00B
        2697,  // log2_20B
        2699,  // gl_MaxTessControlUniformComponents
        2700,  // dot_30C30C
        2701,  // fwidthCoarse_10B
        2702,  // textureProjOffset_00I20B10D00B
        2704,  // imageAtomicAnd_01T10D00D00D
        2706,  // imageAtomicAnd_01T10D00D00E
        2708,  // notEqual_10F10F
        2710,  // smoothstep_00B00B00B
        2712,  // textureProjLodOffset_00d30B00B10D
        2714,  // imageAtomicAnd_01P10D00E
        2716,  // imageAtomicAnd_01P10D00D
        2718,  // textureProjLodOffset_00I30B00B10D
        2720,  // gl_MaxCombinedAtomicCounters
        2722,  // bitfieldInsert_10D10D00D00D
        2724,  // imageAtomicCompSwap_01N00D00D00D
        2726,  // imageAtomicCompSwap_01L00D00D00D
        2728,  // textureGather_00k30B
        2730,  // texture_00J20B
        2732,  // lessThanEqual_10D10D
        2734,  // textureProjOffset_00o30B00D00B
        2735,  // gl_MaxVaryingVectors
        2737,  // textureSize_00d00D
        2739,  // sin_00B
        2741,  // uaddCarry_10E10E10E
        2743,  // mix_10C10C00C
        2744,  // atomicCounterIncrement_00G
        2746,  // imageAtomicAdd_01J20D00D
        2748,  // imageAtomicAdd_01J20D00E
        2750,  // imageAtomicCompSwap_01S10D00D00D00D
        2752,  // imageStore_01Q10D30E
        2753,  // textureProj_00o10B00B
        2754,  // imageAtomicAdd_01U20D00D00D
        2756,  // imageAtomicAdd_01U20D00D00E
        2758,  // textureProjOffset_00m30B00D
        2759,  // imageAtomicExchange_01Y10D00B
        2761,  // equal_10E10E
        2763,  // imageAtomicExchange_01Y10D00E
        2765,  // imageAtomicExchange_01Y10D00D
        2767,  // imageLoad_01B10D
        2769,  // imageAtomicExchange_01O10D00E
        2771,  // textureProjOffset_00J30B20D
        2773,  // imageSize_01W
        2774,  // imageAtomicXor_01D20D00E
        2776,  // notEqual_10E10E
        2778,  // min_10C10C
        2779,  // textureProjGrad_00t10B00B00B
        2780,  // imageAtomicExchange_01N00D00B
        2782,  // textureGather_00q20B00D
        2783,  // imageAtomicExchange_01N00D00E
        2785,  // imageAtomicExchange_01N00D00D
        2787,  // textureGatherOffsets_00q10B10Dx400D
        2788,  // imageAtomicCompSwap_01O10D00D00D
        2790,  // shadow1DProjLod_00m30B00B
        2791,  // imageAtomicMin_01i00D00D
        2793,  // texture_00u20B00B
        2794,  // textureLodOffset_00R10B00B10D
        2796,  // trunc_10B
        2798,  // trunc_10C
        2799,  // imageAtomicAdd_01S10D00D00D
        2801,  // texelFetch_00u10D00D
        2802,  // dot_20C20C
        2803,  // gl_DepthRangeParameters
        2805,  // noise4_30B
        2806,  // textureGather_00f20B
        2807,  // noise1_10B
        2808,  // textureProjGrad_00g30B00B00B
        2809,  // shadow2DProj_00d30B
        2810,  // textureProj_00d30B00B
        2812,  // sign_10B
        2814,  // max_00E00E
        2816,  // texture_00a20B00B
        2818,  // textureProj_00o10B
        2819,  // refract_20C20C00B
        2820,  // textureProj_00M20B00B
        2821,  // imageLoad_01A10D
        2823,  // textureProjOffset_00X30B10D00B
        2825,  // exp2_00B
        2827,  // imageAtomicExchange_01H20D00B
        2829,  // texelFetchOffset_00u10D00D00D
        2830,  // imageAtomicCompSwap_01H20D00E00E
        2832,  // imageAtomicExchange_01H20D00E
        2834,  // imageAtomicExchange_01H20D00D
        2836,  // textureGatherOffset_00q10B10D
        2837,  // textureGather_00a20B00D
        2839,  // imageStore_01S10D00D30D
        2840,  // ldexp_00C00D
        2841,  // textureSize_00s00D
        2843,  // imageAtomicXor_01P10D00E
        2845,  // imageAtomicOr_01I20D00D
        2847,  // texture_00N10B00B
        2848,  // gl_PrimitiveID
        2852,  // imageAtomicCompSwap_01Y10D00D00D
        2854,  // textureProjGrad_00I30B10B10B
        2856,  // gl_Layer
        2858,  // textureOffset_00d20B10D
        2860,  // dFdx_30B
        2863,  // textureGatherOffsets_00U20B10Dx400D
        2866,  // imageAtomicMin_01V20D00D00D
        2868,  // imageAtomicMin_01V20D00D00E
        2870,  // gl_LastFragColor
        2871,  // textureProjGradOffset_00t30B00B00B00D
        2872,  // min_20E20E
        2874,  // asin_20B
        2876,  // imageAtomicCompSwap_01U20D00D00E00E
        2878,  // texture_00l30B00B
        2880,  // texture1DProjLod_00g10B00B
        2881,  // fwidth_10B
        2884,  // dFdy_00B
        2887,  // shadow2DLod_00d20B00B
        2888,  // texture1DProj_00g10B
        2889,  // lessThan_30E30E
        2891,  // imulExtended_30D30D30D30D
        2893,  // transpose_70B
        2895,  // imulExtended_00D00D00D00D
        2897,  // imageAtomicAdd_01F20D00D
        2899,  // imageAtomicAdd_01F20D00E
        2901,  // texture_00S20B00B
        2903,  // textureLod_00Y20B00B
        2905,  // imageAtomicExchange_01c20D00D
        2907,  // faceforward_10C10C10C
        2908,  // imageStore_01Z10D30E
        2909,  // textureQueryLod_00u00B
        2910,  // imageAtomicExchange_01c20D00B
        2912,  // min_20D00D
        2914,  // imageAtomicCompSwap_01P10D00D00D
        2916,  // uintBitsToFloat_00E
        2918,  // dFdxFine_20B
        2919,  // imageAtomicMin_01L00D00D
        2921,  // imageAtomicExchange_01g00D00D
        2923,  // bitfieldInsert_20D20D00D00D
        2925,  // mix_30B30B00B
        2927,  // textureQueryLod_00U10B
        2928,  // tanh_00B
        2930,  // subpassLoad_01o00D
        2931,  // imageAtomicMax_01N00D00E
        2933,  // imageAtomicMax_01N00D00D
        2935,  // max_10C00C
        2936,  // matrixCompMult_D0BD0B
        2937,  // imageAtomicXor_01M00D00D
        2939,  // imageAtomicAnd_01X10D00E
        2941,  // shadow2DProjLod_00d30B00B
        2942,  // imageAtomicAnd_01X10D00D
        2944,  // min_30B30B
        2946,  // reflect_20C20C
        2947,  // texelFetch_00h10D00D
        2948,  // memoryBarrierAtomicCounter_
        2950,  // bitfieldInsert_00E00E00D00D
        2952,  // gl_MaxTessControlInputComponents
        2953,  // imageAtomicAdd_01b20D00E
        2955,  // imageAtomicMin_01a20D00E
        2957,  // textureGrad_00d20B10B10B
        2959,  // atan_10B
        2961,  // imageAtomicCompSwap_01g00D00D00D
        2963,  // clamp_30C30C30C
        2964,  // textureProj_00v20B
        2965,  // step_00B10B
        2967,  // textureProjLod_00I20B00B
        2969,  // rgb_2_yuv_20B00H
        2970,  // imageLoad_01P10D
        2971,  // texture_00T20B
        2973,  // log2_10B
        2975,  // imageAtomicAnd_01D20D00D
        2977,  // imageAtomicAnd_01D20D00E
        2979,  // findLSB_20E
        2981,  // findLSB_20D
        2983,  // imageAtomicCompSwap_01B10D00D00D
        2985,  // imageAtomicOr_01X10D00D
        2987,  // imageAtomicOr_01X10D00E
        2989,  // noise2_30B
        2990,  // gl_SampleID
        2991,  // imageAtomicOr_01U20D00D00E
        2993,  // greaterThanEqual_10B10B
        2995,  // clamp_10D10D10D
        2997,  // texelFetch_00M10D00D
        2998,  // textureQueryLod_00Y20B
        2999,  // transpose_F0B
        3001,  // textureOffset_00Y20B20D00B
        3003,  // textureGradOffset_00S20B20B20B20D
        3005,  // imageAtomicOr_01U20D00D00D
        3007,  // clamp_30E30E30E
        3009,  // textureSize_00R00D
        3011,  // acosh_10B
        3013,  // imageLoad_01b20D
        3015,  // imageAtomicCompSwap_01Z10D00E00E
        3017,  // textureOffset_00L20B10D00B
        3019,  // mod_20B00B
        3021,  // imageLoad_01U20D00D
        3022,  // textureProjLod_00J30B00B
        3024,  // subpassLoad_01k
        3025,  // transpose_90B
        3027,  // mix_30C30C00C
        3028,  // subpassLoad_01l
        3029,  // atomicAnd_00E00E
        3031,  // max_20D00D
        3033,  // texelFetchOffset_00I10D00D10D
        3035,  // imageAtomicMin_01Z10D00D
        3037,  // imageAtomicMin_01Z10D00E
        3039,  // imageAtomicCompSwap_01i00D00E00E
        3041,  // imageAtomicCompSwap_01K20D00D00D
        3043,  // textureQueryLod_00L10B
        3044,  // imageStore_01J20D30D
        3046,  // atomicCounter_00G
        3048,  // textureGrad_00m20B00B00B
        3049,  // noise3_20B
        3050,  // bitfieldInsert_30D30D00D00D
        3052,  // min_10C00C
        3053,  // greaterThan_10D10D
        3055,  // bitfieldExtract_10E00D00D
        3057,  // textureGradOffset_00h10B00B00B00D
        3058,  // imageAtomicMax_01V20D00D00D
        3060,  // texture2D_00I10B00B
        3062,  // greaterThan_20D20D
        3064,  // imageAtomicAnd_01W20D00D00D
        3066,  // imageAtomicAnd_01W20D00D00E
        3068,  // textureProjLodOffset_00t10B00B00D
        3069,  // textureProjOffset_00O20B10D
        3070,  // trunc_00B
        3072,  // length_10C
        3073,  // length_10B
        3075,  // imageLoad_01R10D00D
        3076,  // imageAtomicAdd_01H20D00D
        3078,  // imageAtomicAdd_01H20D00E
        3080,  // subpassLoad_01j
        3081,  // dot_00B00B
        3083,  // tan_30B
        3085,  // textureLod_00T20B00B
        3087,  // textureProjGrad_00R30B10B10B
        3089,  // exp2_10B
        3091,  // textureProjOffset_00X20B10D00B
        3093,  // textureProjGradOffset_00X30B10B10B10D
        3095,  // imageAtomicAnd_01B10D00D
        3097,  // imageStore_01U20D00D30B
        3098,  // matrixCompMult_A0BA0B
        3100,  // textureGrad_00S20B20B20B
        3102,  // round_30B
        3104,  // round_30C
        3105,  // anyInvocation_00F
        3106,  // textureGrad_00x30B20B20B
        3108,  // imageAtomicCompSwap_01D20D00E00E
        3110,  // textureProjLod_00o30B00B
        3111,  // smoothstep_00C00C10C
        3112,  // interpolateAtSample_00B00D
        3115,  // dFdx_20B
        3118,  // texture_00L20B
        3120,  // barrier_
        3123,  // imageAtomicOr_01N00D00E
        3125,  // imageAtomicOr_01N00D00D
        3127,  // imageAtomicAdd_01a20D00D
        3129,  // textureGather_00k30B00D
        3131,  // findMSB_20D
        3133,  // textureGatherOffset_00L20B10D
        3135,  // imageAtomicMin_01S10D00D00D
        3137,  // imageLoad_01J20D
        3139,  // textureProjOffset_00S30B20D00B
        3141,  // imageAtomicAdd_01D20D00D
        3143,  // normalize_10C
        3144,  // unpackSnorm4x8_00E
        3146,  // imageLoad_01C20D
        3148,  // imageAtomicMax_01C20D00D
        3150,  // imageAtomicMax_01C20D00E
        3152,  // textureGather_00l30B00B
        3154,  // normalize_10B
        3156,  // asin_30B
        3158,  // isnan_20B
        3160,  // isnan_20C
        3161,  // fwidth_00B
        3164,  // dFdy_10B
        3167,  // imageAtomicAdd_01P10D00E
        3169,  // imageAtomicAdd_01P10D00D
        3171,  // max_30E00E
        3173,  // textureLod_00d20B00B
        3175,  // textureOffset_00q10B10D
        3176,  // imageAtomicAdd_01c20D00E
        3178,  // imageAtomicAdd_01c20D00D
        3180,  // mod_10B00B
        3182,  // texture_00g00B00B
        3183,  // uintBitsToFloat_10E
        3185,  // textureProjOffset_00t30B00D
        3186,  // matrixCompMult_70B70B
        3187,  // imageAtomicAdd_01I20D00D
        3189,  // imageAtomicMax_01M00D00D
        3191,  // imageAtomicMax_01M00D00E
        3193,  // textureLod_00k30B00B
        3195,  // imageAtomicAdd_01E20D00D
        3197,  // textureLodOffset_00Y20B00B20D
        3199,  // refract_00C00C00B
        3200,  // log2_00B
        3202,  // tanh_10B
        3204,  // imageAtomicMin_01I20D00E
        3206,  // textureLod_00h10B00B
        3207,  // textureGather_00O20B00D
        3208,  // gl_LocalInvocationID
        3210,  // gl_MaxCombinedClipAndCullDistances
        3211,  // clamp_00B00B00B
        3213,  // textureGather_00d10B
        3214,  // gl_MaxGeometryAtomicCounterBuffers
        3215,  // textureOffset_00p10B00D00B
        3216,  // clamp_10C10C10C
        3217,  // imageAtomicXor_01B10D00D
        3219,  // outerProduct_20B10B
        3221,  // textureProjOffset_00t10B00D
        3222,  // isinf_20C
        3223,  // textureGrad_00e30B20B20B
        3225,  // textureSize_00J00D
        3227,  // textureQueryLod_00Z20B
        3228,  // dot_10C10C
        3229,  // imageAtomicXor_01K20D00E
        3231,  // imageAtomicXor_01K20D00D
        3233,  // textureProjGrad_00n30B10B10B
        3234,  // imageAtomicMin_01U20D00D00E
        3236,  // imageAtomicMin_01U20D00D00D
        3238,  // imageAtomicAdd_01Q10D00D
        3240,  // texture2DProjLodEXT_00I30B00B
        3241,  // imageAtomicXor_01T10D00D00D
        3243,  // imageAtomicXor_01T10D00D00E
        3245,  // imageAtomicAnd_01b20D00D
        3247,  // step_00B00B
        3249,  // texture2DLodEXT_00I10B00B
        3250,  // texture_00K20B00B
        3252,  // textureProjGradOffset_00n30B10B10B10D
        3253,  // textureGrad_00J20B20B20B
        3255,  // imageAtomicCompSwap_01V20D00D00E00E
        3257,  // textureOffset_00U20B10D00B
        3259,  // intBitsToFloat_10D
        3261,  // min_20C20C
        3262,  // findLSB_10D
        3264,  // textureProjLodOffset_00Y30B00B20D
        3266,  // imageAtomicMax_01h00D00E
        3268,  // texture3D_00J20B
        3270,  // gl_SecondaryFragDataEXT
        3271,  // imageAtomicAdd_01X10D00E
        3273,  // faceforward_20C20C20C
        3274,  // imageAtomicAnd_01O10D00E
        3276,  // imageAtomicAdd_01X10D00D
        3278,  // imageAtomicXor_01W20D00D00D
        3280,  // imageAtomicXor_01W20D00D00E
        3282,  // textureGather_00n10B00B
        3283,  // imageAtomicXor_01Z10D00E
        3285,  // imageAtomicXor_01Z10D00D
        3287,  // textureGather_00X10B00D
        3289,  // imageAtomicMax_01L00D00E
        3291,  // imageAtomicMax_01L00D00D
        3293,  // imageAtomicXor_01G20D00E
        3295,  // imageAtomicXor_01G20D00D
        3297,  // textureOffset_00a20B10D
        3299,  // imageAtomicExchange_01X10D00B
        3301,  // textureGatherOffsets_00v10B10Dx4
        3302,  // texture2DProj_00I30B00B
        3304,  // textureQueryLod_00X10B
        3305,  // imageAtomicAnd_01I20D00E
        3307,  // textureCubeGradEXT_00K20B20B20B
        3308,  // min_00B00B
        3310,  // textureGradOffset_00o00B00B00B00D
        3311,  // gl_CullDistance
        3313,  // imageAtomicExchange_01Q10D00B
        3315,  // mix_30C30C30F
        3316,  // mix_30C30C30C
        3317,  // gl_WorkGroupID
        3319,  // degrees_00B
        3321,  // imageAtomicMax_01J20D00E
        3323,  // imageAtomicMax_01J20D00D
        3325,  // imageAtomicMin_01D20D00D
        3327,  // textureGatherOffsets_00R10B10Dx4
        3330,  // atomicExchange_00D00D
        3332,  // textureOffset_00m20B00D00B
        3333,  // gl_MaxGeometryAtomicCounters
        3334,  // textureOffset_00f30B10D
        3335,  // imageStore_01c20D30E
        3337,  // imageAtomicExchange_01a20D00D
        3339,  // imageAtomicExchange_01a20D00E
        3341,  // imageAtomicExchange_01a20D00B
        3343,  // matrixCompMult_60B60B
        3344,  // imageAtomicCompSwap_00z10D00D00D
        3346,  // textureProj_00t30B
        3347,  // textureProjGradOffset_00t10B00B00B00D
        3348,  // unpackSnorm2x16_00E
        3350,  // lessThan_30D30D
        3352,  // atan_00B00B
        3354,  // textureQueryLod_00S20B
        3355,  // notEqual_10B10B
        3357,  // imageLoad_01G20D
        3359,  // trunc_30B
        3361,  // trunc_30C
        3362,  // length_00B
        3364,  // length_00C
        3365,  // imageAtomicAnd_01H20D00D
        3367,  // imageAtomicAnd_01H20D00E
        3369,  // textureProj_00X30B00B
        3371,  // imageAtomicCompSwap_01C20D00E00E
        3373,  // tan_00B
        3375,  // min_20E00E
        3377,  // textureLod_00x30B00B
        3379,  // textureSize_00j
        3381,  // textureSize_00n
        3382,  // imageAtomicXor_01F20D00D
        3384,  // textureSize_00c
        3386,  // textureSize_00b
        3389,  // min_20B20B
        3391,  // textureSize_00q
        3392,  // textureSize_00r
        3394,  // textureSize_00w
        3396,  // textureSize_00v
        3397,  // bitfieldInsert_20E20E00D00D
        3399,  // gl_MaxProgramTexelOffset
        3401,  // textureSize_00O
        3402,  // imageAtomicAnd_01a20D00E
        3404,  // imageAtomicMin_01g00D00D
        3406,  // trunc_00C
        3407,  // imageAtomicAnd_01a20D00D
        3409,  // textureSize_00Q
        3411,  // textureSize_00P
        3414,  // imageAtomicAdd_01M00D00E
        3416,  // imageLoad_01K20D
        3418,  // textureSize_00W
        3420,  // textureProjLod_00X20B00B
        3422,  // smoothstep_00C00C00C
        3423,  // atomicCounterAnd_00G00E
        3424,  // faceforward_30B30B30B
        3426,  // distance_20C20C
        3427,  // atomicCounterAdd_00G00E
        3428,  // imageStore_01O10D30B
        3429,  // texture_00X10B
        3431,  // ceil_00C
        3432,  // ceil_00B
        3434,  // distance_00B00B
        3436,  // texelFetch_00O10D
        3437,  // imageAtomicExchange_01C20D00D
        3439,  // imageAtomicExchange_01C20D00E
        3441,  // textureGrad_00s30B20B20B
        3443,  // textureGather_00I10B
        3445,  // imageAtomicExchange_01C20D00B
        3447,  // min_30D30D
        3449,  // imageAtomicExchange_01Z10D00B
        3451,  // findMSB_30E
        3453,  // findMSB_30D
        3455,  // textureGradOffset_00R10B10B10B10D
        3457,  // fwidth_30B
        3460,  // textureGrad_00K20B20B20B
        3462,  // texelFetch_00S20D00D
        3464,  // max_10B00B
        3466,  // textureProjGradOffset_00R30B10B10B10D
        3468,  // gl_MaxTessControlTextureImageUnits
        3469,  // texelFetchOffset_00L20D00D10D
        3471,  // isnan_30C
        3472,  // transpose_50B
        3474,  // greaterThanEqual_20D20D
        3476,  // asinh_00B
        3478,  // gl_PrimitiveIDIn
        3479,  // textureGather_00Z20B
        3481,  // textureGrad_00p10B00B00B
        3482,  // textureProjOffset_00v30B10D
        3483,  // greaterThan_20B20B
        3485,  // min_20D20D
        3487,  // texelFetchOffset_00g00D00D00D
        3488,  // imageAtomicCompSwap_01g00D00E00E
        3490,  // imageAtomicMin_01W20D00D00E
        3492,  // imageAtomicMin_01W20D00D00D
        3494,  // imageAtomicXor_01O10D00D
        3496,  // imageAtomicXor_01O10D00E
        3498,  // tanh_20B
        3500,  // textureProj_00m30B00B
        3501,  // sin_20B
        3503,  // smoothstep_00C00C30C
        3504,  // textureSize_00l00D
        3506,  // textureLod_00o00B00B
        3507,  // textureOffset_00I10B10D00B
        3509,  // imageAtomicAnd_00z10D00D
        3511,  // imageAtomicAnd_00z10D00E
        3513,  // imageAtomicCompSwap_01W20D00D00D00D
        3515,  // gl_MaxAtomicCounterBufferSize
        3517,  // textureOffset_00J20B20D00B
        3519,  // lessThanEqual_20E20E
        3521,  // gl_BaseVertex
        3522,  // textureOffset_00g00B00D
        3523,  // textureProj_00g30B
        3524,  // gl_MaxGeometryTotalOutputComponents
        3525,  // bitfieldInsert_30E30E00D00D
        3527,  // bitfieldExtract_20E00D00D
        3529,  // uintBitsToFloat_20E
        3531,  // unpackUnorm4x8_00E
        3533,  // imageAtomicExchange_01K20D00E
        3535,  // mod_10B10B
        3537,  // imageAtomicExchange_01K20D00B
        3539,  // imageAtomicAnd_01B10D00E
        3541,  // imageAtomicXor_01i00D00D
        3543,  // gl_MaxVertexImageUniforms
        3545,  // equal_20D20D
        3547,  // mix_10E10E10F
        3549,  // textureGather_00R10B00D
        3551,  // textureSize_00Z00D
        3553,  // bitfieldExtract_30D00D00D
        3555,  // imageAtomicXor_01J20D00D
        3557,  // imageAtomicXor_01J20D00E
        3559,  // intBitsToFloat_00D
        3561,  // textureLodOffset_00m20B00B00D
        3562,  // findLSB_00E
        3564,  // texelFetch_00p10D00D
        3565,  // textureGather_00d10B00B
        3567,  // shadow2DProj_00d30B00B
        3568,  // imageAtomicAdd_01T10D00D00D
        3570,  // imageAtomicAdd_01T10D00D00E
        3572,  // inversesqrt_10B
        3574,  // inversesqrt_10C
        3575,  // abs_30D
        3577,  // transpose_D0B
        3579,  // abs_30C
        3580,  // textureProjGrad_00O30B10B10B
        3581,  // Empty
        3581,  // imageLoad_01E20D
        3583,  // textureProj_00N20B00B
        3584,  // gl_FragData
        3586,  // dFdxCoarse_20B
        3587,  // clamp_20E00E00E
        3589,  // textureProj_00d30B
        3591,  // gl_MaxVertexOutputVectors
        3593,  // imageAtomicOr_01i00D00D
        3595,  // imageAtomicOr_01i00D00E
        3597,  // shadow1D_00m20B
        3598,  // textureOffset_00u10B00D
        3599,  // cosh_10B
        3601,  // sign_10C
        3602,  // imageAtomicAnd_01G20D00E
        3604,  // imageAtomicAnd_01G20D00D
        3606,  // sign_10D
        3608,  // umulExtended_00E00E00E00E
        3610,  // gl_MaxVertexAttribs
        3612,  // Empty
        3612,  // texture_00a20B
        3614,  // imageAtomicExchange_01g00D00B
        3616,  // imageAtomicExchange_01B10D00B
        3618,  // ldexp_10B10D
        3620,  // imageAtomicExchange_01B10D00D
        3622,  // imageAtomicExchange_01B10D00E
        3624,  // textureProjOffset_00g30B00D
        3625,  // texture_00Z20B
        3627,  // degrees_10B
        3629,  // texture_00k30B00B
        3630,  // texture_00K20B
        3632,  // sinh_10B
        3634,  // texture_00m20B
        3635,  // imageAtomicXor_01C20D00D
        3637,  // textureGatherOffsets_00I10B10Dx400D
        3640,  // not_30F
        3642,  // textureProjLodOffset_00I20B00B10D
        3644,  // textureGather_00K20B
        3646,  // textureGatherOffset_00R10B10D
        3648,  // memoryBarrierShared_
        3650,  // clamp_20B20B20B
        3652,  // texelFetch_00W20D00D
        3654,  // textureProjLod_00g10B00B
        3655,  // trunc_20C
        3656,  // trunc_20B
        3658,  // textureProjOffset_00I30B10D00B
        3660,  // max_00C00C
        3661,  // tan_10B
        3663,  // texture_00g00B
        3664,  // textureLodOffset_00L20B00B10D
        3666,  // textureLodOffset_00u10B00B00D
        3667,  // imageAtomicOr_01B10D00D
        3669,  // imageAtomicOr_01B10D00E
        3671,  // isinf_20B
        3673,  // dFdyCoarse_10B
        3674,  // textureGatherOffset_00X10B10D00D
        3676,  // min_10E10E
        3678,  // memoryBarrierImage_
        3680,  // round_10B
        3682,  // round_10C
        3683,  // textureProjLodOffset_00m30B00B00D
        3684,  // textureProjGradOffset_00g10B00B00B00D
        3685,  // textureProj_00R30B
        3687,  // shadow1DProj_00m30B
        3688,  // texture_00f30B00B
        3689,  // fma_00B00B00B
        3692,  // imageStore_01X10D30B
        3693,  // imageAtomicOr_01b20D00E
        3695,  // imageAtomicOr_01b20D00D
        3697,  // textureGatherOffset_00v10B10D00D
        3698,  // atomicMax_00E00E
        3700,  // textureQueryLod_00t00B
        3701,  // textureProjOffset_00R30B10D
        3703,  // textureProj_00X30B
        3705,  // findMSB_00D
        3707,  // findMSB_00E
        3709,  // mix_20B20B20B
        3711,  // imageAtomicCompSwap_01X10D00D00D
        3713,  // frexp_30C30D
        3714,  // mix_10C10C10C
        3715,  // min_30D00D
        3717,  // imageAtomicCompSwap_01K20D00E00E
        3719,  // texture_00M10B00B
        3720,  // fwidth_20B
        3723,  // imageAtomicOr_01S10D00D00D
        3725,  // imageAtomicOr_01S10D00D00E
        3727,  // mod_30C00C
        3728,  // imageAtomicAdd_01A10D00D
        3730,  // imageAtomicAdd_01A10D00E
        3732,  // texture_00o00B00B
        3733,  // imageAtomicOr_01H20D00E
        3735,  // imageAtomicOr_01H20D00D
        3737,  // cos_20B
        3739,  // gl_MaxGeometryUniformComponents
        3740,  // textureGather_00T20B
        3742,  // textureProjGradOffset_00J30B20B20B20D
        3744,  // asinh_10B
        3746,  // texelFetchOffset_00v10D10D
        3747,  // imageAtomicXor_01E20D00E
        3749,  // imageAtomicXor_01E20D00D
        3751,  // textureGatherOffsets_00R10B10Dx400D
    };
    
    using Ext = TExtension;
    
    // Flat array of all unmangled name identifiers.
    constexpr UnmangledEntry unmangled[] = {
        {"all", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"textureProj", Ext::OES_EGL_image_external_essl3, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"unpackUnorm4x8", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"textureVideoWEBGL", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::ALL},
        {"imageAtomicCompSwap", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"fwidth", Ext::UNDEFINED, Ext::UNDEFINED, 300, 0, Shader::FRAGMENT},
        {"rgb_2_yuv", Ext::EXT_YUV_target, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"atomicCounterIncrement", Ext::UNDEFINED, Ext::UNDEFINED, 310, 420, Shader::ALL},
        {"yuv_2_rgb", Ext::EXT_YUV_target, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"findLSB", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"shadow1DProjLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"textureCubeGradEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::ALL},
        {"memoryBarrierImage", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"packSnorm4x8", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"inverse", Ext::UNDEFINED, Ext::UNDEFINED, 300, 140, Shader::ALL},
        {"textureCubeLod", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::VERTEX},
        {"imageAtomicAdd", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"texture", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"frexp", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"degrees", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"imulExtended", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"texture2DProjGradEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::ALL},
        {"atomicAnd", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"textureProjGradOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"roundEven", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"texture2DProjLodEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"memoryBarrierAtomicCounter", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"dFdxFine", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"ceil", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"texture1D", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"atomicCounterXor", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"not", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"texture2DRectProj", Ext::ARB_texture_rectangle, Ext::UNDEFINED, 100, -1, Shader::ALL},
        {"mod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"floatBitsToInt", Ext::UNDEFINED, Ext::UNDEFINED, 300, 330, Shader::ALL},
        {"radians", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"smoothstep", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"textureProjGrad", Ext::UNDEFINED, Ext::UNDEFINED, -1, 140, Shader::ALL},
        {"textureQueryLevels", Ext::UNDEFINED, Ext::UNDEFINED, -1, 430, Shader::ALL},
        {"lessThan", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"dFdy", Ext::UNDEFINED, Ext::UNDEFINED, 300, 0, Shader::FRAGMENT},
        {"modf", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"unpackSnorm4x8", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"round", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"textureOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::FRAGMENT},
        {"clamp", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"unpackDouble2x32", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"atomicCounterOr", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"findMSB", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"texture2DRect", Ext::ARB_texture_rectangle, Ext::UNDEFINED, 100, -1, Shader::ALL},
        {"acosh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"interpolateAtOffset", Ext::OES_shader_multisample_interpolation, Ext::UNDEFINED, 300, -1,
         Shader::FRAGMENT},
        {"cosh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"imageAtomicXor", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"uaddCarry", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"imageAtomicOr", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"imageLoad", Ext::UNDEFINED, Ext::UNDEFINED, -1, 420, Shader::ALL},
        {"asin", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"isnan", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"atomicMax", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"bitfieldReverse", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"dFdx", Ext::UNDEFINED, Ext::UNDEFINED, 300, 0, Shader::FRAGMENT},
        {"memoryBarrierShared", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::COMPUTE},
        {"shadow2DProj", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"textureLod", Ext::UNDEFINED, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"faceforward", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"abs", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"allInvocations", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"max", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"subpassLoad", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"atomicCounterAnd", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"unpackSnorm2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 420, Shader::ALL},
        {"log2", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"textureGrad", Ext::UNDEFINED, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"barrier", Ext::EXT_tessellation_shader, Ext::UNDEFINED, 310, -1, Shader::TESS_CONTROL_EXT},
        {"texture2DProj", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::FRAGMENT},
        {"atomicCounterDecrement", Ext::UNDEFINED, Ext::UNDEFINED, 310, 420, Shader::ALL},
        {"lessThanEqual", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"transpose", Ext::UNDEFINED, Ext::UNDEFINED, 300, 120, Shader::ALL},
        {"step", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"sinh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"textureProjOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::FRAGMENT},
        {"trunc", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"cos", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"interpolateAtSample", Ext::OES_shader_multisample_interpolation, Ext::UNDEFINED, 300, -1,
         Shader::FRAGMENT},
        {"EmitStreamVertex", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::GEOMETRY},
        {"shadow2DProjLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"equal", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"texture2DLodEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"usubBorrow", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"texelFetchOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"length", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"textureSize", Ext::OES_EGL_image_external_essl3, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"acos", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"uintBitsToFloat", Ext::UNDEFINED, Ext::UNDEFINED, 300, 330, Shader::ALL},
        {"packUnorm2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 400, Shader::ALL},
        {"unpackHalf2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 420, Shader::ALL},
        {"matrixCompMult", Ext::UNDEFINED, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"pow", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"atomicExchange", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"texture2DProjLod", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::VERTEX},
        {"ldexp", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"floatBitsToUint", Ext::UNDEFINED, Ext::UNDEFINED, 300, 330, Shader::ALL},
        {"textureProjLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"textureCubeLodEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"imageStore", Ext::UNDEFINED, Ext::UNDEFINED, -1, 420, Shader::ALL},
        {"textureGatherOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"textureProjLodOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"log", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"bitCount", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"dFdyFine", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"exp2", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"atomicCompSwap", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"imageSamples", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::ALL},
        {"fract", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"atomicCounterSubtract", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"EmitVertex", Ext::UNDEFINED, Ext::UNDEFINED, -1, 150, Shader::GEOMETRY},
        {"shadow1DLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"textureGatherOffsets", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"fma", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"EndStreamPrimitive", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::GEOMETRY},
        {"determinant", Ext::UNDEFINED, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"textureGather", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"texture3DLod", Ext::OES_texture_3D, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"greaterThanEqual", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"shadow1D", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"greaterThan", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"bitfieldInsert", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"texture3DProj", Ext::OES_texture_3D, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"packUnorm4x8", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"sign", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"inversesqrt", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"noise1", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"distance", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"dFdxCoarse", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"noise2", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"tanh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"texture2DGradEXT", Ext::EXT_shader_texture_lod, Ext::UNDEFINED, 100, -1, Shader::ALL},
        {"memoryBarrier", Ext::UNDEFINED, Ext::UNDEFINED, 310, 420, Shader::ALL},
        {"texture1DProjLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"fwidthCoarse", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"atomicCounterMax", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"atomicCounterMin", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"atomicCounter", Ext::UNDEFINED, Ext::UNDEFINED, 310, 420, Shader::ALL},
        {"intBitsToFloat", Ext::UNDEFINED, Ext::UNDEFINED, 300, 330, Shader::ALL},
        {"bitfieldExtract", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"texture3DProjLod", Ext::OES_texture_3D, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"atomicAdd", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"asinh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"shadow2DProjEXT", Ext::EXT_shadow_samplers, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"texture2D", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::FRAGMENT},
        {"memoryBarrierBuffer", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"shadow2DEXT", Ext::EXT_shadow_samplers, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"tan", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"any", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"atomicXor", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"normalize", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"shadow1DProj", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"imageAtomicAnd", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"dFdyCoarse", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"floor", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"textureLodOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"fwidthFine", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::FRAGMENT},
        {"atanh", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"textureSamples", Ext::UNDEFINED, Ext::UNDEFINED, -1, 450, Shader::ALL},
        {"cross", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"sqrt", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"atomicCounterCompSwap", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"mix", Ext::UNDEFINED, Ext::UNDEFINED, 310, 450, Shader::ALL},
        {"ftransform", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"atomicCounterAdd", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"sin", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"shadow2D", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"anyInvocation", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"shadow2DLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"imageAtomicMin", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"allInvocationsEqual", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"textureGradOffset", Ext::UNDEFINED, Ext::UNDEFINED, -1, 130, Shader::ALL},
        {"atan", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"unpackUnorm2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 400, Shader::ALL},
        {"textureQueryLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::FRAGMENT},
        {"imageAtomicMax", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"texture1DProj", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"interpolateAtCentroid", Ext::OES_shader_multisample_interpolation, Ext::UNDEFINED, 300, -1,
         Shader::FRAGMENT},
        {"reflect", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"isinf", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"texture3D", Ext::OES_texture_3D, Ext::UNDEFINED, 100, -1, Shader::FRAGMENT},
        {"umulExtended", Ext::UNDEFINED, Ext::UNDEFINED, 310, 400, Shader::ALL},
        {"atomicOr", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"texelFetch", Ext::OES_EGL_image_external_essl3, Ext::UNDEFINED, 300, -1, Shader::ALL},
        {"EndPrimitive", Ext::UNDEFINED, Ext::UNDEFINED, -1, 150, Shader::GEOMETRY},
        {"atomicCounterExchange", Ext::UNDEFINED, Ext::UNDEFINED, -1, 460, Shader::ALL},
        {"noise4", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"notEqual", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"outerProduct", Ext::UNDEFINED, Ext::UNDEFINED, 300, 120, Shader::ALL},
        {"packDouble2x32", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"imageSize", Ext::UNDEFINED, Ext::UNDEFINED, -1, 430, Shader::ALL},
        {"refract", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL},
        {"noise3", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::ALL},
        {"min", Ext::UNDEFINED, Ext::UNDEFINED, 300, 130, Shader::ALL},
        {"textureCube", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::ALL},
        {"packSnorm2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 420, Shader::ALL},
        {"texture1DLod", Ext::UNDEFINED, Ext::UNDEFINED, -1, 0, Shader::VERTEX},
        {"exp", Ext::UNDEFINED, Ext::UNDEFINED, 0, 0, Shader::ALL},
        {"groupMemoryBarrier", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::COMPUTE},
        {"atomicMin", Ext::UNDEFINED, Ext::UNDEFINED, 310, 430, Shader::ALL},
        {"imageAtomicExchange", Ext::OES_shader_image_atomic, Ext::UNDEFINED, 310, -1, Shader::ALL},
        {"packHalf2x16", Ext::UNDEFINED, Ext::UNDEFINED, 300, 420, Shader::ALL},
        {"texture2DLod", Ext::UNDEFINED, Ext::UNDEFINED, 100, 0, Shader::VERTEX},
        {"dot", Ext::UNDEFINED, Ext::UNDEFINED, -1, 400, Shader::ALL}};
    
    }  // namespace BuiltInArray
    
    void TSymbolTable::initializeBuiltInVariables(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,
                       SymbolType::BuiltIn));
        fields_gl_DepthRangeParameters->push_back(
            new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::far, zeroSourceLoc,
                       SymbolType::BuiltIn));
        fields_gl_DepthRangeParameters->push_back(
            new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::diff, zeroSourceLoc,
                       SymbolType::BuiltIn));
        TStructure *gl_DepthRangeParameters =
            new TStructure(BuiltInId::gl_DepthRangeParameters, BuiltInName::gl_DepthRangeParameters,
                           TExtension::UNDEFINED, fields_gl_DepthRangeParameters);
        m_gl_DepthRangeParameters = gl_DepthRangeParameters;
        TType *type_gl_DepthRange = new TType(gl_DepthRangeParameters, false);
        type_gl_DepthRange->setQualifier(EvqUniform);
        type_gl_DepthRange->realize();
        m_gl_DepthRange       = new TVariable(BuiltInId::gl_DepthRange, BuiltInName::gl_DepthRange,
                                        SymbolType::BuiltIn, TExtension::UNDEFINED, type_gl_DepthRange);
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexAttribs)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexUniformVectors)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexTextureImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxCombinedTextureImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxTextureImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxFragmentUniformVectors)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVaryingVectors)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxDrawBuffers)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxDualSourceDrawBuffersEXT)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexOutputVectors)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxFragmentInputVectors)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MinProgramTexelOffset)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxProgramTexelOffset)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexImageUniforms)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxFragmentImageUniforms)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxComputeImageUniforms)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxCombinedImageUniforms)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxCombinedShaderOutputResources)
                ->shareConstPointer(unionArray);
        }
        m_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]);
            }
            static_cast<TVariable *>(m_gl_MaxComputeWorkGroupCount)->shareConstPointer(unionArray);
        }
        m_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]);
            }
            static_cast<TVariable *>(m_gl_MaxComputeWorkGroupSize)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxComputeUniformComponents)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxComputeTextureImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxComputeAtomicCounters)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxComputeAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexAtomicCounters)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxFragmentAtomicCounters)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxCombinedAtomicCounters)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxAtomicCounterBindings)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxVertexAtomicCounterBuffers)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxFragmentAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxCombinedAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxAtomicCounterBufferSize)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryInputComponents)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryOutputComponents)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryImageUniforms)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryTextureImageUnits)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryOutputVertices)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryTotalOutputComponents)
                ->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryUniformComponents)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryAtomicCounters)->shareConstPointer(unionArray);
        }
        m_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);
            static_cast<TVariable *>(m_gl_MaxGeometryAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlInputComponents = new TVariable(
            BuiltInId::gl_MaxTessControlInputComponents, BuiltInName::gl_MaxTessControlInputComponents,
            SymbolType::BuiltIn, TExtension::EXT_tessellation_shader,
            StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlInputComponents);
            static_cast<TVariable *>(m_gl_MaxTessControlInputComponents)->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlOutputComponents = new TVariable(
            BuiltInId::gl_MaxTessControlOutputComponents,
            BuiltInName::gl_MaxTessControlOutputComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlOutputComponents);
            static_cast<TVariable *>(m_gl_MaxTessControlOutputComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlTextureImageUnits = new TVariable(
            BuiltInId::gl_MaxTessControlTextureImageUnits,
            BuiltInName::gl_MaxTessControlTextureImageUnits, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlTextureImageUnits);
            static_cast<TVariable *>(m_gl_MaxTessControlTextureImageUnits)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlUniformComponents = new TVariable(
            BuiltInId::gl_MaxTessControlUniformComponents,
            BuiltInName::gl_MaxTessControlUniformComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlUniformComponents);
            static_cast<TVariable *>(m_gl_MaxTessControlUniformComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlTotalOutputComponents = new TVariable(
            BuiltInId::gl_MaxTessControlTotalOutputComponents,
            BuiltInName::gl_MaxTessControlTotalOutputComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlTotalOutputComponents);
            static_cast<TVariable *>(m_gl_MaxTessControlTotalOutputComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlImageUniforms = new TVariable(
            BuiltInId::gl_MaxTessControlImageUniforms, BuiltInName::gl_MaxTessControlImageUniforms,
            SymbolType::BuiltIn, TExtension::EXT_tessellation_shader,
            StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlImageUniforms);
            static_cast<TVariable *>(m_gl_MaxTessControlImageUniforms)->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlAtomicCounters = new TVariable(
            BuiltInId::gl_MaxTessControlAtomicCounters, BuiltInName::gl_MaxTessControlAtomicCounters,
            SymbolType::BuiltIn, TExtension::EXT_tessellation_shader,
            StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlAtomicCounters);
            static_cast<TVariable *>(m_gl_MaxTessControlAtomicCounters)->shareConstPointer(unionArray);
        }
        m_gl_MaxTessControlAtomicCounterBuffers = new TVariable(
            BuiltInId::gl_MaxTessControlAtomicCounterBuffers,
            BuiltInName::gl_MaxTessControlAtomicCounterBuffers, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessControlAtomicCounterBuffers);
            static_cast<TVariable *>(m_gl_MaxTessControlAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessPatchComponents =
            new TVariable(BuiltInId::gl_MaxTessPatchComponents, BuiltInName::gl_MaxTessPatchComponents,
                          SymbolType::BuiltIn, TExtension::EXT_tessellation_shader,
                          StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessPatchComponents);
            static_cast<TVariable *>(m_gl_MaxTessPatchComponents)->shareConstPointer(unionArray);
        }
        m_gl_MaxPatchVertices = new TVariable(
            BuiltInId::gl_MaxPatchVertices, BuiltInName::gl_MaxPatchVertices, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxPatchVertices);
            static_cast<TVariable *>(m_gl_MaxPatchVertices)->shareConstPointer(unionArray);
        }
        m_gl_MaxTessGenLevel = new TVariable(
            BuiltInId::gl_MaxTessGenLevel, BuiltInName::gl_MaxTessGenLevel, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessGenLevel);
            static_cast<TVariable *>(m_gl_MaxTessGenLevel)->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationInputComponents = new TVariable(
            BuiltInId::gl_MaxTessEvaluationInputComponents,
            BuiltInName::gl_MaxTessEvaluationInputComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationInputComponents);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationInputComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationOutputComponents = new TVariable(
            BuiltInId::gl_MaxTessEvaluationOutputComponents,
            BuiltInName::gl_MaxTessEvaluationOutputComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationOutputComponents);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationOutputComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationTextureImageUnits = new TVariable(
            BuiltInId::gl_MaxTessEvaluationTextureImageUnits,
            BuiltInName::gl_MaxTessEvaluationTextureImageUnits, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationTextureImageUnits);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationTextureImageUnits)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationUniformComponents = new TVariable(
            BuiltInId::gl_MaxTessEvaluationUniformComponents,
            BuiltInName::gl_MaxTessEvaluationUniformComponents, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationUniformComponents);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationUniformComponents)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationImageUniforms = new TVariable(
            BuiltInId::gl_MaxTessEvaluationImageUniforms,
            BuiltInName::gl_MaxTessEvaluationImageUniforms, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationImageUniforms);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationImageUniforms)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationAtomicCounters = new TVariable(
            BuiltInId::gl_MaxTessEvaluationAtomicCounters,
            BuiltInName::gl_MaxTessEvaluationAtomicCounters, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationAtomicCounters);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationAtomicCounters)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxTessEvaluationAtomicCounterBuffers = new TVariable(
            BuiltInId::gl_MaxTessEvaluationAtomicCounterBuffers,
            BuiltInName::gl_MaxTessEvaluationAtomicCounterBuffers, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxTessEvaluationAtomicCounterBuffers);
            static_cast<TVariable *>(m_gl_MaxTessEvaluationAtomicCounterBuffers)
                ->shareConstPointer(unionArray);
        }
        m_gl_MaxSamples = new TVariable(BuiltInId::gl_MaxSamples, BuiltInName::gl_MaxSamples,
                                        SymbolType::BuiltIn, TExtension::OES_sample_variables,
                                        StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxSamples);
            static_cast<TVariable *>(m_gl_MaxSamples)->shareConstPointer(unionArray);
        }
        m_gl_MaxClipDistancesAPPLE = new TVariable(
            BuiltInId::gl_MaxClipDistancesAPPLE, BuiltInName::gl_MaxClipDistances, SymbolType::BuiltIn,
            TExtension::APPLE_clip_distance, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxClipDistances);
            static_cast<TVariable *>(m_gl_MaxClipDistancesAPPLE)->shareConstPointer(unionArray);
        }
        m_gl_MaxCullDistancesEXT = new TVariable(
            BuiltInId::gl_MaxCullDistancesEXT, BuiltInName::gl_MaxCullDistances, SymbolType::BuiltIn,
            TExtension::EXT_clip_cull_distance, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxCullDistances);
            static_cast<TVariable *>(m_gl_MaxCullDistancesEXT)->shareConstPointer(unionArray);
        }
        m_gl_MaxCombinedClipAndCullDistancesEXT = new TVariable(
            BuiltInId::gl_MaxCombinedClipAndCullDistancesEXT,
            BuiltInName::gl_MaxCombinedClipAndCullDistances, SymbolType::BuiltIn,
            TExtension::EXT_clip_cull_distance, StaticType::Get<EbtInt, EbpMedium, EvqConst, 1, 1>());
        {
            TConstantUnion *unionArray = new TConstantUnion[1];
            unionArray[0].setIConst(resources.MaxCombinedClipAndCullDistances);
            static_cast<TVariable *>(m_gl_MaxCombinedClipAndCullDistancesEXT)
                ->shareConstPointer(unionArray);
        }
        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();
        m_gl_FragData = new TVariable(BuiltInId::gl_FragData, BuiltInName::gl_FragData,
                                      SymbolType::BuiltIn, TExtension::UNDEFINED, type_gl_FragData);
        TType *type_gl_SecondaryFragDataEXT =
            new TType(EbtFloat, EbpMedium, EvqSecondaryFragDataEXT, 4, 1);
        type_gl_SecondaryFragDataEXT->makeArray(resources.MaxDualSourceDrawBuffers);
        type_gl_SecondaryFragDataEXT->realize();
        m_gl_SecondaryFragDataEXT = new TVariable(
            BuiltInId::gl_SecondaryFragDataEXT, BuiltInName::gl_SecondaryFragDataEXT,
            SymbolType::BuiltIn, TExtension::EXT_blend_func_extended, type_gl_SecondaryFragDataEXT);
        TType *type_gl_FragDepthEXT = new TType(
            EbtFloat, resources.FragmentPrecisionHigh ? EbpHigh : EbpMedium, EvqFragDepthEXT, 1);
        type_gl_FragDepthEXT->realize();
        m_gl_FragDepthEXT =
            new TVariable(BuiltInId::gl_FragDepthEXT, BuiltInName::gl_FragDepthEXT, SymbolType::BuiltIn,
                          TExtension::EXT_frag_depth, type_gl_FragDepthEXT);
        TType *type_gl_LastFragData = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1);
        type_gl_LastFragData->makeArray(resources.MaxDrawBuffers);
        type_gl_LastFragData->realize();
        m_gl_LastFragData =
            new TVariable(BuiltInId::gl_LastFragData, BuiltInName::gl_LastFragData, SymbolType::BuiltIn,
                          TExtension::EXT_shader_framebuffer_fetch, type_gl_LastFragData);
        TType *type_gl_LastFragDataNV = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1);
        type_gl_LastFragDataNV->makeArray(resources.MaxDrawBuffers);
        type_gl_LastFragDataNV->realize();
        m_gl_LastFragDataNV = new TVariable(
            BuiltInId::gl_LastFragDataNV, BuiltInName::gl_LastFragData, SymbolType::BuiltIn,
            TExtension::NV_shader_framebuffer_fetch, type_gl_LastFragDataNV);
        TType *type_gl_SampleMaskIn = new TType(EbtInt, EbpHigh, EvqSampleMaskIn, 1);
        type_gl_SampleMaskIn->makeArray((resources.MaxSamples + 31) / 32);
        type_gl_SampleMaskIn->realize();
        m_gl_SampleMaskIn =
            new TVariable(BuiltInId::gl_SampleMaskIn, BuiltInName::gl_SampleMaskIn, SymbolType::BuiltIn,
                          TExtension::OES_sample_variables, type_gl_SampleMaskIn);
        TType *type_gl_SampleMask = new TType(EbtInt, EbpHigh, EvqSampleMask, 1);
        type_gl_SampleMask->makeArray((resources.MaxSamples + 31) / 32);
        type_gl_SampleMask->realize();
        m_gl_SampleMask =
            new TVariable(BuiltInId::gl_SampleMask, BuiltInName::gl_SampleMask, SymbolType::BuiltIn,
                          TExtension::OES_sample_variables, type_gl_SampleMask);
        TType *type_gl_CullDistance = new TType(EbtFloat, EbpHigh, EvqCullDistance, 1);
        type_gl_CullDistance->makeArray(resources.MaxCullDistances);
        type_gl_CullDistance->realize();
        m_gl_CullDistance =
            new TVariable(BuiltInId::gl_CullDistance, BuiltInName::gl_CullDistance, SymbolType::BuiltIn,
                          TExtension::EXT_clip_cull_distance, type_gl_CullDistance);
        TType *type_gl_ClipDistance = new TType(EbtFloat, EbpHigh, EvqClipDistance, 1);
        type_gl_ClipDistance->makeArray(resources.MaxClipDistances);
        type_gl_ClipDistance->realize();
        m_gl_ClipDistance =
            new TVariable(BuiltInId::gl_ClipDistance, BuiltInName::gl_ClipDistance, SymbolType::BuiltIn,
                          TExtension::EXT_clip_cull_distance, type_gl_ClipDistance);
        TType *type_gl_ClipDistanceAPPLE = new TType(EbtFloat, EbpHigh, EvqClipDistance, 1);
        type_gl_ClipDistanceAPPLE->makeArray(resources.MaxClipDistances);
        type_gl_ClipDistanceAPPLE->realize();
        m_gl_ClipDistanceAPPLE = new TVariable(
            BuiltInId::gl_ClipDistanceAPPLE, BuiltInName::gl_ClipDistance, SymbolType::BuiltIn,
            TExtension::APPLE_clip_distance, type_gl_ClipDistanceAPPLE);
        TType *type_gl_CullDistanceEXT = new TType(EbtFloat, EbpHigh, EvqCullDistance, 1);
        type_gl_CullDistanceEXT->makeArray(resources.MaxCullDistances);
        type_gl_CullDistanceEXT->realize();
        m_gl_CullDistanceEXT = new TVariable(
            BuiltInId::gl_CullDistanceEXT, BuiltInName::gl_CullDistance, SymbolType::BuiltIn,
            TExtension::EXT_clip_cull_distance, type_gl_CullDistanceEXT);
        TFieldList *fields_gl_PerVertex = new TFieldList();
        fields_gl_PerVertex->push_back(new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1),
                                                  BuiltInName::gl_Position, zeroSourceLoc,
                                                  SymbolType::BuiltIn));
        TInterfaceBlock *gl_PerVertex =
            new TInterfaceBlock(BuiltInId::gl_PerVertex, BuiltInName::gl_PerVertex,
                                TExtension::EXT_geometry_shader, fields_gl_PerVertex);
        m_gl_PerVertex    = gl_PerVertex;
        TType *type_gl_in = new TType(gl_PerVertex, EvqPerVertexIn, TLayoutQualifier::Create());
        type_gl_in->makeArray(0u);
        type_gl_in->realize();
        m_gl_in = new TVariable(BuiltInId::gl_in, BuiltInName::gl_in, SymbolType::BuiltIn,
                                TExtension::EXT_geometry_shader, type_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, SymbolType::BuiltIn));
        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();
        m_gl_PositionGS =
            new TVariable(BuiltInId::gl_PositionGS, BuiltInName::gl_Position, SymbolType::BuiltIn,
                          TExtension::EXT_geometry_shader, type_gl_PositionGS);
        TType *type_gl_TessLevelOuterTCS = new TType(EbtFloat, EbpHigh, EvqTessLevelOuter, 1);
        type_gl_TessLevelOuterTCS->makeArray(4u);
        type_gl_TessLevelOuterTCS->realize();
        m_gl_TessLevelOuterTCS = new TVariable(
            BuiltInId::gl_TessLevelOuterTCS, BuiltInName::gl_TessLevelOuter, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, type_gl_TessLevelOuterTCS);
        TType *type_gl_TessLevelInnerTCS = new TType(EbtFloat, EbpHigh, EvqTessLevelInner, 1);
        type_gl_TessLevelInnerTCS->makeArray(2u);
        type_gl_TessLevelInnerTCS->realize();
        m_gl_TessLevelInnerTCS = new TVariable(
            BuiltInId::gl_TessLevelInnerTCS, BuiltInName::gl_TessLevelInner, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, type_gl_TessLevelInnerTCS);
        TFieldList *fields_gl_PerVertexTCS = new TFieldList();
        fields_gl_PerVertexTCS->push_back(new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1),
                                                     BuiltInName::gl_Position, zeroSourceLoc,
                                                     SymbolType::BuiltIn));
        TInterfaceBlock *gl_PerVertexTCS =
            new TInterfaceBlock(BuiltInId::gl_PerVertexTCS, BuiltInName::gl_PerVertex,
                                TExtension::EXT_tessellation_shader, fields_gl_PerVertexTCS);
        m_gl_PerVertexTCS    = gl_PerVertexTCS;
        TType *type_gl_inTCS = new TType(gl_PerVertex, EvqPerVertexIn, TLayoutQualifier::Create());
        type_gl_inTCS->makeArray(resources.MaxPatchVertices);
        type_gl_inTCS->realize();
        m_gl_inTCS = new TVariable(BuiltInId::gl_inTCS, BuiltInName::gl_in, SymbolType::BuiltIn,
                                   TExtension::EXT_tessellation_shader, type_gl_inTCS);
        TType *type_gl_outTCS = new TType(gl_PerVertex, EvqPerVertexOut, TLayoutQualifier::Create());
        type_gl_outTCS->makeArray(resources.MaxPatchVertices);
        type_gl_outTCS->realize();
        m_gl_outTCS = new TVariable(BuiltInId::gl_outTCS, BuiltInName::gl_out, SymbolType::BuiltIn,
                                    TExtension::EXT_tessellation_shader, type_gl_outTCS);
        TFieldList *fields_gl_PerVertexOutTcsBlock = new TFieldList();
        fields_gl_PerVertexOutTcsBlock->push_back(
            new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1), BuiltInName::gl_Position,
                       zeroSourceLoc, SymbolType::BuiltIn));
        TInterfaceBlock *gl_PerVertexOutTcsBlock =
            new TInterfaceBlock(BuiltInId::gl_PerVertexOutTcsBlock, BuiltInName::gl_PerVertex,
                                TExtension::EXT_tessellation_shader, fields_gl_PerVertexOutTcsBlock);
        TType *type_gl_PositionTCS = new TType(EbtFloat, EbpHigh, EvqPosition, 4);
        type_gl_PositionTCS->setInterfaceBlock(gl_PerVertexOutTcsBlock);
        type_gl_PositionTCS->realize();
        m_gl_PositionTCS =
            new TVariable(BuiltInId::gl_PositionTCS, BuiltInName::gl_Position, SymbolType::BuiltIn,
                          TExtension::EXT_tessellation_shader, type_gl_PositionTCS);
        TType *type_gl_TessLevelOuterTES = new TType(EbtFloat, EbpHigh, EvqTessLevelOuter, 1);
        type_gl_TessLevelOuterTES->makeArray(4u);
        type_gl_TessLevelOuterTES->realize();
        m_gl_TessLevelOuterTES = new TVariable(
            BuiltInId::gl_TessLevelOuterTES, BuiltInName::gl_TessLevelOuter, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, type_gl_TessLevelOuterTES);
        TType *type_gl_TessLevelInnerTES = new TType(EbtFloat, EbpHigh, EvqTessLevelInner, 1);
        type_gl_TessLevelInnerTES->makeArray(2u);
        type_gl_TessLevelInnerTES->realize();
        m_gl_TessLevelInnerTES = new TVariable(
            BuiltInId::gl_TessLevelInnerTES, BuiltInName::gl_TessLevelInner, SymbolType::BuiltIn,
            TExtension::EXT_tessellation_shader, type_gl_TessLevelInnerTES);
        TFieldList *fields_gl_PerVertexTES = new TFieldList();
        fields_gl_PerVertexTES->push_back(new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1),
                                                     BuiltInName::gl_Position, zeroSourceLoc,
                                                     SymbolType::BuiltIn));
        TInterfaceBlock *gl_PerVertexTES =
            new TInterfaceBlock(BuiltInId::gl_PerVertexTES, BuiltInName::gl_PerVertex,
                                TExtension::EXT_tessellation_shader, fields_gl_PerVertexTES);
        m_gl_PerVertexTES    = gl_PerVertexTES;
        TType *type_gl_inTES = new TType(gl_PerVertex, EvqPerVertexIn, TLayoutQualifier::Create());
        type_gl_inTES->makeArray(resources.MaxPatchVertices);
        type_gl_inTES->realize();
        m_gl_inTES = new TVariable(BuiltInId::gl_inTES, BuiltInName::gl_in, SymbolType::BuiltIn,
                                   TExtension::EXT_tessellation_shader, type_gl_inTES);
        TType *type_gl_outTES = new TType(gl_PerVertex, EvqPerVertexOut, TLayoutQualifier::Create());
        type_gl_outTES->makeArray(resources.MaxPatchVertices);
        type_gl_outTES->realize();
        m_gl_outTES = new TVariable(BuiltInId::gl_outTES, BuiltInName::gl_out, SymbolType::BuiltIn,
                                    TExtension::EXT_tessellation_shader, type_gl_outTES);
        TFieldList *fields_gl_PerVertexOutTesBlock = new TFieldList();
        fields_gl_PerVertexOutTesBlock->push_back(
            new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1), BuiltInName::gl_Position,
                       zeroSourceLoc, SymbolType::BuiltIn));
        TInterfaceBlock *gl_PerVertexOutTesBlock =
            new TInterfaceBlock(BuiltInId::gl_PerVertexOutTesBlock, BuiltInName::gl_PerVertex,
                                TExtension::EXT_tessellation_shader, fields_gl_PerVertexOutTesBlock);
        TType *type_gl_PositionTES = new TType(EbtFloat, EbpHigh, EvqPosition, 4);
        type_gl_PositionTES->setInterfaceBlock(gl_PerVertexOutTesBlock);
        type_gl_PositionTES->realize();
        m_gl_PositionTES =
            new TVariable(BuiltInId::gl_PositionTES, BuiltInName::gl_Position, SymbolType::BuiltIn,
                          TExtension::EXT_tessellation_shader, type_gl_PositionTES);
    }
    
    namespace
    {
    uint16_t GetNextRuleIndex(uint32_t nameHash)
    {
        if (nameHash == 2180 - 1)
            return ArraySize(BuiltInArray::kRules);
        return BuiltInArray::kMangledOffsets[nameHash + 1];
    }
    }  // namespace
    
    const TSymbol *TSymbolTable::findBuiltIn(const ImmutableString &name, int shaderVersion) const
    {
        if (name.length() > 40)
            return nullptr;
    
        uint32_t nameHash = name.mangledNameHash();
        if (nameHash >= 2180)
            return nullptr;
    
        const char *actualName = BuiltInArray::kMangledNames[nameHash];
        if (name != actualName)
            return nullptr;
    
        uint16_t startIndex = BuiltInArray::kMangledOffsets[nameHash];
        uint16_t nextIndex  = GetNextRuleIndex(nameHash);
    
        return FindMangledBuiltIn(mShaderSpec, shaderVersion, mShaderType, mResources, *this,
                                  BuiltInArray::kRules, startIndex, nextIndex);
    }
    
    bool TSymbolTable::isUnmangledBuiltInName(const ImmutableString &name,
                                              int shaderVersion,
                                              const TExtensionBehavior &extensions) const
    {
        if (name.length() > 26)
            return false;
    
        uint32_t nameHash = name.unmangledNameHash();
        if (nameHash >= 210)
            return false;
    
        return BuiltInArray::unmangled[nameHash].matches(name, mShaderSpec, shaderVersion, mShaderType,
                                                         extensions);
    }
    
    }  // namespace sh