summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSijie Chen <sijiec@google.com>2023-11-30 18:19:27 +0000
committerAndroid Build Cherrypicker Worker <android-build-cherrypicker-worker@google.com>2023-11-30 21:28:24 +0000
commitde22052e6e5d56250e1b69403fec607da2a154ef (patch)
treeb3364e6e1096f00b6aa11151085ebce2da56da25
parentcd26fa45322cac03a327c798f6e3bb5efbebc225 (diff)
downloadnative_bridge_support-de22052e6e5d56250e1b69403fec607da2a154ef.tar.gz
[Berberis] Add libGLESv3 library
Bug: 286231408 Test: mmm /frameworks/libs/native_bridge_support/libGLESv3 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:424c5c37b42a6a1d72333e09a7fb5de295e04946) Merged-In: I09d2b228bd54b012b7a0f487a6e226664e907b48 Change-Id: I09d2b228bd54b012b7a0f487a6e226664e907b48
-rw-r--r--libGLESv3/Android.bp7
-rw-r--r--libGLESv3/proxy/gles3_trampolines.cc78
-rw-r--r--libGLESv3/proxy/trampolines_arm64_to_x86_64-inl.h852
-rw-r--r--libGLESv3/proxy/trampolines_arm_to_x86-inl.h852
-rw-r--r--libGLESv3/proxy/trampolines_riscv64_to_x86_64-inl.h852
5 files changed, 2641 insertions, 0 deletions
diff --git a/libGLESv3/Android.bp b/libGLESv3/Android.bp
index ad4980e..d79e3e6 100644
--- a/libGLESv3/Android.bp
+++ b/libGLESv3/Android.bp
@@ -37,3 +37,10 @@ cc_library {
"libnative_bridge_guest_libEGL"
],
}
+
+filegroup {
+ name: "native_bridge_proxy_libGLESv3_files",
+ srcs: [
+ "proxy/gles3_trampolines.cc",
+ ],
+}
diff --git a/libGLESv3/proxy/gles3_trampolines.cc b/libGLESv3/proxy/gles3_trampolines.cc
new file mode 100644
index 0000000..f2ec3dd
--- /dev/null
+++ b/libGLESv3/proxy/gles3_trampolines.cc
@@ -0,0 +1,78 @@
+/*
+* Copyright (C) 2023 The Android Open Source Project
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+#define GL_GLEXT_PROTOTYPES
+#include <GLES2/gl2.h>
+#include <GLES2/gl2ext.h>
+
+#include "berberis/guest_abi/function_wrappers.h"
+#include "berberis/guest_abi/guest_params.h"
+#include "berberis/guest_state/guest_state.h"
+#include "berberis/proxy_loader/proxy_library_builder.h"
+#include "native_bridge_proxy/android_api/libEGL/gl_common_defs.h"
+
+static_assert(GLES2_AND_GLES3_DEBUG_CALLBACK_FUNCTION_KHR == GL_DEBUG_CALLBACK_FUNCTION_KHR,
+ "EGL assumption about GLES3 define is incorrect.");
+
+namespace berberis {
+
+namespace {
+
+void DoCustomTrampoline_glDebugMessageCallbackKHR(HostCode /* callee */, ProcessState* state) {
+ auto [guest_callback, param] = GuestParamsValues<decltype(glDebugMessageCallbackKHR)>(state);
+ GLDEBUGPROCKHR host_callback =
+ WrapGuestFunction(guest_callback, "glDebugMessageCallbackKHR-callback");
+ glDebugMessageCallbackKHR(host_callback, param);
+}
+
+void DoCustomTrampoline_glGetPointervKHR(HostCode /* callee */, ProcessState* state) {
+ auto [pname, value] = GuestParamsValues<decltype(glGetPointervKHR)>(state);
+
+ glGetPointervKHR(pname, value);
+
+ if (pname == GL_DEBUG_CALLBACK_FUNCTION_KHR) {
+ // If callback is registered by guest, return the original guest address,
+ // since guest code may expect that (b/71363904).
+ GuestAddr guest_addr = SlowFindGuestAddrByWrapperAddr(*value);
+ if (guest_addr) {
+ *value = reinterpret_cast<void*>(guest_addr);
+ }
+ }
+}
+
+#if defined(NATIVE_BRIDGE_GUEST_ARCH_ARM) && defined(__i386__)
+
+#include "trampolines_arm_to_x86-inl.h" // generated file NOLINT [build/include]
+
+#elif defined(NATIVE_BRIDGE_GUEST_ARCH_ARM64) && defined(__x86_64__)
+
+#include "trampolines_arm64_to_x86_64-inl.h" // generated file NOLINT [build/include]
+
+#elif defined(NATIVE_BRIDGE_GUEST_ARCH_RISCV64) && defined(__x86_64__)
+
+#include "trampolines_riscv64_to_x86_64-inl.h" // generated file NOLINT [build/include]
+
+#else
+
+#error "Unknown guest/host arch combination"
+
+#endif
+
+DEFINE_INIT_PROXY_LIBRARY("libGLESv3.so")
+
+} // namespace
+
+} // namespace berberis
diff --git a/libGLESv3/proxy/trampolines_arm64_to_x86_64-inl.h b/libGLESv3/proxy/trampolines_arm64_to_x86_64-inl.h
new file mode 100644
index 0000000..3d0bd6f
--- /dev/null
+++ b/libGLESv3/proxy/trampolines_arm64_to_x86_64-inl.h
@@ -0,0 +1,852 @@
+// clang-format off
+const KnownTrampoline kKnownTrampolines[] = {
+{"glActiveShaderProgram", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveShaderProgramEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveTexture", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAlphaFuncQCOM", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glApplyFramebufferAttachmentCMAAINTEL", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAttachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginConditionalRenderNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQuery", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQueryEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindAttribLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferBase", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationIndexedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFramebuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindImageTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint8_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindSampler", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTexture", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTransformFeedback", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrier", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquation", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunc", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunci", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebuffer", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferANGLE", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferNV", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferData", GetTrampolineFunc<auto(uint32_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageEXT", GetTrampolineFunc<auto(uint32_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int64_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferSubData", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCheckFramebufferStatus", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClear", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfi", GetTrampolineFunc<auto(uint32_t, int32_t, float, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearDepthf", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearPixelLocalStorageuiEXT", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearStencil", GetTrampolineFunc<auto(int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexSubImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClipControlEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMask", GetTrampolineFunc<auto(uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaski", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiEXT", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiOES", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompileShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glConservativeRasterParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubDataNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataOES", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTextureLevelsAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageMaskNV", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageOperationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreatePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateProgram", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShader", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCullFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallback", GetTrampolineFunc<auto(auto(*)(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallbackKHR", DoCustomTrampoline_glDebugMessageCallbackKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glDebugMessageControl", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageControlKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsert", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsertKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePathsNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSync", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSyncAPPLE", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthFunc", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthMask", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangef", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDetachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDiscardFramebufferEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchCompute", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchComputeIndirect", GetTrampolineFunc<auto(int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArrays", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysIndirect", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersIndexedEXT", GetTrampolineFunc<auto(int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElements", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsIndirect", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElements", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackInstancedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawVkImageNV", GetTrampolineFunc<auto(uint64_t, uint32_t, float, float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetRenderbufferStorageOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexture2DOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTextureStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndConditionalRenderNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQuery", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQueryEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTilingQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBufferPointervQCOM", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetFramebuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramBinarySourceQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetRenderbuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetShadersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexLevelParameterivQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexSubImageQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexturesQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtIsProgramBinaryQCOM", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glExtTexObjectStateOverrideiQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSync", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSyncAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFinish", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFinishFenceNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlush", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRange", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFragmentCoverageColorNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierQCOM", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationConfigQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2D", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture3DOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayerDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultisampleMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFrontFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenPathsNV", GetTrampolineFunc<auto(int32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGenPerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenerateMipmap", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveAttrib", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniform", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockName", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformsiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttachedShaders", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttribLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleani_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleanv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteri64v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointervOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLogKHR", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlStringQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetError", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFenceivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFirstPerfQueryIdINTEL", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloatv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataIndexEXT", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferAttachmentParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatus", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusEXT", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusKHR", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetImageHandleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint8_t, int32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64i_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64v", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64vAPPLE", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformatSampleivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformativ", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMultisamplefv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetNextPerfQueryIdINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCommandsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCoordsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathLengthNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> float>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathSpacingNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, float, float, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfCounterInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*, uint32_t, void*, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterDataAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterInfoAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterStringAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupStringAMD", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupsAMD", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryDataINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryIdByNameINTEL", GetTrampolineFunc<auto(void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointervKHR", DoCustomTrampoline_glGetPointervKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetProgramBinary", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInterfaceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLogEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceIndex", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocationIndexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceName", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourcefvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjecti64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetRenderbufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderPrecisionFormat", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetString", GetTrampolineFunc<auto(uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetStringi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetSynciv", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSyncivAPPLE", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameterfv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameteriv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleIMG", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleNV", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTransformFeedbackVarying", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTranslatedShaderSourceANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformBlockIndex", GetTrampolineFunc<auto(uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformIndices", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformi64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytei_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytevEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVkProcAddrNV", DoBadTrampoline, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetnUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glHint", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportMemoryFdEXT", GetTrampolineFunc<auto(uint32_t, uint64_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportSemaphoreFdEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInsertEventMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInterpolatePathsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateSubFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glIsBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabled", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabledi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFramebuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsMemoryObjectEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPathNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInStrokePathNV", GetTrampolineFunc<auto(uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgram", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQuery", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQueryEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsRenderbuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSampler", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSemaphoreEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsShader", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSync", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSyncAPPLE", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTexture", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArray", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glLabelObjectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLineWidth", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLinkProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRange", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixFrustumEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadIdentityEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoaddEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultdEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixOrthoEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPopEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPushEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScaledEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScalefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMaxShaderCompilerThreadsKHR", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrier", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrierByRegion", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShading", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShadingOES", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysEXT", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysIndirectEXT", GetTrampolineFunc<auto(uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsIndirectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int64_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteri", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriOES", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoverDepthFuncNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexRangeNV", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, uint32_t, float, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, void*, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathMemoryGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, void*, int32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameteriNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilDepthOffsetNV", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilFuncNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStringNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPauseTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPixelStorei", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPointAlongPathNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, float, void*, void*, void*, void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonModeNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffset", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffsetClampEXT", GetTrampolineFunc<auto(float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroup", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroupKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopGroupMarkerEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBox", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxEXT", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxOES", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinary", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteriEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramPathFragmentInputGenNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1f", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64IMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vIMG", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroup", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroupKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushGroupMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glQueryCounterEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRasterSamplesEXT", GetTrampolineFunc<auto(uint32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBuffer", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferIndexedEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsEXT", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsKHR", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReleaseShaderCompiler", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorage", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleAPPLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleIMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveDepthValuesNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveMultisampleFramebufferAPPLE", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResumeTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleCoverage", GetTrampolineFunc<auto(float, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleMaski", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissor", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSelectPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, uint8_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSetFenceNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderBinary", GetTrampolineFunc<auto(int32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkFenceNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStartTilingQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFunc", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMask", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMaskSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOp", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOpSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSubpixelPrecisionBiasNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTestFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glTexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexPageCommitmentEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage1DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisampleOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage1DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage2DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage3DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformFeedbackVaryings", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1f", GetTrampolineFunc<auto(int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i", GetTrampolineFunc<auto(int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64NV", GetTrampolineFunc<auto(int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui", GetTrampolineFunc<auto(int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2f", GetTrampolineFunc<auto(int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3f", GetTrampolineFunc<auto(int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4f", GetTrampolineFunc<auto(int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformBlockBinding", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64IMG", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vIMG", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBufferOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStages", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStagesEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1f", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2f", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3f", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4f", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribBinding", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorANGLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4iv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4ui", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4uiv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexBindingDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewport", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportPositionWScaleNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportSwizzleNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWeightPathsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWindowRectanglesEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+}; // kKnownTrampolines
+const KnownVariable kKnownVariables[] = {
+}; // kKnownVariables
+// clang-format on
diff --git a/libGLESv3/proxy/trampolines_arm_to_x86-inl.h b/libGLESv3/proxy/trampolines_arm_to_x86-inl.h
new file mode 100644
index 0000000..5dc948d
--- /dev/null
+++ b/libGLESv3/proxy/trampolines_arm_to_x86-inl.h
@@ -0,0 +1,852 @@
+// clang-format off
+const KnownTrampoline kKnownTrampolines[] = {
+{"glActiveShaderProgram", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveShaderProgramEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveTexture", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAlphaFuncQCOM", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glApplyFramebufferAttachmentCMAAINTEL", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAttachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginConditionalRenderNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQuery", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQueryEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindAttribLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferBase", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationIndexedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFramebuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindImageTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint8_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindSampler", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTexture", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTransformFeedback", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrier", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquation", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunc", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunci", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebuffer", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferANGLE", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferNV", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferData", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferSubData", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCheckFramebufferStatus", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClear", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfi", GetTrampolineFunc<auto(uint32_t, int32_t, float, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearDepthf", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearPixelLocalStorageuiEXT", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearStencil", GetTrampolineFunc<auto(int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexSubImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClipControlEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMask", GetTrampolineFunc<auto(uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaski", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiEXT", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiOES", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompileShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glConservativeRasterParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubDataNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataOES", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTextureLevelsAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageMaskNV", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageOperationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreatePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateProgram", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShader", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCullFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallback", GetTrampolineFunc<auto(auto(*)(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallbackKHR", DoCustomTrampoline_glDebugMessageCallbackKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glDebugMessageControl", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageControlKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsert", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsertKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePathsNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSync", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSyncAPPLE", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthFunc", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthMask", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangef", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDetachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDiscardFramebufferEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchCompute", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchComputeIndirect", GetTrampolineFunc<auto(int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArrays", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysIndirect", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersIndexedEXT", GetTrampolineFunc<auto(int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElements", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsIndirect", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElements", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackInstancedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawVkImageNV", GetTrampolineFunc<auto(uint64_t, uint32_t, float, float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetRenderbufferStorageOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexture2DOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTextureStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndConditionalRenderNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQuery", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQueryEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTilingQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBufferPointervQCOM", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetFramebuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramBinarySourceQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetRenderbuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetShadersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexLevelParameterivQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexSubImageQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexturesQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtIsProgramBinaryQCOM", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glExtTexObjectStateOverrideiQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSync", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSyncAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFinish", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFinishFenceNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlush", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRange", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFragmentCoverageColorNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierQCOM", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationConfigQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2D", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture3DOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayerDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultisampleMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFrontFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenPathsNV", GetTrampolineFunc<auto(int32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGenPerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenerateMipmap", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveAttrib", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniform", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockName", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformsiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttachedShaders", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttribLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleani_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleanv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteri64v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointervOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLogKHR", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlStringQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetError", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFenceivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFirstPerfQueryIdINTEL", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloatv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataIndexEXT", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferAttachmentParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatus", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusEXT", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusKHR", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetImageHandleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint8_t, int32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64i_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64v", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64vAPPLE", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformatSampleivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformativ", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMultisamplefv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetNextPerfQueryIdINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCommandsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCoordsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathLengthNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> float>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathSpacingNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, float, float, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfCounterInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*, uint32_t, void*, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterDataAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterInfoAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterStringAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupStringAMD", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupsAMD", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryDataINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryIdByNameINTEL", GetTrampolineFunc<auto(void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointervKHR", DoCustomTrampoline_glGetPointervKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetProgramBinary", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInterfaceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLogEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceIndex", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocationIndexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceName", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourcefvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjecti64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetRenderbufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderPrecisionFormat", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetString", GetTrampolineFunc<auto(uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetStringi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetSynciv", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSyncivAPPLE", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameterfv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameteriv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleIMG", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleNV", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTransformFeedbackVarying", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTranslatedShaderSourceANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformBlockIndex", GetTrampolineFunc<auto(uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformIndices", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformi64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytei_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytevEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVkProcAddrNV", DoBadTrampoline, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetnUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glHint", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportMemoryFdEXT", GetTrampolineFunc<auto(uint32_t, uint64_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportSemaphoreFdEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInsertEventMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInterpolatePathsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateSubFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glIsBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabled", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabledi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFramebuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsMemoryObjectEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPathNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInStrokePathNV", GetTrampolineFunc<auto(uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgram", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQuery", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQueryEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsRenderbuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSampler", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSemaphoreEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsShader", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSync", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSyncAPPLE", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTexture", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArray", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glLabelObjectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLineWidth", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLinkProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRange", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixFrustumEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadIdentityEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoaddEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultdEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixOrthoEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPopEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPushEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScaledEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScalefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMaxShaderCompilerThreadsKHR", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrier", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrierByRegion", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShading", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShadingOES", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysEXT", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysIndirectEXT", GetTrampolineFunc<auto(uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsIndirectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteri", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriOES", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoverDepthFuncNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexRangeNV", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, uint32_t, float, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, void*, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathMemoryGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, int32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameteriNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilDepthOffsetNV", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilFuncNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStringNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPauseTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPixelStorei", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPointAlongPathNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, float, void*, void*, void*, void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonModeNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffset", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffsetClampEXT", GetTrampolineFunc<auto(float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroup", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroupKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopGroupMarkerEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBox", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxEXT", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxOES", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinary", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteriEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramPathFragmentInputGenNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1f", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64IMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vIMG", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroup", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroupKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushGroupMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glQueryCounterEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRasterSamplesEXT", GetTrampolineFunc<auto(uint32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBuffer", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferIndexedEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsEXT", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsKHR", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReleaseShaderCompiler", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorage", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleAPPLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleIMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveDepthValuesNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveMultisampleFramebufferAPPLE", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResumeTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleCoverage", GetTrampolineFunc<auto(float, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleMaski", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissor", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSelectPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, uint8_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSetFenceNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderBinary", GetTrampolineFunc<auto(int32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkFenceNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStartTilingQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFunc", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMask", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMaskSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOp", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOpSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSubpixelPrecisionBiasNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTestFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glTexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexPageCommitmentEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage1DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisampleOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage1DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage2DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage3DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformFeedbackVaryings", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1f", GetTrampolineFunc<auto(int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i", GetTrampolineFunc<auto(int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64NV", GetTrampolineFunc<auto(int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui", GetTrampolineFunc<auto(int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2f", GetTrampolineFunc<auto(int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3f", GetTrampolineFunc<auto(int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4f", GetTrampolineFunc<auto(int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformBlockBinding", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64IMG", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vIMG", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBufferOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStages", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStagesEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1f", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2f", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3f", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4f", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribBinding", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorANGLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4iv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4ui", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4uiv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexBindingDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewport", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportPositionWScaleNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportSwizzleNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWeightPathsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWindowRectanglesEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+}; // kKnownTrampolines
+const KnownVariable kKnownVariables[] = {
+}; // kKnownVariables
+// clang-format on
diff --git a/libGLESv3/proxy/trampolines_riscv64_to_x86_64-inl.h b/libGLESv3/proxy/trampolines_riscv64_to_x86_64-inl.h
new file mode 100644
index 0000000..3d0bd6f
--- /dev/null
+++ b/libGLESv3/proxy/trampolines_riscv64_to_x86_64-inl.h
@@ -0,0 +1,852 @@
+// clang-format off
+const KnownTrampoline kKnownTrampolines[] = {
+{"glActiveShaderProgram", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveShaderProgramEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glActiveTexture", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAlphaFuncQCOM", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glApplyFramebufferAttachmentCMAAINTEL", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glAttachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginConditionalRenderNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQuery", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginQueryEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBeginTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindAttribLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferBase", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFragDataLocationIndexedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindFramebuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindImageTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint8_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindSampler", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTexture", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindTransformFeedback", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBindVertexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrier", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendBarrierNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquation", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendEquationiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunc", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparatei", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFuncSeparateiOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunci", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendFunciOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlendParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebuffer", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferANGLE", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBlitFramebufferNV", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferData", GetTrampolineFunc<auto(uint32_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageEXT", GetTrampolineFunc<auto(uint32_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int64_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glBufferSubData", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCheckFramebufferStatus", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClear", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfi", GetTrampolineFunc<auto(uint32_t, int32_t, float, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearBufferuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearColor", GetTrampolineFunc<auto(float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearDepthf", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearPixelLocalStorageuiEXT", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearStencil", GetTrampolineFunc<auto(int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClearTexSubImageEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClientWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glClipControlEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMask", GetTrampolineFunc<auto(uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaski", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiEXT", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glColorMaskiOES", GetTrampolineFunc<auto(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompileShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCompressedTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glConservativeRasterParameteriNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyBufferSubDataNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubData", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyImageSubDataOES", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCopyTextureLevelsAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageMaskNV", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCoverageOperationNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreatePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glCreateProgram", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShader", GetTrampolineFunc<auto(uint32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCreateShaderProgramvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glCullFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallback", GetTrampolineFunc<auto(auto(*)(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageCallbackKHR", DoCustomTrampoline_glDebugMessageCallbackKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glDebugMessageControl", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageControlKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsert", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDebugMessageInsertKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteMemoryObjectsEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePathsNV", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeletePerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteShader", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSync", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteSyncAPPLE", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDeleteVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthFunc", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthMask", GetTrampolineFunc<auto(uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeArrayfvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangeIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDepthRangef", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDetachShader", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDisableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDiscardFramebufferEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchCompute", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDispatchComputeIndirect", GetTrampolineFunc<auto(int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArrays", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysIndirect", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawArraysInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersIndexedEXT", GetTrampolineFunc<auto(int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawBuffersNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElements", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsIndirect", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstanced", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertex", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexBaseInstanceEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedBaseVertexOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawElementsInstancedNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElements", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertex", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawRangeElementsBaseVertexOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawTransformFeedbackInstancedEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glDrawVkImageNV", GetTrampolineFunc<auto(uint64_t, uint32_t, float, float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetRenderbufferStorageOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTexture2DOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEGLImageTargetTextureStorageEXT", GetTrampolineFunc<auto(uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnable", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableDriverControlQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableVertexAttribArray", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnablei", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEnableiOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndConditionalRenderNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfMonitorAMD", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndPerfQueryINTEL", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQuery", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndQueryEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTilingQCOM", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glEndTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBufferPointervQCOM", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetBuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetFramebuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramBinarySourceQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetProgramsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetRenderbuffersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetShadersQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexLevelParameterivQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexSubImageQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtGetTexturesQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glExtIsProgramBinaryQCOM", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glExtTexObjectStateOverrideiQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSync", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFenceSyncAPPLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glFinish", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFinishFenceNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlush", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRange", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFlushMappedBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFragmentCoverageColorNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFetchBarrierQCOM", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationConfigQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferRenderbuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2D", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture2DMultisampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTexture3DOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureLayerDownsampleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultisampleMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureMultiviewOVR", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFramebufferTextureOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glFrontFace", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenBuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFencesNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenFramebuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenPathsNV", GetTrampolineFunc<auto(int32_t) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGenPerfMonitorsAMD", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelines", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenProgramPipelinesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueries", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenQueriesEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenRenderbuffers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSamplers", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenSemaphoresEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTextures", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenTransformFeedbacks", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArrays", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenVertexArraysOES", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGenerateMipmap", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveAttrib", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniform", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockName", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformBlockiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetActiveUniformsiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttachedShaders", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetAttribLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleani_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBooleanv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteri64v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetBufferPointervOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetCoverageModulationTableNV", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDebugMessageLogKHR", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*, void*, void*, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlStringQCOM", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetDriverControlsQCOM", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetError", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFenceivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFirstPerfQueryIdINTEL", GetTrampolineFunc<auto(void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloati_vOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFloatv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataIndexEXT", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFragDataLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferAttachmentParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetFramebufferPixelLocalStorageSizeEXT", GetTrampolineFunc<auto(uint32_t) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatus", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusEXT", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetGraphicsResetStatusKHR", GetTrampolineFunc<auto(void) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetImageHandleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint8_t, int32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64i_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64v", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInteger64vAPPLE", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_v", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegeri_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetIntegerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformatSampleivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetInternalformativ", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetMultisamplefv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetNextPerfQueryIdINTEL", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCommandsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathCoordsNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathLengthNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> float>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathMetricsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPathSpacingNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*, uint32_t, float, float, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfCounterInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*, uint32_t, void*, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterDataAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterInfoAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCounterStringAMD", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupStringAMD", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfMonitorGroupsAMD", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryDataINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryIdByNameINTEL", GetTrampolineFunc<auto(void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPerfQueryInfoINTEL", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointerv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetPointervKHR", DoCustomTrampoline_glGetPointervKHR, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetProgramBinary", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramInterfaceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineInfoLogEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramPipelineivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceIndex", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocation", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceLocationIndexEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceName", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourcefvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramResourceiv", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int32_t, void*, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetProgramiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjecti64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryObjectuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetQueryivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetRenderbufferParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderInfoLog", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderPrecisionFormat", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetShaderiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetString", GetTrampolineFunc<auto(uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetStringi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glGetSynciv", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetSyncivAPPLE", GetTrampolineFunc<auto(void*, uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameterfv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexLevelParameteriv", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleIMG", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureHandleNV", GetTrampolineFunc<auto(uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleIMG", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTextureSamplerHandleNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint64_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetTransformFeedbackVarying", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*, void*, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetTranslatedShaderSourceANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformBlockIndex", GetTrampolineFunc<auto(uint32_t, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformIndices", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformLocation", GetTrampolineFunc<auto(uint32_t, void*) -> int32_t>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformi64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytei_vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetUnsignedBytevEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribPointerv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVertexAttribiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetVkProcAddrNV", DoBadTrampoline, reinterpret_cast<void*>(DoBadThunk)},
+{"glGetnUniformfv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformfvKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glGetnUniformuivKHR", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glHint", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportMemoryFdEXT", GetTrampolineFunc<auto(uint32_t, uint64_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glImportSemaphoreFdEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInsertEventMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInterpolatePathsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glInvalidateSubFramebuffer", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glIsBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabled", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnabledi", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsEnablediOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsFramebuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsMemoryObjectEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPathNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsPointInStrokePathNV", GetTrampolineFunc<auto(uint32_t, float, float) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgram", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQuery", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsQueryEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsRenderbuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSampler", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSemaphoreEXT", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsShader", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSync", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsSyncAPPLE", GetTrampolineFunc<auto(void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTexture", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsTransformFeedback", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArray", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glIsVertexArrayOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glLabelObjectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLineWidth", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glLinkProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeImageHandleResidentNV", GetTrampolineFunc<auto(uint64_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleNonResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMakeTextureHandleResidentNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRange", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMapBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, uint32_t) -> void*>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixFrustumEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoad3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadIdentityEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoaddEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixLoadfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x2fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMult3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTranspose3x3fNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposedEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultTransposefEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultdEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixMultfEXT", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixOrthoEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPopEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixPushEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixRotatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScaledEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixScalefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatedEXT", GetTrampolineFunc<auto(uint32_t, double, double, double) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMatrixTranslatefEXT", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMaxShaderCompilerThreadsKHR", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrier", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryBarrierByRegion", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMemoryObjectParameterivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShading", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMinSampleShadingOES", GetTrampolineFunc<auto(float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysEXT", GetTrampolineFunc<auto(uint32_t, void*, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawArraysIndirectEXT", GetTrampolineFunc<auto(uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsBaseVertexEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsEXT", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glMultiDrawElementsIndirectEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageExternalEXT", GetTrampolineFunc<auto(uint32_t, int64_t, int64_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedBufferStorageMemEXT", GetTrampolineFunc<auto(uint32_t, int64_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glNamedFramebufferSampleLocationsfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabel", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectLabelKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabel", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glObjectPtrLabelKHR", GetTrampolineFunc<auto(void*, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteri", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPatchParameteriOES", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathCoverDepthFuncNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathDashArrayNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphIndexRangeNV", GetTrampolineFunc<auto(uint32_t, void*, uint32_t, uint32_t, float, void*) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphRangeNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, uint32_t, int32_t, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathGlyphsNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, void*, uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathMemoryGlyphIndexArrayNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int64_t, void*, int32_t, uint32_t, int32_t, uint32_t, float) -> uint32_t>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfNV", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterfvNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameteriNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathParameterivNV", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilDepthOffsetNV", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStencilFuncNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathStringNV", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCommandsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, void*, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPathSubCoordsNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPauseTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPixelStorei", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPointAlongPathNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, float, void*, void*, void*, void*) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonModeNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffset", GetTrampolineFunc<auto(float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPolygonOffsetClampEXT", GetTrampolineFunc<auto(float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroup", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopDebugGroupKHR", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPopGroupMarkerEXT", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBox", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxEXT", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPrimitiveBoundingBoxOES", GetTrampolineFunc<auto(float, float, float, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinary", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramBinaryOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramParameteriEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramPathFragmentInputGenNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1f", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform1uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform2uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform3uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4f", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fEXT", GetTrampolineFunc<auto(uint32_t, int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64NV", GetTrampolineFunc<auto(uint32_t, int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4i64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4iv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4ui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uiv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniform4uivEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64IMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64NV", GetTrampolineFunc<auto(uint32_t, int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vIMG", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformHandleui64vNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix2x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix3x4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x2fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fv", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glProgramUniformMatrix4x3fvEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroup", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushDebugGroupKHR", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glPushGroupMarkerEXT", GetTrampolineFunc<auto(int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glQueryCounterEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRasterSamplesEXT", GetTrampolineFunc<auto(uint32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBuffer", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferIndexedEXT", GetTrampolineFunc<auto(uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadBufferNV", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixels", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsEXT", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReadnPixelsKHR", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glReleaseShaderCompiler", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorage", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleANGLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleAPPLE", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleIMG", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glRenderbufferStorageMultisampleNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveDepthValuesNV", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResolveMultisampleFramebufferAPPLE", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glResumeTransformFeedback", GetTrampolineFunc<auto(void) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleCoverage", GetTrampolineFunc<auto(float, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSampleMaski", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSamplerParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissor", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedNV", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glScissorIndexedvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSelectPerfMonitorCountersAMD", GetTrampolineFunc<auto(uint32_t, uint8_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSemaphoreParameterui64vEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSetFenceNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderBinary", GetTrampolineFunc<auto(int32_t, void*, uint32_t, void*, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glShaderSource", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkFenceNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSignalVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStartTilingQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFunc", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilFuncSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMask", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilMaskSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOp", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilOpSeparate", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverFillPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathInstancedNV", GetTrampolineFunc<auto(int32_t, uint32_t, void*, uint32_t, int32_t, uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glStencilThenCoverStrokePathNV", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glSubpixelPrecisionBiasNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTestFenceNV", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glTexBuffer", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRange", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexBufferRangeOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexPageCommitmentEXT", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuiv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterIuivOES", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterf", GetTrampolineFunc<auto(uint32_t, uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameterfv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteri", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexParameteriv", GetTrampolineFunc<auto(uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage1DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage2DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3D", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisample", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorage3DMultisampleOES", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage2D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3D", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTexSubImage3DOES", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureFoveationParametersQCOM", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, float, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage1DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage2DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorage3DEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem2DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureStorageMem3DMultisampleEXT", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, uint8_t, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTextureViewOES", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformFeedbackVaryings", GetTrampolineFunc<auto(uint32_t, int32_t, void*, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glTransformPathNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1f", GetTrampolineFunc<auto(int32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i", GetTrampolineFunc<auto(int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64NV", GetTrampolineFunc<auto(int32_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui", GetTrampolineFunc<auto(int32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform1uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2f", GetTrampolineFunc<auto(int32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform2uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3f", GetTrampolineFunc<auto(int32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform3uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4f", GetTrampolineFunc<auto(int32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4fv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64NV", GetTrampolineFunc<auto(int32_t, int64_t, int64_t, int64_t, int64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4i64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4iv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui", GetTrampolineFunc<auto(int32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64NV", GetTrampolineFunc<auto(int32_t, uint64_t, uint64_t, uint64_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4ui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniform4uiv", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformBlockBinding", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64IMG", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64NV", GetTrampolineFunc<auto(int32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vIMG", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformHandleui64vNV", GetTrampolineFunc<auto(int32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix2x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix3x4fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x2fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fv", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUniformMatrix4x3fvNV", GetTrampolineFunc<auto(int32_t, int32_t, uint8_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBuffer", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUnmapBufferOES", GetTrampolineFunc<auto(uint32_t) -> uint8_t>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStages", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glUseProgramStagesEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgram", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipeline", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glValidateProgramPipelineEXT", GetTrampolineFunc<auto(uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1f", GetTrampolineFunc<auto(uint32_t, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib1fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2f", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib2fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3f", GetTrampolineFunc<auto(uint32_t, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib3fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4f", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttrib4fv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribBinding", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorANGLE", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorEXT", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribDivisorNV", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4i", GetTrampolineFunc<auto(uint32_t, int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4iv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4ui", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribI4uiv", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIFormat", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribIPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexAttribPointer", GetTrampolineFunc<auto(uint32_t, int32_t, uint32_t, uint8_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glVertexBindingDivisor", GetTrampolineFunc<auto(uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewport", GetTrampolineFunc<auto(int32_t, int32_t, int32_t, int32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportArrayvOES", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfNV", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfOES", GetTrampolineFunc<auto(uint32_t, float, float, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvNV", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportIndexedfvOES", GetTrampolineFunc<auto(uint32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportPositionWScaleNV", GetTrampolineFunc<auto(uint32_t, float, float) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glViewportSwizzleNV", GetTrampolineFunc<auto(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSemaphoreEXT", GetTrampolineFunc<auto(uint32_t, uint32_t, void*, uint32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSync", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitSyncAPPLE", GetTrampolineFunc<auto(void*, uint32_t, uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWaitVkSemaphoreNV", GetTrampolineFunc<auto(uint64_t) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWeightPathsNV", GetTrampolineFunc<auto(uint32_t, int32_t, void*, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+{"glWindowRectanglesEXT", GetTrampolineFunc<auto(uint32_t, int32_t, void*) -> void>(), reinterpret_cast<void*>(NULL)},
+}; // kKnownTrampolines
+const KnownVariable kKnownVariables[] = {
+}; // kKnownVariables
+// clang-format on