airlied pushed to libepoxy (master). "update GL registry files (add new EGL extension)"

notifications at fedoraproject.org notifications at fedoraproject.org
Tue May 5 04:20:03 UTC 2015


>From db1b7c0a3ae99a1ff58eca1a79722edd7a9c2713 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied at redhat.com>
Date: Tue, 5 May 2015 14:19:48 +1000
Subject: update GL registry files (add new EGL extension)


diff --git a/libepoxy.spec b/libepoxy.spec
index 232b9ab..3a685d1 100644
--- a/libepoxy.spec
+++ b/libepoxy.spec
@@ -6,7 +6,7 @@
 Summary: epoxy runtime library
 Name: libepoxy
 Version: 1.2
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: MIT
 URL: http://github.com/anholt/libepoxy
 # github url - generated archive
@@ -24,6 +24,8 @@ Patch1: 0001-Use-the-EGL-pkgconfig-for-finding-eglplatform.h.patch
 Patch2: 0002-Fix-context-type-detection-if-we-find-eglGetCurrentC.patch
 Patch3: 0003-Avoid-name-conflicts-between-pkgconfig-s-EGL_LIBS-an.patch
 
+Patch4: update-registry.patch
+
 %description
 A library for handling OpenGL function pointer management.
 
@@ -40,6 +42,7 @@ developing applications that use %{name}.
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 %build
 autoreconf -vif || exit 1
@@ -76,6 +79,9 @@ make check ||:
 %{_libdir}/pkgconfig/epoxy.pc
 
 %changelog
+* Tue May 05 2015 Dave Airlie <airlied at redhat.com> 1.2-3
+- update GL registry files (add new EGL extension)
+
 * Wed Mar 25 2015 Adam Jackson <ajax at redhat.com> 1.2-2
 - Fix description to not talk about DRM
 - Sync some small bugfixes from git
diff --git a/update-registry.patch b/update-registry.patch
new file mode 100644
index 0000000..fad5d07
--- /dev/null
+++ b/update-registry.patch
@@ -0,0 +1,9523 @@
+diff --git a/registry/egl.xml b/registry/egl.xml
+index 6f6ebc3..4162be9 100644
+--- a/registry/egl.xml
++++ b/registry/egl.xml
+@@ -54,22 +54,25 @@
+         <type>typedef unsigned int <name>EGLenum</name>;</type>
+         <type requires="khrplatform">typedef intptr_t <name>EGLAttribKHR</name>;</type>
+         <type requires="khrplatform">typedef intptr_t <name>EGLAttrib</name>;</type>
++        <type>typedef void *<name>EGLClientBuffer</name>;</type>
+         <type>typedef void *<name>EGLConfig</name>;</type>
+         <type>typedef void *<name>EGLContext</name>;</type>
++        <type>typedef void *<name>EGLDeviceEXT</name>;</type>
+         <type>typedef void *<name>EGLDisplay</name>;</type>
+-        <type>typedef void *<name>EGLSurface</name>;</type>
+-        <type>typedef void *<name>EGLClientBuffer</name>;</type>
+-        <type>typedef void (*<name>__eglMustCastToProperFunctionPointerType</name>)(void);</type>
+-        <type>typedef void *<name>EGLImageKHR</name>;</type>
+         <type>typedef void *<name>EGLImage</name>;</type>
+-        <type>typedef void *<name>EGLSyncKHR</name>;</type>
++        <type>typedef void *<name>EGLImageKHR</name>;</type>
++        <type>typedef void *<name>EGLOutputLayerEXT</name>;</type>
++        <type>typedef void *<name>EGLOutputPortEXT</name>;</type>
++        <type>typedef void *<name>EGLStreamKHR</name>;</type>
++        <type>typedef void *<name>EGLSurface</name>;</type>
+         <type>typedef void *<name>EGLSync</name>;</type>
++        <type>typedef void *<name>EGLSyncKHR</name>;</type>
++        <type>typedef void *<name>EGLSyncNV</name>;</type>
++        <type>typedef void (*<name>__eglMustCastToProperFunctionPointerType</name>)(void);</type>
+         <type requires="khrplatform">typedef khronos_utime_nanoseconds_t <name>EGLTimeKHR</name>;</type>
+         <type requires="khrplatform">typedef khronos_utime_nanoseconds_t <name>EGLTime</name>;</type>
+-        <type>typedef void *<name>EGLSyncNV</name>;</type>
+         <type requires="khrplatform">typedef khronos_utime_nanoseconds_t <name>EGLTimeNV</name>;</type>
+         <type requires="khrplatform">typedef khronos_utime_nanoseconds_t <name>EGLuint64NV</name>;</type>
+-        <type>typedef void *<name>EGLStreamKHR</name>;</type>
+         <type requires="khrplatform">typedef khronos_uint64_t <name>EGLuint64KHR</name>;</type>
+         <type>typedef int <name>EGLNativeFileDescriptorKHR</name>;</type>
+         <type requires="khrplatform">typedef khronos_ssize_t <name>EGLsizeiANDROID</name>;</type>
+@@ -172,10 +175,14 @@
+         <enum value="-1" name="EGL_NO_NATIVE_FENCE_FD_ANDROID"/>
+         <enum value="0" name="EGL_DEPTH_ENCODING_NONE_NV"/>
+         <enum value="((EGLContext)0)" name="EGL_NO_CONTEXT"/>
++        <enum value="((EGLDeviceEXT)(0))" name="EGL_NO_DEVICE_EXT"/>
+         <enum value="((EGLDisplay)0)" name="EGL_NO_DISPLAY"/>
++        <enum value="((EGLImage)0)" name="EGL_NO_IMAGE"/>
+         <enum value="((EGLImageKHR)0)" name="EGL_NO_IMAGE_KHR"/>
+         <enum value="((EGLNativeDisplayType)0)" name="EGL_DEFAULT_DISPLAY"/>
+         <enum value="((EGLNativeFileDescriptorKHR)(-1))" name="EGL_NO_FILE_DESCRIPTOR_KHR"/>
++        <enum value="((EGLOutputLayerEXT)0)" name="EGL_NO_OUTPUT_LAYER_EXT"/>
++        <enum value="((EGLOutputPortEXT)0)" name="EGL_NO_OUTPUT_PORT_EXT"/>
+         <enum value="((EGLStreamKHR)0)" name="EGL_NO_STREAM_KHR"/>
+         <enum value="((EGLSurface)0)" name="EGL_NO_SURFACE"/>
+         <enum value="((EGLSync)0)" name="EGL_NO_SYNC"/>
+@@ -370,6 +377,7 @@
+ 
+     <enums namespace="EGL" start="0x30D0" end="0x30DF" vendor="Symbian" comment="Reserved for Robert Palmer (bug #2545)">
+             <unused start="0x30D0" end="0x30D1"/>
++        <enum value="0x30D2" name="EGL_IMAGE_PRESERVED"/>
+         <enum value="0x30D2" name="EGL_IMAGE_PRESERVED_KHR"/>
+             <unused start="0x30D3" end="0x30D9"/>
+         <enum value="0x30DA" name="EGL_SHARED_IMAGE_NOK" comment="Unreleased extension"/>
+@@ -453,8 +461,10 @@
+             <unused start="0x3137"/>
+         <enum value="0x3138" name="EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT"/>
+             <unused start="0x3139" end="0x313C"/>
+-        <enum value="0x313D" name="EGL_BUFFER_AGE_EXT"/>
++        <enum value="0x313D" name="EGL_BUFFER_AGE_KHR"/>
++        <enum value="0x313D" name="EGL_BUFFER_AGE_EXT" alias="EGL_BUFFER_AGE_KHR"/>
+             <unused start="0x313E" end="0x313F"/>
++        <enum value="0x313F" name="EGL_PLATFORM_DEVICE_EXT"/>
+     </enums>
+ 
+     <enums namespace="EGL" start="0x3140" end="0x314F" vendor="Google" comment="Reserved for Mathias Agopian (Khronos bug 5199)">
+@@ -549,7 +559,8 @@
+ 
+     <enums namespace="EGL" start="0x3200" end="0x320F" vendor="ANGLE" comment="Reserved for Daniel Koch, ANGLE Project (Khronos bug 7139)">
+         <enum value="0x3200" name="EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE"/>
+-            <unused start="0x3201" end="0x320F"/>
++        <enum value="0x3201" name="EGL_FIXED_SIZE_ANGLE"/>
++            <unused start="0x3202" end="0x320F"/>
+     </enums>
+ 
+     <enums namespace="EGL" start="0x3210" end="0x321F" vendor="KHR">
+@@ -572,7 +583,25 @@
+     </enums>
+ 
+     <enums namespace="EGL" start="0x3220" end="0x325F" vendor="NV" comment="Reserved for Greg Roth (Bug 8220)">
+-            <unused start="0x3220" end="0x325F"/>
++            <unused start="0x3220" end="0x322A"/>
++        <enum value="0x322B" name="EGL_BAD_DEVICE_EXT"/>
++        <enum value="0x322C" name="EGL_DEVICE_EXT"/>
++        <enum value="0x322D" name="EGL_BAD_OUTPUT_LAYER_EXT"/>
++        <enum value="0x322E" name="EGL_BAD_OUTPUT_PORT_EXT"/>
++        <enum value="0x322F" name="EGL_SWAP_INTERVAL_EXT"/>
++            <unused start="0x3230" end="0x3232"/>
++        <enum value="0x3233" name="EGL_DRM_DEVICE_FILE_EXT"/>
++        <enum value="0x3234" name="EGL_DRM_CRTC_EXT"/>
++        <enum value="0x3235" name="EGL_DRM_PLANE_EXT"/>
++        <enum value="0x3236" name="EGL_DRM_CONNECTOR_EXT"/>
++        <enum value="0x3237" name="EGL_OPENWF_DEVICE_ID_EXT"/>
++        <enum value="0x3238" name="EGL_OPENWF_PIPELINE_ID_EXT"/>
++        <enum value="0x3239" name="EGL_OPENWF_PORT_ID_EXT"/>
++        <enum value="0x323A" name="EGL_CUDA_DEVICE_NV"/>
++        <enum value="0x323B" name="EGL_CUDA_EVENT_HANDLE_NV"/>
++        <enum value="0x323C" name="EGL_SYNC_CUDA_EVENT_NV"/>
++        <enum value="0x323D" name="EGL_SYNC_CUDA_EVENT_COMPLETE_NV"/>
++            <unused start="0x323E" end="0x325F"/>
+     </enums>
+ 
+     <enums namespace="EGL" start="0x3260" end="0x326F" vendor="BCOM" comment="Reserved for Gary Sweet, Broadcom (Public bug 620)">
+@@ -611,7 +640,9 @@
+     </enums>
+ 
+     <enums namespace="EGL" start="0x32A0" end="0x32AF" vendor="Samsung" comment="Reserved for Dongyeon Kim (Public bug 880)">
+-            <unused start="0x32A0" end="0x32AF"/>
++        <enum value="0x32A0" name="EGL_NATIVE_BUFFER_TIZEN"/>
++        <enum value="0x32A1" name="EGL_NATIVE_SURFACE_TIZEN"/>
++            <unused start="0x32A2" end="0x32AF"/>
+     </enums>
+ 
+     <enums namespace="EGL" start="0x32B0" end="0x32BF" vendor="QCOM" comment="Reserved for Jeff Vigil (Bug 10663) - EGL_QCOM_lock_image spec TBD">
+@@ -623,8 +654,66 @@
+             <unused start="0x32C1" end="0x32CF"/>
+     </enums>
+ 
+-    <enums namespace="EGL" start="0x32D0" end="0x32DF" vendor="QCOM" comment="Reserved for Jeff Vigil (Bug 11735) - EGL_QCOM_gpu_perf spec TBD">
+-            <unused start="0x32D0" end="0x32DF"/>
++    <enums namespace="EGL" start="0x32D0" end="0x32EF" vendor="QCOM" comment="Reserved for Jeff Vigil (Bug 11735) - EGL_QCOM_gpu_perf spec TBD + Bug 12286 - EGL_QCOM_content_protection spec TBD">
++            <unused start="0x32D0" end="0x32EF"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x32F0" end="0x32FF" vendor="BCOM" comment="Reserved for Gary Sweet, Broadcom (Bug 12870)">
++            <unused start="0x32F0" end="0x32FF"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x3300" end="0x331F" vendor="QCOM" comment="Reserved for Jeff Vigil (Bugs 12973,12849) - EGL_EXT_yuv_surface spec TBD">
++        <enum value="0x3300" name="EGL_YUV_BUFFER_EXT"/>
++        <enum value="0x3301" name="EGL_YUV_ORDER_EXT"/>
++        <enum value="0x3302" name="EGL_YUV_ORDER_YUV_EXT"/>
++        <enum value="0x3303" name="EGL_YUV_ORDER_YVU_EXT"/>
++        <enum value="0x3304" name="EGL_YUV_ORDER_YUYV_EXT"/>
++        <enum value="0x3305" name="EGL_YUV_ORDER_UYVY_EXT"/>
++        <enum value="0x3306" name="EGL_YUV_ORDER_YVYU_EXT"/>
++        <enum value="0x3307" name="EGL_YUV_ORDER_VYUY_EXT"/>
++        <enum value="0x3308" name="EGL_YUV_ORDER_AYUV_EXT"/>
++            <unused start="0x3309"/>
++        <enum value="0x330A" name="EGL_YUV_CSC_STANDARD_EXT"/>
++        <enum value="0x330B" name="EGL_YUV_CSC_STANDARD_601_EXT"/>
++        <enum value="0x330C" name="EGL_YUV_CSC_STANDARD_709_EXT"/>
++        <enum value="0x330D" name="EGL_YUV_CSC_STANDARD_2020_EXT"/>
++            <unused start="0x330E" end="0x3310"/>
++        <enum value="0x3311" name="EGL_YUV_NUMBER_OF_PLANES_EXT"/>
++        <enum value="0x3312" name="EGL_YUV_SUBSAMPLE_EXT"/>
++        <enum value="0x3313" name="EGL_YUV_SUBSAMPLE_4_2_0_EXT"/>
++        <enum value="0x3314" name="EGL_YUV_SUBSAMPLE_4_2_2_EXT"/>
++        <enum value="0x3315" name="EGL_YUV_SUBSAMPLE_4_4_4_EXT"/>
++            <unused start="0x3316"/>
++        <enum value="0x3317" name="EGL_YUV_DEPTH_RANGE_EXT"/>
++        <enum value="0x3318" name="EGL_YUV_DEPTH_RANGE_LIMITED_EXT"/>
++        <enum value="0x3319" name="EGL_YUV_DEPTH_RANGE_FULL_EXT"/>
++        <enum value="0x331A" name="EGL_YUV_PLANE_BPP_EXT"/>
++        <enum value="0x331B" name="EGL_YUV_PLANE_BPP_0_EXT"/>
++        <enum value="0x331C" name="EGL_YUV_PLANE_BPP_8_EXT"/>
++        <enum value="0x331D" name="EGL_YUV_PLANE_BPP_10_EXT"/>
++            <unused start="0x331E" end="0x331F"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x3320" end="0x339F" vendor="NV" comment="Reserved for James Jones (Bug 13209)">
++            <unused start="0x3320" end="0x339F"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x33A0" end="0x33AF" vendor="ANGLE" comment="Reserved for Shannon Woods (Bug 13175)">
++        <enum value="0x33A0" name="EGL_D3D9_DEVICE_ANGLE"/>
++        <enum value="0x33A1" name="EGL_D3D11_DEVICE_ANGLE"/>
++            <unused start="0x33A2" end="0x33AF"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x33B0" end="0x33BF" vendor="KHR" comment="Reserved for Jeff Vigil (Bug 13357)">
++            <unused start="0x33B0" end="0x33BF"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x33C0" end="0x33DF" vendor="BCOM" comment="Reserved for Gary Sweet (Bug 12203)">
++            <unused start="0x33C0" end="0x33DF"/>
++    </enums>
++
++    <enums namespace="EGL" start="0x33E0" end="0x342F" vendor="QCOM" comment="Reserved for Jeff Vigil (Bugs 10663,13364)">
++            <unused start="0x33E0" end="0x342F"/>
+     </enums>
+ 
+ <!-- Please remember that new enumerant allocations must be obtained by
+@@ -634,11 +723,10 @@
+      Khronos APIs, and new ranges should be allocated with such overlaps in
+      mind. -->
+ 
+-<!-- Reservable for future use: 0x32E0-0x3FFF.
+-     To generate a new range, allocate multiples of 16 starting at the
+-     lowest available point in this block. -->
+-    <enums namespace="EGL" start="0x32E0" end="0x3FFF" vendor="KHR">
+-            <unused start="0x32E0" end="0x3FFF" comment="Reserved for future use"/>
++<!-- Reservable for future use. To generate a new range, allocate multiples
++     of 16 starting at the lowest available point in this block. -->
++    <enums namespace="EGL" start="0x3420" end="0x3FFF" vendor="KHR">
++            <unused start="0x3420" end="0x3FFF" comment="Reserved for future use"/>
+     </enums>
+ 
+     <enums namespace="EGL" start="0x8F70" end="0x8F7F" vendor="HI" comment="For Mark Callow, Khronos bug 4055. Shared with GL.">
+@@ -715,6 +803,14 @@
+             <param>const <ptype>EGLint</ptype> *<name>attrib_list</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLImage</ptype> <name>eglCreateImage</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLContext</ptype> <name>ctx</name></param>
++            <param><ptype>EGLenum</ptype> <name>target</name></param>
++            <param><ptype>EGLClientBuffer</ptype> <name>buffer</name></param>
++            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLImageKHR</ptype> <name>eglCreateImageKHR</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLContext</ptype> <name>ctx</name></param>
+@@ -833,9 +929,15 @@
+             <param><ptype>EGLContext</ptype> <name>ctx</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglDestroyImage</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLImage</ptype> <name>image</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglDestroyImageKHR</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLImageKHR</ptype> <name>image</name></param>
++            <alias name="eglDestroyImage"/>
+         </command>
+         <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglDestroyStreamKHR</name></proto>
+@@ -868,6 +970,22 @@
+             <param><ptype>EGLSyncKHR</ptype> <name>sync</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglExportDMABUFImageMESA</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLImageKHR</ptype> <name>image</name></param>
++            <param>int *<name>fds</name></param>
++            <param><ptype>EGLint</ptype> *<name>strides</name></param>
++            <param><ptype>EGLint</ptype> *<name>offsets</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglExportDMABUFImageQueryMESA</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLImageKHR</ptype> <name>image</name></param>
++            <param>int *<name>fourcc</name></param>
++            <param>int *<name>num_planes</name></param>
++            <param><ptype>EGLuint64KHR</ptype> *<name>modifiers</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglExportDRMImageMESA</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLImageKHR</ptype> <name>image</name></param>
+@@ -911,6 +1029,22 @@
+             <proto><ptype>EGLint</ptype> <name>eglGetError</name></proto>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglGetOutputLayersEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
++            <param><ptype>EGLOutputLayerEXT</ptype> *<name>layers</name></param>
++            <param><ptype>EGLint</ptype> <name>max_layers</name></param>
++            <param><ptype>EGLint</ptype> *<name>num_layers</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglGetOutputPortsEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
++            <param><ptype>EGLOutputPortEXT</ptype> *<name>ports</name></param>
++            <param><ptype>EGLint</ptype> <name>max_ports</name></param>
++            <param><ptype>EGLint</ptype> *<name>num_ports</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLDisplay</ptype> <name>eglGetPlatformDisplay</name></proto>
+             <param><ptype>EGLenum</ptype> <name>platform</name></param>
+             <param>void *<name>native_display</name></param>
+@@ -977,6 +1111,20 @@
+             <param><ptype>EGLContext</ptype> <name>ctx</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglOutputLayerAttribEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputLayerEXT</ptype> <name>layer</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> <name>value</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglOutputPortAttribEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputPortEXT</ptype> <name>port</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> <name>value</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglPostSubBufferNV</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLSurface</ptype> <name>surface</name></param>
+@@ -996,6 +1144,29 @@
+             <param><ptype>EGLint</ptype> *<name>value</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglQueryDeviceAttribEXT</name></proto>
++            <param><ptype>EGLDeviceEXT</ptype> <name>device</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> *<name>value</name></param>
++        </command>
++        <command>
++            <proto>const char *<name>eglQueryDeviceStringEXT</name></proto>
++            <param><ptype>EGLDeviceEXT</ptype> <name>device</name></param>
++            <param><ptype>EGLint</ptype> <name>name</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglQueryDevicesEXT</name></proto>
++            <param><ptype>EGLint</ptype> <name>max_devices</name></param>
++            <param><ptype>EGLDeviceEXT</ptype> *<name>devices</name></param>
++            <param><ptype>EGLint</ptype> *<name>num_devices</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglQueryDisplayAttribEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> *<name>value</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglQueryNativeDisplayNV</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLNativeDisplayType</ptype> *<name>display_id</name></param>
+@@ -1013,6 +1184,32 @@
+             <param><ptype>EGLNativeWindowType</ptype> *<name>window</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglQueryOutputLayerAttribEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputLayerEXT</ptype> <name>layer</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> *<name>value</name></param>
++        </command>
++        <command>
++            <proto>const char *<name>eglQueryOutputLayerStringEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputLayerEXT</ptype> <name>layer</name></param>
++            <param><ptype>EGLint</ptype> <name>name</name></param>
++        </command>
++        <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglQueryOutputPortAttribEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputPortEXT</ptype> <name>port</name></param>
++            <param><ptype>EGLint</ptype> <name>attribute</name></param>
++            <param><ptype>EGLAttrib</ptype> *<name>value</name></param>
++        </command>
++        <command>
++            <proto>const char *<name>eglQueryOutputPortStringEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLOutputPortEXT</ptype> <name>port</name></param>
++            <param><ptype>EGLint</ptype> <name>name</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglQueryStreamKHR</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
+@@ -1075,6 +1272,13 @@
+             <param><ptype>EGLGetBlobFuncANDROID</ptype> <name>get</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglSetDamageRegionKHR</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLSurface</ptype> <name>surface</name></param>
++            <param><ptype>EGLint</ptype> *<name>rects</name></param>
++            <param><ptype>EGLint</ptype> <name>n_rects</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglSignalSyncKHR</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLSyncKHR</ptype> <name>sync</name></param>
+@@ -1103,6 +1307,12 @@
+             <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglStreamConsumerOutputEXT</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
++            <param><ptype>EGLOutputLayerEXT</ptype> <name>layer</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglStreamConsumerReleaseKHR</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
+@@ -1127,6 +1337,13 @@
+             <param><ptype>EGLint</ptype> <name>n_rects</name></param>
+         </command>
+         <command>
++            <proto><ptype>EGLBoolean</ptype> <name>eglSwapBuffersWithDamageKHR</name></proto>
++            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
++            <param><ptype>EGLSurface</ptype> <name>surface</name></param>
++            <param><ptype>EGLint</ptype> *<name>rects</name></param>
++            <param><ptype>EGLint</ptype> <name>n_rects</name></param>
++        </command>
++        <command>
+             <proto><ptype>EGLBoolean</ptype> <name>eglSwapBuffersRegionNOK</name></proto>
+             <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
+             <param><ptype>EGLSurface</ptype> <name>surface</name></param>
+@@ -1424,6 +1641,12 @@
+             <enum name="EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z"/>
+             <enum name="EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"/>
+         </require>
++        <require comment="EGL_KHR_image_base">
++            <enum name="EGL_IMAGE_PRESERVED"/>
++            <enum name="EGL_NO_IMAGE"/>
++            <command name="eglCreateImage"/>
++            <command name="eglDestroyImage"/>
++        </require>
+         <require comment="EGL_EXT_platform_base">
+             <command name="eglGetPlatformDisplay"/>
+             <command name="eglCreatePlatformWindowSurface"/>
+@@ -1471,6 +1694,12 @@
+                 <enum name="EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE"/>
+             </require>
+         </extension>
++        <extension name="EGL_ANGLE_device_d3d" supported="egl">
++            <require>
++                <enum name="EGL_D3D9_DEVICE_ANGLE"/>
++                <enum name="EGL_D3D11_DEVICE_ANGLE"/>
++            </require>
++        </extension>
+         <extension name="EGL_ANGLE_query_surface_pointer" supported="egl">
+             <require>
+                 <command name="eglQuerySurfacePointerANGLE"/>
+@@ -1481,6 +1710,11 @@
+                 <enum name="EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE"/>
+             </require>
+         </extension>
++        <extension name="EGL_ANGLE_window_fixed_size" supported="egl">
++            <require>
++                <enum name="EGL_FIXED_SIZE_ANGLE"/>
++            </require>
++        </extension>
+         <extension name="EGL_ARM_pixmap_multisample_discard" supported="egl">
+             <require>
+                 <enum name="EGL_DISCARD_SAMPLES_ARM"/>
+@@ -1500,6 +1734,42 @@
+                 <enum name="EGL_LOSE_CONTEXT_ON_RESET_EXT"/>
+             </require>
+         </extension>
++        <extension name="EGL_EXT_device_base" supported="egl">
++            <require>
++                <enum name="EGL_NO_DEVICE_EXT"/>
++                <enum name="EGL_BAD_DEVICE_EXT"/>
++                <enum name="EGL_DEVICE_EXT"/>
++                <command name="eglQueryDeviceAttribEXT"/>
++                <command name="eglQueryDeviceStringEXT"/>
++                <command name="eglQueryDevicesEXT"/>
++                <command name="eglQueryDisplayAttribEXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_device_drm" supported="egl">
++            <require>
++                <enum name="EGL_DRM_DEVICE_FILE_EXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_device_enumeration" supported="egl">
++            <require>
++                <command name="eglQueryDevicesEXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_device_openwf" supported="egl">
++            <require>
++                <enum name="EGL_OPENWF_DEVICE_ID_EXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_device_query" supported="egl">
++            <require>
++                <enum name="EGL_NO_DEVICE_EXT"/>
++                <enum name="EGL_BAD_DEVICE_EXT"/>
++                <enum name="EGL_DEVICE_EXT"/>
++                <command name="eglQueryDeviceAttribEXT"/>
++                <command name="eglQueryDeviceStringEXT"/>
++                <command name="eglQueryDisplayAttribEXT"/>
++            </require>
++        </extension>
+         <extension name="EGL_EXT_image_dma_buf_import" supported="egl">
+             <require>
+                 <enum name="EGL_LINUX_DMA_BUF_EXT"/>
+@@ -1531,6 +1801,38 @@
+                 <enum name="EGL_MULTIVIEW_VIEW_COUNT_EXT"/>
+             </require>
+         </extension>
++        <extension name="EGL_EXT_output_base" supported="egl">
++            <require>
++                <type name="EGLOutputLayerEXT"/>
++                <type name="EGLOutputPortEXT"/>
++                <enum name="EGL_NO_OUTPUT_LAYER_EXT"/>
++                <enum name="EGL_NO_OUTPUT_PORT_EXT"/>
++                <enum name="EGL_BAD_OUTPUT_LAYER_EXT"/>
++                <enum name="EGL_BAD_OUTPUT_PORT_EXT"/>
++                <enum name="EGL_SWAP_INTERVAL_EXT"/>
++                <command name="eglGetOutputLayersEXT"/>
++                <command name="eglGetOutputPortsEXT"/>
++                <command name="eglOutputLayerAttribEXT"/>
++                <command name="eglQueryOutputLayerAttribEXT"/>
++                <command name="eglQueryOutputLayerStringEXT"/>
++                <command name="eglOutputPortAttribEXT"/>
++                <command name="eglQueryOutputPortAttribEXT"/>
++                <command name="eglQueryOutputPortStringEXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_output_drm" supported="egl">
++            <require>
++                <enum name="EGL_DRM_CRTC_EXT"/>
++                <enum name="EGL_DRM_PLANE_EXT"/>
++                <enum name="EGL_DRM_CONNECTOR_EXT"/>
++            </require>
++        </extension>
++        <extension name="EGL_EXT_output_openwf" supported="egl">
++            <require>
++                <enum name="EGL_OPENWF_PIPELINE_ID_EXT"/>
++                <enum name="EGL_OPENWF_PORT_ID_EXT"/>
++            </require>
++        </extension>
+         <extension name="EGL_EXT_platform_base" supported="egl">
+             <require>
+                 <command name="eglGetPlatformDisplayEXT"/>
+@@ -1538,6 +1840,11 @@
+                 <command name="eglCreatePlatformPixmapSurfaceEXT"/>
+             </require>
+         </extension>
++        <extension name="EGL_EXT_platform_device" supported="egl">
++            <require>
++                <enum name="EGL_PLATFORM_DEVICE_EXT"/>
++            </require>
++        </extension>
+         <extension name="EGL_EXT_platform_wayland" supported="egl">
+             <require>
+                 <enum name="EGL_PLATFORM_WAYLAND_EXT"/>
+@@ -1554,11 +1861,45 @@
+                 <enum name="EGL_PROTECTED_CONTENT_EXT"/>
+             </require>
+         </extension>
++        <extension name="EGL_EXT_stream_consumer_egloutput" supported="egl">
++            <require>
++                <command name="eglStreamConsumerOutputEXT"/>
++            </require>
++        </extension>
+         <extension name="EGL_EXT_swap_buffers_with_damage" supported="egl">
+             <require>
+                 <command name="eglSwapBuffersWithDamageEXT"/>
+             </require>
+         </extension>
++        <extension name="EGL_EXT_yuv_surface" supported="egl">
++            <require>
++                <enum name="EGL_YUV_ORDER_EXT"/>
++                <enum name="EGL_YUV_NUMBER_OF_PLANES_EXT"/>
++                <enum name="EGL_YUV_SUBSAMPLE_EXT"/>
++                <enum name="EGL_YUV_DEPTH_RANGE_EXT"/>
++                <enum name="EGL_YUV_CSC_STANDARD_EXT"/>
++                <enum name="EGL_YUV_PLANE_BPP_EXT"/>
++                <enum name="EGL_YUV_BUFFER_EXT"/>
++                <enum name="EGL_YUV_ORDER_YUV_EXT"/>
++                <enum name="EGL_YUV_ORDER_YVU_EXT"/>
++                <enum name="EGL_YUV_ORDER_YUYV_EXT"/>
++                <enum name="EGL_YUV_ORDER_UYVY_EXT"/>
++                <enum name="EGL_YUV_ORDER_YVYU_EXT"/>
++                <enum name="EGL_YUV_ORDER_VYUY_EXT"/>
++                <enum name="EGL_YUV_ORDER_AYUV_EXT"/>
++                <enum name="EGL_YUV_SUBSAMPLE_4_2_0_EXT"/>
++                <enum name="EGL_YUV_SUBSAMPLE_4_2_2_EXT"/>
++                <enum name="EGL_YUV_SUBSAMPLE_4_4_4_EXT"/>
++                <enum name="EGL_YUV_DEPTH_RANGE_LIMITED_EXT"/>
++                <enum name="EGL_YUV_DEPTH_RANGE_FULL_EXT"/>
++                <enum name="EGL_YUV_CSC_STANDARD_601_EXT"/>
++                <enum name="EGL_YUV_CSC_STANDARD_709_EXT"/>
++                <enum name="EGL_YUV_CSC_STANDARD_2020_EXT"/>
++                <enum name="EGL_YUV_PLANE_BPP_0_EXT"/>
++                <enum name="EGL_YUV_PLANE_BPP_8_EXT"/>
++                <enum name="EGL_YUV_PLANE_BPP_10_EXT"/>
++            </require>
++        </extension>
+         <extension name="EGL_HI_clientpixmap" supported="egl">
+             <require>
+                 <enum name="EGL_CLIENT_PIXMAP_POINTER_HI"/>
+@@ -1624,10 +1965,14 @@
+         </extension>
+         <extension name="EGL_KHR_fence_sync" protect="KHRONOS_SUPPORT_INT64" supported="egl">
+             <require>
+-                <!-- @ Most interfaces defined by EGL_KHR_reusable sync -->
++                <!-- Most interfaces also defined by EGL_KHR_reusable sync -->
+                 <enum name="EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR"/>
+                 <enum name="EGL_SYNC_CONDITION_KHR"/>
+                 <enum name="EGL_SYNC_FENCE_KHR"/>
++                <command name="eglCreateSyncKHR"/>
++                <command name="eglDestroySyncKHR"/>
++                <command name="eglClientWaitSyncKHR"/>
++                <command name="eglGetSyncAttribKHR"/>
+             </require>
+         </extension>
+         <extension name="EGL_KHR_get_all_proc_addresses" supported="egl"/>
+@@ -1747,6 +2092,12 @@
+                 <command name="eglQuerySurface64KHR"/>
+             </require>
+         </extension>
++        <extension name="EGL_KHR_partial_update" supported="egl">
++            <require>
++                <enum name="EGL_BUFFER_AGE_KHR"/>
++                <command name="eglSetDamageRegionKHR"/>
++            </require>
++        </extension>
+         <extension name="EGL_KHR_platform_android" supported="egl">
+             <require>
+                 <enum name="EGL_PLATFORM_ANDROID_KHR"/>
+@@ -1841,6 +2192,11 @@
+             </require>
+         </extension>
+         <extension name="EGL_KHR_surfaceless_context" supported="egl" comment="Just relaxes an error condition"/>
++        <extension name="EGL_KHR_swap_buffers_with_damage" supported="egl">
++            <require>
++                <command name="eglSwapBuffersWithDamageKHR"/>
++            </require>
++        </extension>
+         <extension name="EGL_KHR_vg_parent_image" supported="egl">
+             <require>
+                 <enum name="EGL_VG_PARENT_IMAGE_KHR"/>
+@@ -1864,6 +2220,13 @@
+                 <command name="eglExportDRMImageMESA"/>
+             </require>
+         </extension>
++        <extension name="EGL_MESA_image_dma_buf_export" supported="egl">
++            <require>
++                <type name="EGLuint64KHR"/>
++                <command name="eglExportDMABUFImageQueryMESA"/>
++                <command name="eglExportDMABUFImageMESA"/>
++            </require>
++        </extension>
+         <extension name="EGL_MESA_platform_gbm" supported="egl">
+             <require>
+                 <enum name="EGL_PLATFORM_GBM_MESA"/>
+@@ -1902,6 +2265,13 @@
+                 <enum name="EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV"/>
+             </require>
+         </extension>
++        <extension name="EGL_NV_cuda_event" supported="egl">
++            <require>
++                <enum name="EGL_CUDA_EVENT_HANDLE_NV"/>
++                <enum name="EGL_SYNC_CUDA_EVENT_NV"/>
++                <enum name="EGL_SYNC_CUDA_EVENT_COMPLETE_NV"/>
++            </require>
++        </extension>
+         <extension name="EGL_NV_depth_nonlinear" supported="egl">
+             <require>
+                 <enum name="EGL_DEPTH_ENCODING_NV"/>
+@@ -1909,6 +2279,11 @@
+                 <enum name="EGL_DEPTH_ENCODING_NONLINEAR_NV"/>
+             </require>
+         </extension>
++        <extension name="EGL_NV_device_cuda" supported="egl">
++            <require>
++                <enum name="EGL_CUDA_DEVICE_NV"/>
++            </require>
++        </extension>
+         <extension name="EGL_NV_native_query" supported="egl">
+             <require>
+                 <command name="eglQueryNativeDisplayNV"/>
+@@ -1962,5 +2337,15 @@
+                 <command name="eglGetSystemTimeNV"/>
+             </require>
+         </extension>
++        <extension name="EGL_TIZEN_image_native_buffer" supported="egl">
++            <require>
++                <enum name="EGL_NATIVE_BUFFER_TIZEN"/>
++            </require>
++        </extension>
++        <extension name="EGL_TIZEN_image_native_surface" supported="egl">
++            <require>
++                <enum name="EGL_NATIVE_SURFACE_TIZEN"/>
++            </require>
++        </extension>
+     </extensions>
+ </registry>
+diff --git a/registry/gl.xml b/registry/gl.xml
+index 56793da..b08a5ec 100644
+--- a/registry/gl.xml
++++ b/registry/gl.xml
+@@ -1726,9 +1726,11 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_LINE_STRIP_ADJACENCY_ARB"/>
+             <enum name="GL_LINE_STRIP_ADJACENCY_EXT"/>
+             <enum name="GL_PATCHES"/>
++            <enum name="GL_PATCHES_EXT"/>
+             <enum name="GL_POINTS"/>
+             <enum name="GL_POLYGON"/>
+             <enum name="GL_QUADS"/>
++            <enum name="GL_QUADS_EXT"/>
+             <enum name="GL_QUAD_STRIP"/>
+             <enum name="GL_TRIANGLES"/>
+             <enum name="GL_TRIANGLES_ADJACENCY"/>
+@@ -1990,8 +1992,11 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_FRAGMENT_SHADER_BIT"/>
+             <enum name="GL_FRAGMENT_SHADER_BIT_EXT"/>
+             <enum name="GL_GEOMETRY_SHADER_BIT"/>
++            <enum name="GL_GEOMETRY_SHADER_BIT_EXT"/>
+             <enum name="GL_TESS_CONTROL_SHADER_BIT"/>
++            <enum name="GL_TESS_CONTROL_SHADER_BIT_EXT"/>
+             <enum name="GL_TESS_EVALUATION_SHADER_BIT"/>
++            <enum name="GL_TESS_EVALUATION_SHADER_BIT_EXT"/>
+             <enum name="GL_COMPUTE_SHADER_BIT"/>
+             <enum name="GL_ALL_SHADER_BITS"/>
+             <enum name="GL_ALL_SHADER_BITS_EXT"/>
+@@ -2035,7 +2040,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x20000000" name="GL_MULTISAMPLE_BIT_ARB"/>
+         <enum value="0x20000000" name="GL_MULTISAMPLE_BIT_EXT"/>
+         <enum value="0x20000000" name="GL_MULTISAMPLE_BIT_3DFX"/>
+-        <enum value="0x000FFFFF" name="GL_ALL_ATTRIB_BITS" comment="Guaranteed to mark all attribute groups at once"/>
++        <enum value="0xFFFFFFFF" name="GL_ALL_ATTRIB_BITS" comment="Guaranteed to mark all attribute groups at once"/>
+     </enums>
+ 
+     <enums namespace="GL" group="ClearBufferMask" type="bitmask" comment="GL_{DEPTH,ACCUM,STENCIL,COLOR}_BUFFER_BIT also lie in this namespace">
+@@ -2054,6 +2059,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x00000002" name="GL_CONTEXT_FLAG_DEBUG_BIT"/>
+         <enum value="0x00000002" name="GL_CONTEXT_FLAG_DEBUG_BIT_KHR"/>
+         <enum value="0x00000004" name="GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"/>
++        <enum value="0x00000004" name="GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT"/>
+     </enums>
+ 
+     <enums namespace="GL" group="ContextProfileMask" type="bitmask">
+@@ -2075,9 +2081,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0020" name="GL_MAP_UNSYNCHRONIZED_BIT"/>
+         <enum value="0x0020" name="GL_MAP_UNSYNCHRONIZED_BIT_EXT"/>
+         <enum value="0x0040" name="GL_MAP_PERSISTENT_BIT"/>
++        <enum value="0x0040" name="GL_MAP_PERSISTENT_BIT_EXT"/>
+         <enum value="0x0080" name="GL_MAP_COHERENT_BIT"/>
++        <enum value="0x0080" name="GL_MAP_COHERENT_BIT_EXT"/>
+         <enum value="0x0100" name="GL_DYNAMIC_STORAGE_BIT"/>
++        <enum value="0x0100" name="GL_DYNAMIC_STORAGE_BIT_EXT"/>
+         <enum value="0x0200" name="GL_CLIENT_STORAGE_BIT"/>
++        <enum value="0x0200" name="GL_CLIENT_STORAGE_BIT_EXT"/>
++        <enum value="0x0400" name="GL_SPARSE_STORAGE_BIT_ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" group="MemoryBarrierMask" type="bitmask">
+@@ -2108,6 +2119,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x00001000" name="GL_ATOMIC_COUNTER_BARRIER_BIT_EXT"/>
+         <enum value="0x00002000" name="GL_SHADER_STORAGE_BARRIER_BIT"/>
+         <enum value="0x00004000" name="GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT"/>
++        <enum value="0x00004000" name="GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT"/>
+         <enum value="0x00008000" name="GL_QUERY_BUFFER_BARRIER_BIT"/>
+         <enum value="0xFFFFFFFF" name="GL_ALL_BARRIER_BITS"/>
+         <enum value="0xFFFFFFFF" name="GL_ALL_BARRIER_BITS_EXT"/>
+@@ -2132,8 +2144,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x00000002" name="GL_FRAGMENT_SHADER_BIT"/>
+         <enum value="0x00000002" name="GL_FRAGMENT_SHADER_BIT_EXT"/>
+         <enum value="0x00000004" name="GL_GEOMETRY_SHADER_BIT"/>
++        <enum value="0x00000004" name="GL_GEOMETRY_SHADER_BIT_EXT"/>
++        <enum value="0x00000004" name="GL_GEOMETRY_SHADER_BIT_OES"/>
+         <enum value="0x00000008" name="GL_TESS_CONTROL_SHADER_BIT"/>
++        <enum value="0x00000008" name="GL_TESS_CONTROL_SHADER_BIT_EXT"/>
++        <enum value="0x00000008" name="GL_TESS_CONTROL_SHADER_BIT_OES"/>
+         <enum value="0x00000010" name="GL_TESS_EVALUATION_SHADER_BIT"/>
++        <enum value="0x00000010" name="GL_TESS_EVALUATION_SHADER_BIT_EXT"/>
++        <enum value="0x00000010" name="GL_TESS_EVALUATION_SHADER_BIT_OES"/>
+         <enum value="0x00000020" name="GL_COMPUTE_SHADER_BIT"/>
+         <enum value="0xFFFFFFFF" name="GL_ALL_SHADER_BITS"/>
+         <enum value="0xFFFFFFFF" name="GL_ALL_SHADER_BITS_EXT"/>
+@@ -2203,6 +2221,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x04000000" name="GL_FONT_UNDERLINE_POSITION_BIT_NV"/>
+         <enum value="0x08000000" name="GL_FONT_UNDERLINE_THICKNESS_BIT_NV"/>
+         <enum value="0x10000000" name="GL_FONT_HAS_KERNING_BIT_NV"/>
++        <enum value="0x20000000" name="GL_FONT_NUM_GLYPH_INDICES_BIT_NV"/>
+     </enums>
+ 
+     <enums namespace="GL" group="PerformanceQueryCapsMaskINTEL" type="bitmask">
+@@ -2274,10 +2293,26 @@ typedef unsigned int GLhandleARB;
+     <!-- Non-bitmask enums with their own namespace. Generally small numbers
+          used for indexed access. -->
+ 
+-    <enums namespace="GL" group="TriangleListSUN" vendor="SUN">
+-        <enum value="0x0001" name="GL_RESTART_SUN"/>
+-        <enum value="0x0002" name="GL_REPLACE_MIDDLE_SUN"/>
+-        <enum value="0x0003" name="GL_REPLACE_OLDEST_SUN"/>
++    <enums namespace="GL" group="CommandOpcodesNV" vendor="NV" comment="For NV_command_list.">
++        <enum value="0x0000" name="GL_TERMINATE_SEQUENCE_COMMAND_NV"/>
++        <enum value="0x0001" name="GL_NOP_COMMAND_NV"/>
++        <enum value="0x0002" name="GL_DRAW_ELEMENTS_COMMAND_NV"/>
++        <enum value="0x0003" name="GL_DRAW_ARRAYS_COMMAND_NV"/>
++        <enum value="0x0004" name="GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"/>
++        <enum value="0x0005" name="GL_DRAW_ARRAYS_STRIP_COMMAND_NV"/>
++        <enum value="0x0006" name="GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"/>
++        <enum value="0x0007" name="GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"/>
++        <enum value="0x0008" name="GL_ELEMENT_ADDRESS_COMMAND_NV"/>
++        <enum value="0x0009" name="GL_ATTRIBUTE_ADDRESS_COMMAND_NV"/>
++        <enum value="0x000A" name="GL_UNIFORM_ADDRESS_COMMAND_NV"/>
++        <enum value="0x000B" name="GL_BLEND_COLOR_COMMAND_NV"/>
++        <enum value="0x000C" name="GL_STENCIL_REF_COMMAND_NV"/>
++        <enum value="0x000D" name="GL_LINE_WIDTH_COMMAND_NV"/>
++        <enum value="0x000E" name="GL_POLYGON_OFFSET_COMMAND_NV"/>
++        <enum value="0x000F" name="GL_ALPHA_REF_COMMAND_NV"/>
++        <enum value="0x0010" name="GL_VIEWPORT_COMMAND_NV"/>
++        <enum value="0x0011" name="GL_SCISSOR_COMMAND_NV"/>
++        <enum value="0x0012" name="GL_FRONT_FACE_COMMAND_NV"/>
+     </enums>
+ 
+     <enums namespace="GL" group="MapTextureFormatINTEL" vendor="INTEL" comment="Texture memory layouts for INTEL_map_texture">
+@@ -2286,14 +2321,6 @@ typedef unsigned int GLhandleARB;
+         <enum value="2" name="GL_LAYOUT_LINEAR_CPU_CACHED_INTEL"/>
+     </enums>
+ 
+-    <enums namespace="GL" group="TransformFeedbackTokenNV" vendor="NV" comment="For NV_transform_feedback. No clue why small negative values are used">
+-        <enum value="-2" name="GL_NEXT_BUFFER_NV"/>
+-        <enum value="-3" name="GL_SKIP_COMPONENTS4_NV"/>
+-        <enum value="-4" name="GL_SKIP_COMPONENTS3_NV"/>
+-        <enum value="-5" name="GL_SKIP_COMPONENTS2_NV"/>
+-        <enum value="-6" name="GL_SKIP_COMPONENTS1_NV"/>
+-    </enums>
+-
+     <enums namespace="GL" group="PathRenderingTokenNV" vendor="NV">
+         <enum value="0x00" name="GL_CLOSE_PATH_NV"/>
+         <enum value="0x02" name="GL_MOVE_TO_NV"/>
+@@ -2320,10 +2347,24 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x17" name="GL_RELATIVE_LARGE_CCW_ARC_TO_NV"/>
+         <enum value="0x18" name="GL_LARGE_CW_ARC_TO_NV"/>
+         <enum value="0x19" name="GL_RELATIVE_LARGE_CW_ARC_TO_NV"/>
++        <enum value="0x1A" name="GL_CONIC_CURVE_TO_NV"/>
++        <enum value="0x1B" name="GL_RELATIVE_CONIC_CURVE_TO_NV"/>
++            <unused start="0x1C" end="0xBF" comment="Unused for PathRenderingTokenNV"/>
++        <enum value="0xC0" name="GL_SHARED_EDGE_NV"/>
++            <unused start="0xC1" end="0xE7" comment="Unused for PathRenderingTokenNV"/>
++        <enum value="0xE8" name="GL_ROUNDED_RECT_NV"/>
++        <enum value="0xE9" name="GL_RELATIVE_ROUNDED_RECT_NV"/>
++        <enum value="0xEA" name="GL_ROUNDED_RECT2_NV"/>
++        <enum value="0xEB" name="GL_RELATIVE_ROUNDED_RECT2_NV"/>
++        <enum value="0xEC" name="GL_ROUNDED_RECT4_NV"/>
++        <enum value="0xED" name="GL_RELATIVE_ROUNDED_RECT4_NV"/>
++        <enum value="0xEE" name="GL_ROUNDED_RECT8_NV"/>
++        <enum value="0xEF" name="GL_RELATIVE_ROUNDED_RECT8_NV"/>
+         <enum value="0xF0" name="GL_RESTART_PATH_NV"/>
+         <enum value="0xF2" name="GL_DUP_FIRST_CUBIC_CURVE_TO_NV"/>
+         <enum value="0xF4" name="GL_DUP_LAST_CUBIC_CURVE_TO_NV"/>
+         <enum value="0xF6" name="GL_RECT_NV"/>
++        <enum value="0xF7" name="GL_RELATIVE_RECT_NV"/>
+         <enum value="0xF8" name="GL_CIRCULAR_CCW_ARC_TO_NV"/>
+         <enum value="0xFA" name="GL_CIRCULAR_CW_ARC_TO_NV"/>
+         <enum value="0xFC" name="GL_CIRCULAR_TANGENT_ARC_TO_NV"/>
+@@ -2331,6 +2372,20 @@ typedef unsigned int GLhandleARB;
+         <enum value="0xFF" name="GL_RELATIVE_ARC_TO_NV"/>
+     </enums>
+ 
++    <enums namespace="GL" group="TransformFeedbackTokenNV" vendor="NV" comment="For NV_transform_feedback. No clue why small negative values are used">
++        <enum value="-2" name="GL_NEXT_BUFFER_NV"/>
++        <enum value="-3" name="GL_SKIP_COMPONENTS4_NV"/>
++        <enum value="-4" name="GL_SKIP_COMPONENTS3_NV"/>
++        <enum value="-5" name="GL_SKIP_COMPONENTS2_NV"/>
++        <enum value="-6" name="GL_SKIP_COMPONENTS1_NV"/>
++    </enums>
++
++    <enums namespace="GL" group="TriangleListSUN" vendor="SUN">
++        <enum value="0x0001" name="GL_RESTART_SUN"/>
++        <enum value="0x0002" name="GL_REPLACE_MIDDLE_SUN"/>
++        <enum value="0x0003" name="GL_REPLACE_OLDEST_SUN"/>
++    </enums>
++
+     <!-- The default ("API") enum namespace starts here. While some
+          assigned values may overlap, and different parts of the
+          namespace are reserved for different purposes, it is a single
+@@ -2364,21 +2419,29 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0005" name="GL_TRIANGLE_STRIP"/>
+         <enum value="0x0006" name="GL_TRIANGLE_FAN"/>
+         <enum value="0x0007" name="GL_QUADS"/>
++        <enum value="0x0007" name="GL_QUADS_EXT"/>
++        <enum value="0x0007" name="GL_QUADS_OES"/>
+         <enum value="0x0008" name="GL_QUAD_STRIP"/>
+         <enum value="0x0009" name="GL_POLYGON"/>
+         <enum value="0x000A" name="GL_LINES_ADJACENCY"/>
+         <enum value="0x000A" name="GL_LINES_ADJACENCY_ARB"/>
+         <enum value="0x000A" name="GL_LINES_ADJACENCY_EXT"/>
++        <enum value="0x000A" name="GL_LINES_ADJACENCY_OES"/>
+         <enum value="0x000B" name="GL_LINE_STRIP_ADJACENCY"/>
+         <enum value="0x000B" name="GL_LINE_STRIP_ADJACENCY_ARB"/>
+         <enum value="0x000B" name="GL_LINE_STRIP_ADJACENCY_EXT"/>
++        <enum value="0x000B" name="GL_LINE_STRIP_ADJACENCY_OES"/>
+         <enum value="0x000C" name="GL_TRIANGLES_ADJACENCY"/>
+         <enum value="0x000C" name="GL_TRIANGLES_ADJACENCY_ARB"/>
+         <enum value="0x000C" name="GL_TRIANGLES_ADJACENCY_EXT"/>
++        <enum value="0x000C" name="GL_TRIANGLES_ADJACENCY_OES"/>
+         <enum value="0x000D" name="GL_TRIANGLE_STRIP_ADJACENCY"/>
+         <enum value="0x000D" name="GL_TRIANGLE_STRIP_ADJACENCY_ARB"/>
+         <enum value="0x000D" name="GL_TRIANGLE_STRIP_ADJACENCY_EXT"/>
++        <enum value="0x000D" name="GL_TRIANGLE_STRIP_ADJACENCY_OES"/>
+         <enum value="0x000E" name="GL_PATCHES"/>
++        <enum value="0x000E" name="GL_PATCHES_EXT"/>
++        <enum value="0x000E" name="GL_PATCHES_OES"/>
+             <unused start="0x000F" end="0x00FF" comment="Unused for PrimitiveType"/>
+         <enum value="0x0100" name="GL_ACCUM"/>
+         <enum value="0x0101" name="GL_LOAD"/>
+@@ -2430,7 +2493,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0506" name="GL_INVALID_FRAMEBUFFER_OPERATION"/>
+         <enum value="0x0506" name="GL_INVALID_FRAMEBUFFER_OPERATION_EXT"/>
+         <enum value="0x0506" name="GL_INVALID_FRAMEBUFFER_OPERATION_OES"/>
+-            <unused start="0x0507" end="0x05FF" comment="Unused for ErrorCode"/>
++        <enum value="0x0507" name="GL_CONTEXT_LOST"/>
++        <enum value="0x0507" name="GL_CONTEXT_LOST_KHR"/>
++            <unused start="0x0508" end="0x05FF" comment="Unused for ErrorCode"/>
+         <enum value="0x0600" name="GL_2D"/>
+         <enum value="0x0601" name="GL_3D"/>
+         <enum value="0x0602" name="GL_3D_COLOR"/>
+@@ -2490,6 +2555,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0B33" name="GL_LIST_INDEX"/>
+ 
+         <enum value="0x0B40" name="GL_POLYGON_MODE"/>
++        <enum value="0x0B40" name="GL_POLYGON_MODE_NV"/>
+         <enum value="0x0B41" name="GL_POLYGON_SMOOTH"/>
+         <enum value="0x0B42" name="GL_POLYGON_STIPPLE"/>
+         <enum value="0x0B43" name="GL_EDGE_FLAG"/>
+@@ -2537,11 +2603,15 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0BA2" name="GL_VIEWPORT"/>
+         <enum value="0x0BA3" name="GL_MODELVIEW_STACK_DEPTH"/>
+         <enum value="0x0BA3" name="GL_MODELVIEW0_STACK_DEPTH_EXT"/>
++        <enum value="0x0BA3" name="GL_PATH_MODELVIEW_STACK_DEPTH_NV"/>
+         <enum value="0x0BA4" name="GL_PROJECTION_STACK_DEPTH"/>
++        <enum value="0x0BA4" name="GL_PATH_PROJECTION_STACK_DEPTH_NV"/>
+         <enum value="0x0BA5" name="GL_TEXTURE_STACK_DEPTH"/>
+         <enum value="0x0BA6" name="GL_MODELVIEW_MATRIX"/>
+         <enum value="0x0BA6" name="GL_MODELVIEW0_MATRIX_EXT"/>
++        <enum value="0x0BA6" name="GL_PATH_MODELVIEW_MATRIX_NV"/>
+         <enum value="0x0BA7" name="GL_PROJECTION_MATRIX"/>
++        <enum value="0x0BA7" name="GL_PATH_PROJECTION_MATRIX_NV"/>
+         <enum value="0x0BA8" name="GL_TEXTURE_MATRIX"/>
+ 
+         <enum value="0x0BB0" name="GL_ATTRIB_STACK_DEPTH"/>
+@@ -2659,12 +2729,15 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x0D32" name="GL_MAX_CLIP_PLANES"/>
+         <enum value="0x0D32" name="GL_MAX_CLIP_PLANES_IMG"/>
+         <enum value="0x0D32" name="GL_MAX_CLIP_DISTANCES" alias="GL_MAX_CLIP_PLANES"/>
++        <enum value="0x0D32" name="GL_MAX_CLIP_DISTANCES_APPLE"/>
+         <enum value="0x0D33" name="GL_MAX_TEXTURE_SIZE"/>
+         <enum value="0x0D34" name="GL_MAX_PIXEL_MAP_TABLE"/>
+         <enum value="0x0D35" name="GL_MAX_ATTRIB_STACK_DEPTH"/>
+         <enum value="0x0D36" name="GL_MAX_MODELVIEW_STACK_DEPTH"/>
++        <enum value="0x0D36" name="GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV"/>
+         <enum value="0x0D37" name="GL_MAX_NAME_STACK_DEPTH"/>
+         <enum value="0x0D38" name="GL_MAX_PROJECTION_STACK_DEPTH"/>
++        <enum value="0x0D38" name="GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV"/>
+         <enum value="0x0D39" name="GL_MAX_TEXTURE_STACK_DEPTH"/>
+         <enum value="0x0D3A" name="GL_MAX_VIEWPORT_DIMS"/>
+         <enum value="0x0D3B" name="GL_MAX_CLIENT_ATTRIB_STACK_DEPTH"/>
+@@ -2725,9 +2798,12 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x1003" name="GL_TEXTURE_INTERNAL_FORMAT"/>
+         <enum value="0x1003" name="GL_TEXTURE_COMPONENTS"/>
+         <enum value="0x1004" name="GL_TEXTURE_BORDER_COLOR"/>
++        <enum value="0x1004" name="GL_TEXTURE_BORDER_COLOR_EXT"/>
+         <enum value="0x1004" name="GL_TEXTURE_BORDER_COLOR_NV"/>
++        <enum value="0x1004" name="GL_TEXTURE_BORDER_COLOR_OES"/>
+         <enum value="0x1005" name="GL_TEXTURE_BORDER"/>
+-            <unused start="0x1006" end="0x10FF" comment="Unused for GetTextureParameter"/>
++        <enum value="0x1006" name="GL_TEXTURE_TARGET"/>
++            <unused start="0x1007" end="0x10FF" comment="Unused for GetTextureParameter"/>
+         <enum value="0x1100" name="GL_DONT_CARE"/>
+         <enum value="0x1101" name="GL_FASTEST"/>
+         <enum value="0x1102" name="GL_NICEST"/>
+@@ -2754,8 +2830,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x1405" name="GL_UNSIGNED_INT"/>
+         <enum value="0x1406" name="GL_FLOAT"/>
+         <enum value="0x1407" name="GL_2_BYTES"/>
++        <enum value="0x1407" name="GL_2_BYTES_NV"/>
+         <enum value="0x1408" name="GL_3_BYTES"/>
++        <enum value="0x1408" name="GL_3_BYTES_NV"/>
+         <enum value="0x1409" name="GL_4_BYTES"/>
++        <enum value="0x1409" name="GL_4_BYTES_NV"/>
+         <enum value="0x140A" name="GL_DOUBLE"/>
+         <enum value="0x140A" name="GL_DOUBLE_EXT"/>
+         <enum value="0x140B" name="GL_HALF_FLOAT"/>
+@@ -2795,7 +2874,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x1700" name="GL_MODELVIEW"/>
+         <enum value="0x1700" name="GL_MODELVIEW0_ARB"/>
+         <enum value="0x1700" name="GL_MODELVIEW0_EXT"/>
++        <enum value="0x1700" name="GL_PATH_MODELVIEW_NV"/>
+         <enum value="0x1701" name="GL_PROJECTION"/>
++        <enum value="0x1701" name="GL_PATH_PROJECTION_NV"/>
+         <enum value="0x1702" name="GL_TEXTURE"/>
+             <unused start="0x1703" end="0x17FF" comment="Unused for MatrixMode"/>
+         <enum value="0x1800" name="GL_COLOR"/>
+@@ -2825,8 +2906,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x1A00" name="GL_BITMAP"/>
+             <unused start="0x1A01" end="0x1AFF" comment="Unused for PixelType"/>
+         <enum value="0x1B00" name="GL_POINT"/>
++        <enum value="0x1B00" name="GL_POINT_NV"/>
+         <enum value="0x1B01" name="GL_LINE"/>
++        <enum value="0x1B01" name="GL_LINE_NV"/>
+         <enum value="0x1B02" name="GL_FILL"/>
++        <enum value="0x1B02" name="GL_FILL_NV"/>
+             <unused start="0x1B03" end="0x1BFF" comment="Unused for PolygonMode"/>
+         <enum value="0x1C00" name="GL_RENDER"/>
+         <enum value="0x1C01" name="GL_FEEDBACK"/>
+@@ -2859,7 +2943,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x2300" name="GL_TEXTURE_ENV"/>
+             <unused start="0x2301" end="0x23FF" comment="Unused for TextureEnvTarget"/>
+         <enum value="0x2400" name="GL_EYE_LINEAR"/>
++        <enum value="0x2400" name="GL_EYE_LINEAR_NV"/>
+         <enum value="0x2401" name="GL_OBJECT_LINEAR"/>
++        <enum value="0x2401" name="GL_OBJECT_LINEAR_NV"/>
+         <enum value="0x2402" name="GL_SPHERE_MAP"/>
+             <unused start="0x2403" end="0x24FF" comment="Unused for TextureGenMode"/>
+         <enum value="0x2500" name="GL_TEXTURE_GEN_MODE"/>
+@@ -2885,7 +2971,9 @@ typedef unsigned int GLhandleARB;
+             <unused start="0x2902" end="0x29FF" comment="Unused for TextureWrapMode"/>
+         <enum value="0x2A00" name="GL_POLYGON_OFFSET_UNITS"/>
+         <enum value="0x2A01" name="GL_POLYGON_OFFSET_POINT"/>
++        <enum value="0x2A01" name="GL_POLYGON_OFFSET_POINT_NV"/>
+         <enum value="0x2A02" name="GL_POLYGON_OFFSET_LINE"/>
++        <enum value="0x2A02" name="GL_POLYGON_OFFSET_LINE_NV"/>
+             <unused start="0x2A03" end="0x2A09" comment="Unused for PolygonOffset"/>
+         <enum value="0x2A10" name="GL_R3_G3_B2"/>
+             <unused start="0x2A11" end="0x2A1F" comment="Unused for InternalFormat"/>
+@@ -2907,23 +2995,31 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x3000" name="GL_CLIP_PLANE0"/>
+         <enum value="0x3000" name="GL_CLIP_PLANE0_IMG"/>
+         <enum value="0x3000" name="GL_CLIP_DISTANCE0" alias="GL_CLIP_PLANE0"/>
++        <enum value="0x3000" name="GL_CLIP_DISTANCE0_APPLE"/>
+         <enum value="0x3001" name="GL_CLIP_PLANE1"/>
+         <enum value="0x3001" name="GL_CLIP_PLANE1_IMG"/>
+         <enum value="0x3001" name="GL_CLIP_DISTANCE1" alias="GL_CLIP_PLANE1"/>
++        <enum value="0x3001" name="GL_CLIP_DISTANCE1_APPLE"/>
+         <enum value="0x3002" name="GL_CLIP_PLANE2"/>
+         <enum value="0x3002" name="GL_CLIP_PLANE2_IMG"/>
+         <enum value="0x3002" name="GL_CLIP_DISTANCE2" alias="GL_CLIP_PLANE2"/>
++        <enum value="0x3002" name="GL_CLIP_DISTANCE2_APPLE"/>
+         <enum value="0x3003" name="GL_CLIP_PLANE3"/>
+         <enum value="0x3003" name="GL_CLIP_PLANE3_IMG"/>
+         <enum value="0x3003" name="GL_CLIP_DISTANCE3" alias="GL_CLIP_PLANE3"/>
++        <enum value="0x3003" name="GL_CLIP_DISTANCE3_APPLE"/>
+         <enum value="0x3004" name="GL_CLIP_PLANE4"/>
+         <enum value="0x3004" name="GL_CLIP_PLANE4_IMG"/>
+         <enum value="0x3004" name="GL_CLIP_DISTANCE4" alias="GL_CLIP_PLANE4"/>
++        <enum value="0x3004" name="GL_CLIP_DISTANCE4_APPLE"/>
+         <enum value="0x3005" name="GL_CLIP_PLANE5"/>
+         <enum value="0x3005" name="GL_CLIP_PLANE5_IMG"/>
+         <enum value="0x3005" name="GL_CLIP_DISTANCE5" alias="GL_CLIP_PLANE5"/>
++        <enum value="0x3005" name="GL_CLIP_DISTANCE5_APPLE"/>
+         <enum value="0x3006" name="GL_CLIP_DISTANCE6"/>
++        <enum value="0x3006" name="GL_CLIP_DISTANCE6_APPLE"/>
+         <enum value="0x3007" name="GL_CLIP_DISTANCE7"/>
++        <enum value="0x3007" name="GL_CLIP_DISTANCE7_APPLE"/>
+             <unused start="0x3008" end="0x3FFF" comment="Unused for ClipPlaneName"/>
+         <enum value="0x4000" name="GL_LIGHT0"/>
+         <enum value="0x4001" name="GL_LIGHT1"/>
+@@ -2939,9 +3035,7 @@ typedef unsigned int GLhandleARB;
+             <unused start="0x7000" end="0x7FFF" comment="Unused. Do not use."/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8000" end="0x80BF" vendor="SGI" comment="The primary GL enumerant space begins here. All modern                     enum allocations are in this range. These enums are                     mostly assigned the default class since it's a great                     deal of not very useful work to be more specific"/>
+-
+-    <enums namespace="GL" vendor="ARB">
++    <enums namespace="GL" start="0x8000" end="0x80BF" vendor="ARB" comment="The primary GL enumerant space begins here. All modern enum allocations are in this range. These enums are mostly assigned the default class since it's a great deal of not very useful work to be more specific">
+         <enum value="0x8000" name="GL_ABGR_EXT"/>
+         <enum value="0x8001" name="GL_CONSTANT_COLOR"/>
+         <enum value="0x8001" name="GL_CONSTANT_COLOR_EXT"/>
+@@ -3335,7 +3429,7 @@ typedef unsigned int GLhandleARB;
+     </enums>
+ 
+     <enums namespace="GL" start="0x80C0" end="0x80CF" vendor="ZiiLabs">
+-            <unused start="0x80C0" end="0x80C7"/>
++            <unused start="0x80C0" end="0x80C7" vendor="ZiiLabs"/>
+         <enum value="0x80C8" name="GL_BLEND_DST_RGB"/>
+         <enum value="0x80C8" name="GL_BLEND_DST_RGB_EXT"/>
+         <enum value="0x80C8" name="GL_BLEND_DST_RGB_OES"/>
+@@ -3412,7 +3506,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x80EE" name="GL_PARAMETER_BUFFER_ARB"/>
+         <enum value="0x80EF" name="GL_PARAMETER_BUFFER_BINDING_ARB"/>
+         <enum value="0x80F0" name="GL_CLIP_VOLUME_CLIPPING_HINT_EXT"/>
+-            <unused start="0x80F1" end="0x810F"/>
++            <unused start="0x80F1" end="0x810F" vendor="MS"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8110" end="0x814F" vendor="SGI">
+@@ -3459,8 +3553,10 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x812C" name="GL_MAX_FOG_FUNC_POINTS_SGIS"/>
+         <enum value="0x812D" name="GL_CLAMP_TO_BORDER"/>
+         <enum value="0x812D" name="GL_CLAMP_TO_BORDER_ARB"/>
++        <enum value="0x812D" name="GL_CLAMP_TO_BORDER_EXT"/>
+         <enum value="0x812D" name="GL_CLAMP_TO_BORDER_NV"/>
+         <enum value="0x812D" name="GL_CLAMP_TO_BORDER_SGIS"/>
++        <enum value="0x812D" name="GL_CLAMP_TO_BORDER_OES"/>
+         <enum value="0x812E" name="GL_TEXTURE_MULTI_BUFFER_HINT_SGIX"/>
+         <enum value="0x812F" name="GL_CLAMP_TO_EDGE"/>
+         <enum value="0x812F" name="GL_CLAMP_TO_EDGE_SGIS"/>
+@@ -3507,7 +3603,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8150" name="GL_IGNORE_BORDER_HP"/>
+         <enum value="0x8151" name="GL_CONSTANT_BORDER"/>
+         <enum value="0x8151" name="GL_CONSTANT_BORDER_HP"/>
+-            <unused start="0x8152" comment="GL_WRAP_BORDER = 0x8152 was proposed, but not actually promoted to core"/>
++            <unused start="0x8152" vendor="HP" comment="GL_WRAP_BORDER = 0x8152 was proposed, but not actually promoted to core"/>
+         <enum value="0x8153" name="GL_REPLICATE_BORDER"/>
+         <enum value="0x8153" name="GL_REPLICATE_BORDER_HP"/>
+         <enum value="0x8154" name="GL_CONVOLUTION_BORDER_COLOR"/>
+@@ -3527,13 +3623,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8161" name="GL_IMAGE_TRANSFORM_2D_HP"/>
+         <enum value="0x8162" name="GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"/>
+         <enum value="0x8163" name="GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"/>
+-            <unused start="0x8164"/>
++            <unused start="0x8164" vendor="HP"/>
+         <enum value="0x8165" name="GL_OCCLUSION_TEST_HP"/>
+         <enum value="0x8166" name="GL_OCCLUSION_TEST_RESULT_HP"/>
+         <enum value="0x8167" name="GL_TEXTURE_LIGHTING_MODE_HP"/>
+         <enum value="0x8168" name="GL_TEXTURE_POST_SPECULAR_HP"/>
+         <enum value="0x8169" name="GL_TEXTURE_PRE_SPECULAR_HP"/>
+-            <unused start="0x816A" end="0x816F"/>
++            <unused start="0x816A" end="0x816F" vendor="HP"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8170" end="0x81CF" vendor="SGI">
+@@ -3652,7 +3748,7 @@ typedef unsigned int GLhandleARB;
+     </enums>
+ 
+     <enums namespace="GL" start="0x81D0" end="0x81DF" vendor="SUN">
+-            <unused start="0x81D0" end="0x81D1"/>
++            <unused start="0x81D0" end="0x81D1" vendor="SUN"/>
+             <unused start="0x81D2" end="0x81D3" comment="No extension spec SUNX_surface_hint"/>
+             <!-- <enum value="0x81D2" name="GL_SURFACE_SIZE_HINT_SUNX"/> -->
+             <!-- <enum value="0x81D3" name="GL_LARGE_SUNX"/> -->
+@@ -3663,7 +3759,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x81D8" name="GL_REPLACEMENT_CODE_SUN"/>
+         <enum value="0x81D9" name="GL_GLOBAL_ALPHA_SUN"/>
+         <enum value="0x81DA" name="GL_GLOBAL_ALPHA_FACTOR_SUN"/>
+-            <unused start="0x81DB" end="0x81DF"/>
++            <unused start="0x81DB" end="0x81DF" vendor="SUN"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x81E0" end="0x81FF" vendor="SGI">
+@@ -3709,7 +3805,7 @@ typedef unsigned int GLhandleARB;
+ 
+     <enums namespace="GL" start="0x8200" end="0x820F" vendor="AMD" comment="Range released by MS 2002/9/16">
+         <enum value="0x8200" name="GL_TEXT_FRAGMENT_SHADER_ATI"/>
+-            <unused start="0x8201" end="0x820F"/>
++            <unused start="0x8201" end="0x820F" vendor="AMD"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8210" end="0x823F" vendor="ARB">
+@@ -3732,11 +3828,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x821D" name="GL_NUM_EXTENSIONS"/>
+         <enum value="0x821E" name="GL_CONTEXT_FLAGS"/>
+         <enum value="0x821F" name="GL_BUFFER_IMMUTABLE_STORAGE"/>
++        <enum value="0x821F" name="GL_BUFFER_IMMUTABLE_STORAGE_EXT"/>
+         <enum value="0x8220" name="GL_BUFFER_STORAGE_FLAGS"/>
+-        <enum value="0x8221" name="GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED" comment="Proposed for Bug 10364"/>
++        <enum value="0x8220" name="GL_BUFFER_STORAGE_FLAGS_EXT"/>
++        <enum value="0x8221" name="GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED"/>
++        <enum value="0x8221" name="GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES"/>
+         <enum value="0x8222" name="GL_INDEX"/>
+-            <unused start="0x8223" comment="GL_DEPTH_BUFFER = 0x8223 not actually used in the API"/>
+-            <unused start="0x8224" comment="GL_STENCIL_BUFFER = 0x8224 not actually used in the API"/>
++            <unused start="0x8223" vendor="ARB" comment="GL_DEPTH_BUFFER = 0x8223 not actually used in the API"/>
++            <unused start="0x8224" vendor="ARB" comment="GL_STENCIL_BUFFER = 0x8224 not actually used in the API"/>
+         <enum value="0x8225" name="GL_COMPRESSED_RED"/>
+         <enum value="0x8226" name="GL_COMPRESSED_RG"/>
+         <enum value="0x8227" name="GL_RG"/>
+@@ -3745,9 +3844,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8229" name="GL_R8"/>
+         <enum value="0x8229" name="GL_R8_EXT"/>
+         <enum value="0x822A" name="GL_R16"/>
++        <enum value="0x822A" name="GL_R16_EXT"/>
+         <enum value="0x822B" name="GL_RG8"/>
+         <enum value="0x822B" name="GL_RG8_EXT"/>
+         <enum value="0x822C" name="GL_RG16"/>
++        <enum value="0x822C" name="GL_RG16_EXT"/>
+         <enum value="0x822D" name="GL_R16F"/>
+         <enum value="0x822D" name="GL_R16F_EXT"/>
+         <enum value="0x822E" name="GL_R32F"/>
+@@ -3768,7 +3869,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x823A" name="GL_RG16UI"/>
+         <enum value="0x823B" name="GL_RG32I"/>
+         <enum value="0x823C" name="GL_RG32UI"/>
+-            <unused start="0x823D" end="0x823F"/>
++            <unused start="0x823D" end="0x823F" vendor="ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8240" end="0x82AF" vendor="ARB" comment="Range released by MS on 2002/9/16">
+@@ -3822,16 +3923,26 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8251" name="GL_DEBUG_TYPE_OTHER"/>
+         <enum value="0x8251" name="GL_DEBUG_TYPE_OTHER_ARB"/>
+         <enum value="0x8251" name="GL_DEBUG_TYPE_OTHER_KHR"/>
++        <enum value="0x8252" name="GL_LOSE_CONTEXT_ON_RESET"/>
+         <enum value="0x8252" name="GL_LOSE_CONTEXT_ON_RESET_ARB"/>
+         <enum value="0x8252" name="GL_LOSE_CONTEXT_ON_RESET_EXT"/>
++        <enum value="0x8252" name="GL_LOSE_CONTEXT_ON_RESET_KHR"/>
++        <enum value="0x8253" name="GL_GUILTY_CONTEXT_RESET"/>
+         <enum value="0x8253" name="GL_GUILTY_CONTEXT_RESET_ARB"/>
+         <enum value="0x8253" name="GL_GUILTY_CONTEXT_RESET_EXT"/>
++        <enum value="0x8253" name="GL_GUILTY_CONTEXT_RESET_KHR"/>
++        <enum value="0x8254" name="GL_INNOCENT_CONTEXT_RESET"/>
+         <enum value="0x8254" name="GL_INNOCENT_CONTEXT_RESET_ARB"/>
+         <enum value="0x8254" name="GL_INNOCENT_CONTEXT_RESET_EXT"/>
++        <enum value="0x8254" name="GL_INNOCENT_CONTEXT_RESET_KHR"/>
++        <enum value="0x8255" name="GL_UNKNOWN_CONTEXT_RESET"/>
+         <enum value="0x8255" name="GL_UNKNOWN_CONTEXT_RESET_ARB"/>
+         <enum value="0x8255" name="GL_UNKNOWN_CONTEXT_RESET_EXT"/>
++        <enum value="0x8255" name="GL_UNKNOWN_CONTEXT_RESET_KHR"/>
++        <enum value="0x8256" name="GL_RESET_NOTIFICATION_STRATEGY"/>
+         <enum value="0x8256" name="GL_RESET_NOTIFICATION_STRATEGY_ARB"/>
+         <enum value="0x8256" name="GL_RESET_NOTIFICATION_STRATEGY_EXT"/>
++        <enum value="0x8256" name="GL_RESET_NOTIFICATION_STRATEGY_KHR"/>
+         <enum value="0x8257" name="GL_PROGRAM_BINARY_RETRIEVABLE_HINT"/>
+         <enum value="0x8258" name="GL_PROGRAM_SEPARABLE"/>
+         <enum value="0x8258" name="GL_PROGRAM_SEPARABLE_EXT"/>
+@@ -3840,13 +3951,26 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x825A" name="GL_PROGRAM_PIPELINE_BINDING"/>
+         <enum value="0x825A" name="GL_PROGRAM_PIPELINE_BINDING_EXT"/>
+         <enum value="0x825B" name="GL_MAX_VIEWPORTS"/>
++        <enum value="0x825B" name="GL_MAX_VIEWPORTS_NV"/>
+         <enum value="0x825C" name="GL_VIEWPORT_SUBPIXEL_BITS"/>
++        <enum value="0x825C" name="GL_VIEWPORT_SUBPIXEL_BITS_EXT"/>
++        <enum value="0x825C" name="GL_VIEWPORT_SUBPIXEL_BITS_NV"/>
+         <enum value="0x825D" name="GL_VIEWPORT_BOUNDS_RANGE"/>
++        <enum value="0x825D" name="GL_VIEWPORT_BOUNDS_RANGE_EXT"/>
++        <enum value="0x825D" name="GL_VIEWPORT_BOUNDS_RANGE_NV"/>
+         <enum value="0x825E" name="GL_LAYER_PROVOKING_VERTEX"/>
++        <enum value="0x825E" name="GL_LAYER_PROVOKING_VERTEX_EXT"/>
++        <enum value="0x825E" name="GL_LAYER_PROVOKING_VERTEX_OES"/>
+         <enum value="0x825F" name="GL_VIEWPORT_INDEX_PROVOKING_VERTEX"/>
++        <enum value="0x825F" name="GL_VIEWPORT_INDEX_PROVOKING_VERTEX_EXT"/>
++        <enum value="0x825F" name="GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV"/>
+         <enum value="0x8260" name="GL_UNDEFINED_VERTEX"/>
++        <enum value="0x8260" name="GL_UNDEFINED_VERTEX_EXT"/>
++        <enum value="0x8260" name="GL_UNDEFINED_VERTEX_OES"/>
++        <enum value="0x8261" name="GL_NO_RESET_NOTIFICATION"/>
+         <enum value="0x8261" name="GL_NO_RESET_NOTIFICATION_ARB"/>
+         <enum value="0x8261" name="GL_NO_RESET_NOTIFICATION_EXT"/>
++        <enum value="0x8261" name="GL_NO_RESET_NOTIFICATION_KHR"/>
+         <enum value="0x8262" name="GL_MAX_COMPUTE_SHARED_MEMORY_SIZE"/>
+         <enum value="0x8263" name="GL_MAX_COMPUTE_UNIFORM_COMPONENTS"/>
+         <enum value="0x8264" name="GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS"/>
+@@ -3926,7 +4050,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x82A8" name="GL_IMAGE_COMPATIBILITY_CLASS"/>
+         <enum value="0x82A9" name="GL_IMAGE_PIXEL_FORMAT"/>
+         <enum value="0x82AA" name="GL_IMAGE_PIXEL_TYPE"/>
+-            <unused start="0x82AB"/>
++            <unused start="0x82AB" vendor="ARB"/>
+         <enum value="0x82AC" name="GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST"/>
+         <enum value="0x82AD" name="GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST"/>
+         <enum value="0x82AE" name="GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE"/>
+@@ -3934,7 +4058,7 @@ typedef unsigned int GLhandleARB;
+     </enums>
+ 
+     <enums namespace="GL" start="0x82B0" end="0x830F" vendor="ARB" comment="Range reclaimed from ADD on 2012/05/10">
+-            <unused start="0x82B0"/>
++            <unused start="0x82B0" vendor="ARB"/>
+         <enum value="0x82B1" name="GL_TEXTURE_COMPRESSED_BLOCK_WIDTH"/>
+         <enum value="0x82B2" name="GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT"/>
+         <enum value="0x82B3" name="GL_TEXTURE_COMPRESSED_BLOCK_SIZE"/>
+@@ -3978,9 +4102,17 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x82D9" name="GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET"/>
+         <enum value="0x82DA" name="GL_MAX_VERTEX_ATTRIB_BINDINGS"/>
+         <enum value="0x82DB" name="GL_TEXTURE_VIEW_MIN_LEVEL"/>
++        <enum value="0x82DB" name="GL_TEXTURE_VIEW_MIN_LEVEL_EXT"/>
++        <enum value="0x82DB" name="GL_TEXTURE_VIEW_MIN_LEVEL_OES"/>
+         <enum value="0x82DC" name="GL_TEXTURE_VIEW_NUM_LEVELS"/>
++        <enum value="0x82DC" name="GL_TEXTURE_VIEW_NUM_LEVELS_EXT"/>
++        <enum value="0x82DC" name="GL_TEXTURE_VIEW_NUM_LEVELS_OES"/>
+         <enum value="0x82DD" name="GL_TEXTURE_VIEW_MIN_LAYER"/>
++        <enum value="0x82DD" name="GL_TEXTURE_VIEW_MIN_LAYER_EXT"/>
++        <enum value="0x82DD" name="GL_TEXTURE_VIEW_MIN_LAYER_OES"/>
+         <enum value="0x82DE" name="GL_TEXTURE_VIEW_NUM_LAYERS"/>
++        <enum value="0x82DE" name="GL_TEXTURE_VIEW_NUM_LAYERS_EXT"/>
++        <enum value="0x82DE" name="GL_TEXTURE_VIEW_NUM_LAYERS_OES"/>
+         <enum value="0x82DF" name="GL_TEXTURE_IMMUTABLE_LEVELS"/>
+         <enum value="0x82E0" name="GL_BUFFER"/>
+         <enum value="0x82E0" name="GL_BUFFER_KHR"/>
+@@ -3991,6 +4123,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x82E3" name="GL_QUERY"/>
+         <enum value="0x82E3" name="GL_QUERY_KHR"/>
+         <enum value="0x82E4" name="GL_PROGRAM_PIPELINE"/>
++        <enum value="0x82E4" name="GL_PROGRAM_PIPELINE_KHR"/>
+         <enum value="0x82E5" name="GL_MAX_VERTEX_ATTRIB_STRIDE"/>
+         <enum value="0x82E6" name="GL_SAMPLER"/>
+         <enum value="0x82E6" name="GL_SAMPLER_KHR"/>
+@@ -3998,7 +4131,31 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x82E8" name="GL_MAX_LABEL_LENGTH"/>
+         <enum value="0x82E8" name="GL_MAX_LABEL_LENGTH_KHR"/>
+         <enum value="0x82E9" name="GL_NUM_SHADING_LANGUAGE_VERSIONS"/>
+-            <unused start="0x82E9" end="0x830F"/>
++        <enum value="0x82EA" name="GL_QUERY_TARGET"/>
++        <!-- 0x82EB = GL_TEXTURE_BINDING was removed in GL 4.5 and
++             ARB_direct_state_access in February 2015 after determining it
++             was not well defined or implementable. -->
++            <unused start="0x82EB" vendor="ARB" comment="Reserved. Formerly used for GL_TEXTURE_BINDING."/>
++        <enum value="0x82EC" name="GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB"/>
++        <enum value="0x82ED" name="GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB"/>
++        <enum value="0x82EE" name="GL_VERTICES_SUBMITTED_ARB"/>
++        <enum value="0x82EF" name="GL_PRIMITIVES_SUBMITTED_ARB"/>
++        <enum value="0x82F0" name="GL_VERTEX_SHADER_INVOCATIONS_ARB"/>
++        <enum value="0x82F1" name="GL_TESS_CONTROL_SHADER_PATCHES_ARB"/>
++        <enum value="0x82F2" name="GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB"/>
++        <enum value="0x82F3" name="GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB"/>
++        <enum value="0x82F4" name="GL_FRAGMENT_SHADER_INVOCATIONS_ARB"/>
++        <enum value="0x82F5" name="GL_COMPUTE_SHADER_INVOCATIONS_ARB"/>
++        <enum value="0x82F6" name="GL_CLIPPING_INPUT_PRIMITIVES_ARB"/>
++        <enum value="0x82F7" name="GL_CLIPPING_OUTPUT_PRIMITIVES_ARB"/>
++        <enum value="0x82F8" name="GL_SPARSE_BUFFER_PAGE_SIZE_ARB"/>
++        <enum value="0x82F9" name="GL_MAX_CULL_DISTANCES"/>
++        <enum value="0x82FA" name="GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES"/>
++        <enum value="0x82FB" name="GL_CONTEXT_RELEASE_BEHAVIOR"/>
++        <enum value="0x82FB" name="GL_CONTEXT_RELEASE_BEHAVIOR_KHR"/>
++        <enum value="0x82FC" name="GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH"/>
++        <enum value="0x82FC" name="GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR"/>
++            <unused start="0x82FD" end="0x830F" vendor="ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8310" end="0x832F" vendor="SGI">
+@@ -4050,7 +4207,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8336" name="GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT"/>
+         <enum value="0x8337" name="GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT"/>
+         <enum value="0x8338" name="GL_PIXEL_TRANSFORM_2D_MATRIX_EXT"/>
+-            <unused start="0x8339" end="0x833F"/>
++            <unused start="0x8339" end="0x833F" vendor="SUN"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8340" end="0x836F" vendor="SGI">
+@@ -4131,10 +4288,12 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8370" name="GL_MIRRORED_REPEAT_ARB"/>
+         <enum value="0x8370" name="GL_MIRRORED_REPEAT_IBM"/>
+         <enum value="0x8370" name="GL_MIRRORED_REPEAT_OES"/>
+-            <unused start="0x8371" end="0x837F"/>
++            <unused start="0x8371" end="0x837F" vendor="HP"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8380" end="0x839F" vendor="IBM"/>
++    <enums namespace="GL" start="0x8380" end="0x839F" vendor="IBM">
++            <unused start="0x8380" end="0x839F" vendor="IBM"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x83A0" end="0x83BF" vendor="S3">
+         <enum value="0x83A0" name="GL_RGB_S3TC"/>
+@@ -4143,7 +4302,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x83A3" name="GL_RGBA4_S3TC"/>
+         <enum value="0x83A4" name="GL_RGBA_DXT5_S3TC"/>
+         <enum value="0x83A5" name="GL_RGBA4_DXT5_S3TC"/>
+-            <unused start="0x83A6" end="0x83BF"/>
++            <unused start="0x83A6" end="0x83BF" vendor="S3"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x83C0" end="0x83EF" vendor="SGI" comment="Most of this could be reclaimed">
+@@ -4159,7 +4318,7 @@ typedef unsigned int GLhandleARB;
+             <!-- <enum value="0x83C8" name="GL_TEXTURE1_SGIS"/> -->
+             <!-- <enum value="0x83C9" name="GL_TEXTURE2_SGIS"/> -->
+             <!-- <enum value="0x83CA" name="GL_TEXTURE3_SGIS"/> -->
+-            <unused start="0x83CB" end="0x83E5"/>
++            <unused start="0x83CB" end="0x83E5" vendor="SGI"/>
+             <unused start="0x83E6" end="0x83E9" comment="Incomplete extension SGIX_bali_g_instruments"/>
+             <!-- <enum value="0x83E6" name="GL_BALI_NUM_TRIS_CULLED_INSTRUMENT_SGIX"/> -->
+             <!-- <enum value="0x83E7" name="GL_BALI_NUM_PRIMS_CLIPPED_INSTRUMENT_SGIX"/> -->
+@@ -4192,7 +4351,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x83F9" name="GL_PERFQUERY_DONOT_FLUSH_INTEL"/>
+         <enum value="0x83FA" name="GL_PERFQUERY_FLUSH_INTEL"/>
+         <enum value="0x83FB" name="GL_PERFQUERY_WAIT_INTEL"/>
+-            <unused start="0x83FC" end="0x83FE"/>
++            <unused start="0x83FC" end="0x83FE" vendor="INTEL"/>
+         <enum value="0x83FF" name="GL_TEXTURE_MEMORY_LAYOUT_INTEL"/>
+     </enums>
+ 
+@@ -4217,13 +4376,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8411" name="GL_FRAGMENT_LIGHT5_SGIX"/>
+         <enum value="0x8412" name="GL_FRAGMENT_LIGHT6_SGIX"/>
+         <enum value="0x8413" name="GL_FRAGMENT_LIGHT7_SGIX"/>
+-            <unused start="0x8414" end="0x842B"/>
+-        <enum value="0x842C" name="GL_PACK_RESAMPLE_SGIX"/>
+-        <enum value="0x842D" name="GL_UNPACK_RESAMPLE_SGIX"/>
+-        <enum value="0x842E" name="GL_RESAMPLE_REPLICATE_SGIX"/>
+-        <enum value="0x842F" name="GL_RESAMPLE_ZERO_FILL_SGIX"/>
+-        <enum value="0x8430" name="GL_RESAMPLE_DECIMATE_SGIX"/>
+-            <unused start="0x8431" end="0x8435"/>
++            <unused start="0x8414" end="0x842D" vendor="SGI"/>
++        <enum value="0x842E" name="GL_PACK_RESAMPLE_SGIX" comment="Formerly 0x842C in SGI specfile"/>
++        <enum value="0x842F" name="GL_UNPACK_RESAMPLE_SGIX" comment="Formerly 0x842D in SGI specfile"/>
++        <enum value="0x8430" name="GL_RESAMPLE_DECIMATE_SGIX" comment="Formerly 0x8430 in SGI specfile"/>
++            <unused start="0x8431" end="0x8432" vendor="SGI"/>
++        <enum value="0x8433" name="GL_RESAMPLE_REPLICATE_SGIX" comment="Formerly 0x842E in SGI specfile"/>
++        <enum value="0x8434" name="GL_RESAMPLE_ZERO_FILL_SGIX" comment="Formerly 0x842F in SGI specfile"/>
++            <unused start="0x8435" vendor="SGI"/>
+             <!-- Incomplete extension SGIX_fragment_lighting -->
+             <!-- <enum value="0x8436"      name="GL_EYE_SPACE_SGIX"/> -->
+             <!-- <enum value="0x8437"      name="GL_TANGENT_SPACE_SGIX"/> -->
+@@ -4249,7 +4409,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x843A" name="GL_BINORMAL_ARRAY_EXT"/>
+         <enum value="0x843B" name="GL_CURRENT_TANGENT_EXT"/>
+         <enum value="0x843C" name="GL_CURRENT_BINORMAL_EXT"/>
+-                     <unused start="0x844D"/>
++            <unused start="0x844D" vendor="SGI"/>
+         <enum value="0x843E" name="GL_TANGENT_ARRAY_TYPE_EXT"/>
+         <enum value="0x843F" name="GL_TANGENT_ARRAY_STRIDE_EXT"/>
+         <enum value="0x8440" name="GL_BINORMAL_ARRAY_TYPE_EXT"/>
+@@ -4321,21 +4481,25 @@ typedef unsigned int GLhandleARB;
+             <!-- <enum value="0x8469" name="GL_LUMINANCE16_ICC_SGIX"/> -->
+             <!-- <enum value="0x846A" name="GL_INTENSITY16_ICC_SGIX"/> -->
+             <!-- <enum value="0x846B" name="GL_LUMINANCE16_ALPHA8_ICC_SGIX"/> -->
+-            <unused start="0x846C"/>
++            <unused start="0x846C" vendor="SGI"/>
+         <enum value="0x846D" name="GL_ALIASED_POINT_SIZE_RANGE"/>
+         <enum value="0x846E" name="GL_ALIASED_LINE_WIDTH_RANGE"/>
+-            <unused start="0x846F"/>
++            <unused start="0x846F" vendor="SGI"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8470" end="0x848F" vendor="AMD"/>
++    <enums namespace="GL" start="0x8470" end="0x848F" vendor="AMD">
++            <unused start="0x8470" end="0x848F" vendor="AMD"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8490" end="0x849F" vendor="REND">
+         <enum value="0x8490" name="GL_SCREEN_COORDINATES_REND"/>
+         <enum value="0x8491" name="GL_INVERTED_SCREEN_W_REND"/>
+-            <unused start="0x8492" end="0x849F"/>
++            <unused start="0x8492" end="0x849F" vendor="REND"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x84A0" end="0x84BF" vendor="AMD"/>
++    <enums namespace="GL" start="0x84A0" end="0x84BF" vendor="AMD">
++            <unused start="0x84A0" end="0x84BF" vendor="AMD"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x84C0" end="0x84EF" vendor="ARB">
+         <enum value="0x84C0" name="GL_TEXTURE0"/>
+@@ -4410,8 +4574,10 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x84E2" name="GL_MAX_TEXTURE_UNITS_ARB"/>
+         <enum value="0x84E3" name="GL_TRANSPOSE_MODELVIEW_MATRIX"/>
+         <enum value="0x84E3" name="GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"/>
++        <enum value="0x84E3" name="GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV"/>
+         <enum value="0x84E4" name="GL_TRANSPOSE_PROJECTION_MATRIX"/>
+         <enum value="0x84E4" name="GL_TRANSPOSE_PROJECTION_MATRIX_ARB"/>
++        <enum value="0x84E4" name="GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV"/>
+         <enum value="0x84E5" name="GL_TRANSPOSE_TEXTURE_MATRIX"/>
+         <enum value="0x84E5" name="GL_TRANSPOSE_TEXTURE_MATRIX_ARB"/>
+         <enum value="0x84E6" name="GL_TRANSPOSE_COLOR_MATRIX"/>
+@@ -4463,7 +4629,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x84FA" name="GL_UNSIGNED_INT_24_8_EXT"/>
+         <enum value="0x84FA" name="GL_UNSIGNED_INT_24_8_NV"/>
+         <enum value="0x84FA" name="GL_UNSIGNED_INT_24_8_OES"/>
+-            <unused start="0x84FB" end="0x84FC"/>
++            <unused start="0x84FB" end="0x84FC" vendor="NV"/>
+         <enum value="0x84FD" name="GL_MAX_TEXTURE_LOD_BIAS"/>
+         <enum value="0x84FD" name="GL_MAX_TEXTURE_LOD_BIAS_EXT"/>
+         <enum value="0x84FE" name="GL_TEXTURE_MAX_ANISOTROPY_EXT"/>
+@@ -4624,7 +4790,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8566" name="GL_BLUE_MAX_CLAMP_INGR"/>
+         <enum value="0x8567" name="GL_ALPHA_MAX_CLAMP_INGR"/>
+         <enum value="0x8568" name="GL_INTERLACE_READ_INGR"/>
+-            <unused start="0x8569" end="0x856F"/>
++            <unused start="0x8569" end="0x856F" vendor="ZiiLabs"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8570" end="0x859F" group="RegisterCombinerPname" vendor="AMD/NV">
+@@ -4649,6 +4815,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8576" name="GL_CONSTANT"/>
+         <enum value="0x8576" name="GL_CONSTANT_ARB"/>
+         <enum value="0x8576" name="GL_CONSTANT_EXT"/>
++        <enum value="0x8576" name="GL_CONSTANT_NV"/>
+         <enum value="0x8577" name="GL_PRIMARY_COLOR"/>
+         <enum value="0x8577" name="GL_PRIMARY_COLOR_ARB"/>
+         <enum value="0x8577" name="GL_PRIMARY_COLOR_EXT"/>
+@@ -4737,7 +4904,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x85B5" name="GL_VERTEX_ARRAY_BINDING"/>
+         <enum value="0x85B5" name="GL_VERTEX_ARRAY_BINDING_APPLE"/>
+         <enum value="0x85B5" name="GL_VERTEX_ARRAY_BINDING_OES"/>
+-            <unused start="0x85B6" comment="Unknown extension (Khronos bug 632)"/>
++            <unused start="0x85B6" vendor="APPLE" comment="Unknown extension (Khronos bug 632)"/>
+             <!-- <enum value="0x85B6" name="GL_TEXTURE_MINIMIZE_STORAGE_APPLE"/> -->
+         <enum value="0x85B7" name="GL_TEXTURE_RANGE_LENGTH_APPLE"/>
+         <enum value="0x85B8" name="GL_TEXTURE_RANGE_POINTER_APPLE"/>
+@@ -4766,14 +4933,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x85CA" name="GL_R1UI_T2F_N3F_V3F_SUN"/>
+         <enum value="0x85CB" name="GL_R1UI_T2F_C4F_N3F_V3F_SUN"/>
+         <enum value="0x85CC" name="GL_SLICE_ACCUM_SUN"/>
+-            <unused start="0x85CD" end="0x85CF"/>
++            <unused start="0x85CD" end="0x85CF" vendor="SUN"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x85D0" end="0x85DF" vendor="ZiiLabs" comment="3Dlabs private extension for Autodesk">
+             <unused start="0x85D0" end="0x85D1" comment="Unknown 3Dlabs private extension for Autodesk (but we know the enum values)"/>
+             <!-- <enum value="0x85D0" name="GL_FACET_NORMAL_AUTODESK"/> -->
+             <!-- <enum value="0x85D1" name="GL_FACET_NORMAL_ARRAY_AUTODESK"/> -->
+-            <unused start="0x85D2" end="0x85DF"/>
++            <unused start="0x85D2" end="0x85DF" vendor="ZiiLabs"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x85E0" end="0x85FF" vendor="SGI">
+@@ -4806,14 +4973,14 @@ typedef unsigned int GLhandleARB;
+             <!-- <enum value="0x85F9" name="GL_MAX_LUMINANCE_SGIS"/> -->
+             <!-- <enum value="0x85FA" name="GL_MIN_INTENSITY_SGIS"/> -->
+             <!-- <enum value="0x85FB" name="GL_MAX_INTENSITY_SGIS"/> -->
+-            <unused start="0x85FC" end="0x85FF"/>
++            <unused start="0x85FC" end="0x85FF" vendor="SGI"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8600" end="0x861F" vendor="SUN">
+-            <unused start="0x8600" end="0x8613"/>
++            <unused start="0x8600" end="0x8613" vendor="SUN"/>
+         <enum value="0x8614" name="GL_QUAD_MESH_SUN"/>
+         <enum value="0x8615" name="GL_TRIANGLE_MESH_SUN"/>
+-            <unused start="0x8614" end="0x861F"/>
++            <unused start="0x8614" end="0x861F" vendor="SUN"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8620" end="0x867F" vendor="NV">
+@@ -4944,7 +5111,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x867F" name="GL_MAP2_VERTEX_ATTRIB15_4_NV"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8680" end="0x869F" vendor="Pixelfusion"/>
++    <enums namespace="GL" start="0x8680" end="0x869F" vendor="Pixelfusion">
++            <unused start="0x8680" end="0x869F" vendor="Pixelfusion"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x86A0" end="0x86AF" vendor="ARB">
+         <enum value="0x86A0" name="GL_TEXTURE_COMPRESSED_IMAGE_SIZE"/>
+@@ -4984,7 +5153,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x86B2" name="GL_MULTISAMPLE_3DFX"/>
+         <enum value="0x86B3" name="GL_SAMPLE_BUFFERS_3DFX"/>
+         <enum value="0x86B4" name="GL_SAMPLES_3DFX"/>
+-            <unused start="0x86B5" end="0x86BF"/>
++            <unused start="0x86B5" end="0x86BF" vendor="3DFX"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x86C0" end="0x871F" vendor="NV">
+@@ -5137,7 +5306,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8744" name="GL_MODULATE_ADD_ATI"/>
+         <enum value="0x8745" name="GL_MODULATE_SIGNED_ADD_ATI"/>
+         <enum value="0x8746" name="GL_MODULATE_SUBTRACT_ATI"/>
+-            <unused start="0x8747" end="0x8749"/>
++            <unused start="0x8747" end="0x8749" vendor="AMD"/>
+         <enum value="0x874A" name="GL_SET_AMD"/>
+         <enum value="0x874B" name="GL_REPLACE_VALUE_AMD"/>
+         <enum value="0x874C" name="GL_STENCIL_OP_VALUE_AMD"/>
+@@ -5165,7 +5334,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x875C" name="GL_PROXY_TEXTURE_2D_STACK_MESAX"/>
+         <enum value="0x875D" name="GL_TEXTURE_1D_STACK_BINDING_MESAX"/>
+         <enum value="0x875E" name="GL_TEXTURE_2D_STACK_BINDING_MESAX"/>
+-            <unused start="0x875F"/>
++            <unused start="0x875F" vendor="MESA"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8760" end="0x883F" vendor="AMD">
+@@ -5202,7 +5371,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x877A" name="GL_DU8DV8_ATI"/>
+         <enum value="0x877B" name="GL_BUMP_ENVMAP_ATI"/>
+         <enum value="0x877C" name="GL_BUMP_TARGET_ATI"/>
+-            <unused start="0x877D" end="0x877F"/>
++            <unused start="0x877D" end="0x877F" vendor="AMD"/>
+         <enum value="0x8780" name="GL_VERTEX_SHADER_EXT"/>
+         <enum value="0x8781" name="GL_VERTEX_SHADER_BINDING_EXT"/>
+         <enum value="0x8782" name="GL_OP_INDEX_EXT"/>
+@@ -5353,7 +5522,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x880E" name="GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"/>
+         <enum value="0x880F" name="GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"/>
+         <enum value="0x8810" name="GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"/>
+-            <unused start="0x8811" end="0x8813"/>
++            <unused start="0x8811" end="0x8813" vendor="AMD"/>
+         <enum value="0x8814" name="GL_RGBA32F"/>
+         <enum value="0x8814" name="GL_RGBA32F_ARB"/>
+         <enum value="0x8814" name="GL_RGBA32F_EXT"/>
+@@ -5407,7 +5576,7 @@ typedef unsigned int GLhandleARB;
+             <!-- RGBA_FLOAT_MODE_ARB equivalent to TYPE_RGBA_FLOAT_ATI -->
+         <enum value="0x8820" name="GL_RGBA_FLOAT_MODE_ARB"/>
+         <enum value="0x8820" name="GL_RGBA_FLOAT_MODE_ATI"/>
+-            <unused start="0x8821" end="0x8822"/>
++            <unused start="0x8821" end="0x8822" vendor="AMD"/>
+         <enum value="0x8823" name="GL_WRITEONLY_RENDERING_QCOM"/>
+         <enum value="0x8824" name="GL_MAX_DRAW_BUFFERS"/>
+         <enum value="0x8824" name="GL_MAX_DRAW_BUFFERS_ARB"/>
+@@ -5495,13 +5664,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8834" name="GL_DRAW_BUFFER15_EXT"/>
+         <enum value="0x8834" name="GL_DRAW_BUFFER15_NV"/>
+         <enum value="0x8835" name="GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI"/>
+-            <unused start="0x8836"/>
++            <unused start="0x8836" vendor="AMD"/>
+         <enum value="0x8837" name="GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI" comment="Defined by Mesa but not ATI"/>
+-            <unused start="0x8838" end="0x883C"/>
++            <unused start="0x8838" end="0x883C" vendor="AMD"/>
+         <enum value="0x883D" name="GL_BLEND_EQUATION_ALPHA"/>
+         <enum value="0x883D" name="GL_BLEND_EQUATION_ALPHA_EXT"/>
+         <enum value="0x883D" name="GL_BLEND_EQUATION_ALPHA_OES"/>
+-            <unused start="0x883E"/>
++            <unused start="0x883E" vendor="AMD"/>
+         <enum value="0x883F" name="GL_SUBSAMPLE_DISTANCE_AMD"/>
+     </enums>
+ 
+@@ -5590,9 +5759,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8869" name="GL_MAX_VERTEX_ATTRIBS_ARB"/>
+         <enum value="0x886A" name="GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"/>
+         <enum value="0x886A" name="GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"/>
+-            <unused start="0x886B"/>
++            <unused start="0x886B" vendor="NV"/>
+         <enum value="0x886C" name="GL_MAX_TESS_CONTROL_INPUT_COMPONENTS"/>
++        <enum value="0x886C" name="GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT"/>
++        <enum value="0x886C" name="GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES"/>
+         <enum value="0x886D" name="GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS"/>
++        <enum value="0x886D" name="GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT"/>
++        <enum value="0x886D" name="GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES"/>
+         <enum value="0x886E" name="GL_DEPTH_STENCIL_TO_RGBA_NV"/>
+         <enum value="0x886F" name="GL_DEPTH_STENCIL_TO_BGRA_NV"/>
+         <enum value="0x8870" name="GL_FRAGMENT_PROGRAM_NV"/>
+@@ -5607,15 +5780,17 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8874" name="GL_PROGRAM_ERROR_STRING_NV"/>
+         <enum value="0x8875" name="GL_PROGRAM_FORMAT_ASCII_ARB"/>
+         <enum value="0x8876" name="GL_PROGRAM_FORMAT_ARB"/>
+-            <unused start="0x8877" comment="Should have been assigned to PROGRAM_BINDING_ARB"/>
++            <unused start="0x8877" vendor="NV" comment="Should have been assigned to PROGRAM_BINDING_ARB"/>
+         <enum value="0x8878" name="GL_WRITE_PIXEL_DATA_RANGE_NV"/>
+         <enum value="0x8879" name="GL_READ_PIXEL_DATA_RANGE_NV"/>
+         <enum value="0x887A" name="GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV"/>
+         <enum value="0x887B" name="GL_READ_PIXEL_DATA_RANGE_LENGTH_NV"/>
+         <enum value="0x887C" name="GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV"/>
+         <enum value="0x887D" name="GL_READ_PIXEL_DATA_RANGE_POINTER_NV"/>
+-            <unused start="0x887E"/>
++            <unused start="0x887E" vendor="NV"/>
+         <enum value="0x887F" name="GL_GEOMETRY_SHADER_INVOCATIONS"/>
++        <enum value="0x887F" name="GL_GEOMETRY_SHADER_INVOCATIONS_EXT"/>
++        <enum value="0x887F" name="GL_GEOMETRY_SHADER_INVOCATIONS_OES"/>
+         <enum value="0x8880" name="GL_FLOAT_R_NV"/>
+         <enum value="0x8881" name="GL_FLOAT_RG_NV"/>
+         <enum value="0x8882" name="GL_FLOAT_RGB_NV"/>
+@@ -5745,14 +5920,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x88E1" name="GL_STREAM_READ_ARB"/>
+         <enum value="0x88E2" name="GL_STREAM_COPY"/>
+         <enum value="0x88E2" name="GL_STREAM_COPY_ARB"/>
+-            <unused start="0x88E3" comment="To extend ARB_vbo"/>
++            <unused start="0x88E3" vendor="NV" comment="To extend ARB_vbo"/>
+         <enum value="0x88E4" name="GL_STATIC_DRAW"/>
+         <enum value="0x88E4" name="GL_STATIC_DRAW_ARB"/>
+         <enum value="0x88E5" name="GL_STATIC_READ"/>
+         <enum value="0x88E5" name="GL_STATIC_READ_ARB"/>
+         <enum value="0x88E6" name="GL_STATIC_COPY"/>
+         <enum value="0x88E6" name="GL_STATIC_COPY_ARB"/>
+-            <unused start="0x88E7" comment="To extend ARB_vbo"/>
++            <unused start="0x88E7" vendor="NV" comment="To extend ARB_vbo"/>
+         <enum value="0x88E8" name="GL_DYNAMIC_DRAW"/>
+         <enum value="0x88E8" name="GL_DYNAMIC_DRAW_ARB"/>
+         <enum value="0x88E9" name="GL_DYNAMIC_READ"/>
+@@ -5811,13 +5986,19 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8910" name="GL_STENCIL_TEST_TWO_SIDE_EXT"/>
+         <enum value="0x8911" name="GL_ACTIVE_STENCIL_FACE_EXT"/>
+         <enum value="0x8912" name="GL_MIRROR_CLAMP_TO_BORDER_EXT"/>
+-            <unused start="0x8913"/>
++            <unused start="0x8913" vendor="NV"/>
+         <enum value="0x8914" name="GL_SAMPLES_PASSED"/>
+         <enum value="0x8914" name="GL_SAMPLES_PASSED_ARB"/>
+-            <unused start="0x8915"/>
++            <unused start="0x8915" vendor="NV"/>
+         <enum value="0x8916" name="GL_GEOMETRY_VERTICES_OUT"/>
++        <enum value="0x8916" name="GL_GEOMETRY_LINKED_VERTICES_OUT_EXT"/>
++        <enum value="0x8916" name="GL_GEOMETRY_LINKED_VERTICES_OUT_OES"/>
+         <enum value="0x8917" name="GL_GEOMETRY_INPUT_TYPE"/>
++        <enum value="0x8917" name="GL_GEOMETRY_LINKED_INPUT_TYPE_EXT"/>
++        <enum value="0x8917" name="GL_GEOMETRY_LINKED_INPUT_TYPE_OES"/>
+         <enum value="0x8918" name="GL_GEOMETRY_OUTPUT_TYPE"/>
++        <enum value="0x8918" name="GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT"/>
++        <enum value="0x8918" name="GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES"/>
+         <enum value="0x8919" name="GL_SAMPLER_BINDING"/>
+         <enum value="0x891A" name="GL_CLAMP_VERTEX_COLOR"/>
+         <enum value="0x891A" name="GL_CLAMP_VERTEX_COLOR_ARB"/>
+@@ -5923,7 +6104,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8979" name="GL_SWIZZLE_STQ_DQ_ATI"/>
+         <enum value="0x897A" name="GL_SWIZZLE_STRQ_ATI"/>
+         <enum value="0x897B" name="GL_SWIZZLE_STRQ_DQ_ATI"/>
+-            <unused start="0x897C" end="0x897F"/>
++            <unused start="0x897C" end="0x897F" vendor="AMD"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8980" end="0x898F" vendor="OML">
+@@ -5945,9 +6126,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x898F" name="GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8990" end="0x899F" vendor="ZiiLabs"/>
++    <enums namespace="GL" start="0x8990" end="0x899F" vendor="ZiiLabs">
++            <unused start="0x8990" end="0x899F" vendor="ZiiLabs"/>
++    </enums>
+ 
+-    <enums namespace="GL" start="0x89A0" end="0x89FF" vendor="Matrox"/>
++    <enums namespace="GL" start="0x89A0" end="0x89FF" vendor="Matrox">
++            <unused start="0x89A0" end="0x89FF" vendor="Matrox"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8A00" end="0x8A7F" vendor="APPLE">
+         <enum value="0x8A00" name="GL_VERTEX_ATTRIB_MAP1_APPLE"/>
+@@ -5966,7 +6151,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8A0D" name="GL_ELEMENT_ARRAY_TYPE_APPLE"/>
+         <enum value="0x8A0E" name="GL_ELEMENT_ARRAY_POINTER_APPLE"/>
+         <enum value="0x8A0F" name="GL_COLOR_FLOAT_APPLE"/>
+-            <unused start="0x8A10" comment="Unknown extension (Khronos bug 632)"/>
++            <unused start="0x8A10" vendor="APPLE" comment="Unknown extension (Khronos bug 632)"/>
+             <!-- <enum value="0x8A10" name="GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE"/> -->
+         <enum value="0x8A11" name="GL_UNIFORM_BUFFER"/>
+         <enum value="0x8A12" name="GL_BUFFER_SERIALIZED_MODIFY_APPLE"/>
+@@ -5974,26 +6159,30 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8A14" name="GL_AUX_DEPTH_STENCIL_APPLE"/>
+         <enum value="0x8A15" name="GL_PACK_ROW_BYTES_APPLE"/>
+         <enum value="0x8A16" name="GL_UNPACK_ROW_BYTES_APPLE"/>
+-            <unused start="0x8A17" end="0x8A18"/>
++            <unused start="0x8A17" end="0x8A18" vendor="APPLE"/>
+         <enum value="0x8A19" name="GL_RELEASED_APPLE"/>
+         <enum value="0x8A1A" name="GL_VOLATILE_APPLE"/>
+         <enum value="0x8A1B" name="GL_RETAINED_APPLE"/>
+         <enum value="0x8A1C" name="GL_UNDEFINED_APPLE"/>
+         <enum value="0x8A1D" name="GL_PURGEABLE_APPLE"/>
+-            <unused start="0x8A1E"/>
++            <unused start="0x8A1E" vendor="APPLE"/>
+         <enum value="0x8A1F" name="GL_RGB_422_APPLE"/>
+-            <unused start="0x8A20" end="0x8A27"/>
++            <unused start="0x8A20" end="0x8A27" vendor="APPLE"/>
+         <enum value="0x8A28" name="GL_UNIFORM_BUFFER_BINDING"/>
+         <enum value="0x8A29" name="GL_UNIFORM_BUFFER_START"/>
+         <enum value="0x8A2A" name="GL_UNIFORM_BUFFER_SIZE"/>
+         <enum value="0x8A2B" name="GL_MAX_VERTEX_UNIFORM_BLOCKS"/>
+         <enum value="0x8A2C" name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS"/>
++        <enum value="0x8A2C" name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT"/>
++        <enum value="0x8A2C" name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES"/>
+         <enum value="0x8A2D" name="GL_MAX_FRAGMENT_UNIFORM_BLOCKS"/>
+         <enum value="0x8A2E" name="GL_MAX_COMBINED_UNIFORM_BLOCKS"/>
+         <enum value="0x8A2F" name="GL_MAX_UNIFORM_BUFFER_BINDINGS"/>
+         <enum value="0x8A30" name="GL_MAX_UNIFORM_BLOCK_SIZE"/>
+         <enum value="0x8A31" name="GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS"/>
+         <enum value="0x8A32" name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS"/>
++        <enum value="0x8A32" name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8A32" name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8A33" name="GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS"/>
+         <enum value="0x8A34" name="GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT"/>
+         <enum value="0x8A35" name="GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH"/>
+@@ -6014,13 +6203,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8A44" name="GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER"/>
+         <enum value="0x8A45" name="GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER"/>
+         <enum value="0x8A46" name="GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER"/>
+-            <unused start="0x8A47"/>
++            <unused start="0x8A47" vendor="APPLE"/>
+         <enum value="0x8A48" name="GL_TEXTURE_SRGB_DECODE_EXT"/>
+         <enum value="0x8A49" name="GL_DECODE_EXT"/>
+         <enum value="0x8A4A" name="GL_SKIP_DECODE_EXT"/>
+-            <unused start="0x8A4B" end="0x8A4E"/>
++            <unused start="0x8A4B" end="0x8A4E" vendor="APPLE"/>
+         <enum value="0x8A4F" name="GL_PROGRAM_PIPELINE_OBJECT_EXT"/>
+-            <unused start="0x8A50"/>
++            <unused start="0x8A50" vendor="APPLE"/>
+         <enum value="0x8A51" name="GL_RGB_RAW_422_APPLE"/>
+         <enum value="0x8A52" name="GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT"/>
+         <enum value="0x8A53" name="GL_SYNC_OBJECT_APPLE"/>
+@@ -6028,12 +6217,16 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8A55" name="GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT"/>
+         <enum value="0x8A56" name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT"/>
+         <enum value="0x8A57" name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT"/>
+-            <unused start="0x8A58" end="0x8A7F"/>
++            <unused start="0x8A58" end="0x8A7F" vendor="APPLE"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8A80" end="0x8AEF" vendor="Matrox"/>
++    <enums namespace="GL" start="0x8A80" end="0x8AEF" vendor="Matrox">
++            <unused start="0x8A80" end="0x8AEF" vendor="Matrox"/>
++    </enums>
+ 
+-    <enums namespace="GL" start="0x8AF0" end="0x8B2F" vendor="Chromium" comment="For Brian Paul"/>
++    <enums namespace="GL" start="0x8AF0" end="0x8B2F" vendor="Chromium" comment="For Brian Paul">
++            <unused start="0x8AF0" end="0x8B2F" vendor="Chromium"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8B30" end="0x8B3F" group="ShaderType" vendor="ARB">
+         <enum value="0x8B30" name="GL_FRAGMENT_SHADER"/>
+@@ -6159,7 +6352,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8B8C" name="GL_SHADING_LANGUAGE_VERSION_ARB"/>
+         <enum value="0x8B8D" name="GL_CURRENT_PROGRAM"/>
+         <enum value="0x8B8D" api="gl" name="GL_ACTIVE_PROGRAM_EXT" alias="GL_CURRENT_PROGRAM" comment="For the OpenGL version of EXT_separate_shader_objects"/>
+-            <unused start="0x8B8E" end="0x8B8F"/>
++            <unused start="0x8B8E" end="0x8B8F" vendor="ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8B90" end="0x8B9F" vendor="OES">
+@@ -6183,7 +6376,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8B9F" name="GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8BA0" end="0x8BAF" vendor="Seaweed"/>
++    <enums namespace="GL" start="0x8BA0" end="0x8BAF" vendor="Seaweed">
++            <unused start="0x8BA0" end="0x8BAF" vendor="Seaweed"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8BB0" end="0x8BBF" vendor="MESA">
+         <enum value="0x8BB0" name="GL_FRAGMENT_PROGRAM_POSITION_MESA"/>
+@@ -6196,7 +6391,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8BB7" name="GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8BC0" end="0x8BFF" vendor="AMD">
++    <enums namespace="GL" start="0x8BC0" end="0x8BFF" vendor="QCOM" comment="Reassigned from AMD to QCOM">
+         <enum value="0x8BC0" name="GL_COUNTER_TYPE_AMD"/>
+         <enum value="0x8BC1" name="GL_COUNTER_RANGE_AMD"/>
+         <enum value="0x8BC2" name="GL_UNSIGNED_INT64_AMD"/>
+@@ -6204,7 +6399,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8BC4" name="GL_PERFMON_RESULT_AVAILABLE_AMD"/>
+         <enum value="0x8BC5" name="GL_PERFMON_RESULT_SIZE_AMD"/>
+         <enum value="0x8BC6" name="GL_PERFMON_RESULT_AMD"/>
+-            <unused start="0x8BC7" end="0x8BD1"/>
++            <unused start="0x8BC7" end="0x8BD1" vendor="QCOM"/>
+         <enum value="0x8BD2" name="GL_TEXTURE_WIDTH_QCOM"/>
+         <enum value="0x8BD3" name="GL_TEXTURE_HEIGHT_QCOM"/>
+         <enum value="0x8BD4" name="GL_TEXTURE_DEPTH_QCOM"/>
+@@ -6216,7 +6411,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8BDA" name="GL_TEXTURE_TARGET_QCOM"/>
+         <enum value="0x8BDB" name="GL_TEXTURE_OBJECT_VALID_QCOM"/>
+         <enum value="0x8BDC" name="GL_STATE_RESTORE"/>
+-            <unused start="0x8BDD" end="0x8BFF"/>
++            <unused start="0x8BDD" end="0x8BE6" vendor="QCOM"/>
++        <enum value="0x8BE7" name="GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT"/>
++            <unused start="0x8BE8" end="0x8BFF" vendor="QCOM"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8C00" end="0x8C0F" vendor="IMG">
+@@ -6231,7 +6428,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8C08" name="GL_FRAGMENT_ALPHA_MODULATE_IMG"/>
+         <enum value="0x8C09" name="GL_ADD_BLEND_IMG"/>
+         <enum value="0x8C0A" name="GL_SGX_BINARY_IMG"/>
+-            <unused start="0x8C0B" end="0x8C0F"/>
++            <unused start="0x8C0B" end="0x8C0F" vendor="IMG"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8C10" end="0x8C8F" vendor="NV" comment="For Pat Brown">
+@@ -6264,46 +6461,57 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8C1C" name="GL_TEXTURE_BINDING_1D_ARRAY_EXT"/>
+         <enum value="0x8C1D" name="GL_TEXTURE_BINDING_2D_ARRAY"/>
+         <enum value="0x8C1D" name="GL_TEXTURE_BINDING_2D_ARRAY_EXT"/>
+-            <unused start="0x8C1E" end="0x8C25"/>
++            <unused start="0x8C1E" end="0x8C25" vendor="NV"/>
+         <enum value="0x8C26" name="GL_GEOMETRY_PROGRAM_NV"/>
+         <enum value="0x8C27" name="GL_MAX_PROGRAM_OUTPUT_VERTICES_NV"/>
+         <enum value="0x8C28" name="GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV"/>
+         <enum value="0x8C29" name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"/>
+         <enum value="0x8C29" name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"/>
+         <enum value="0x8C29" name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT"/>
++        <enum value="0x8C29" name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES"/>
+         <enum value="0x8C2A" name="GL_TEXTURE_BUFFER"/>
+         <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_ARB"/>
+         <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_EXT"/>
++        <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_OES"/>
+         <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_BINDING" comment="Equivalent to GL_TEXTURE_BUFFER_ARB query, but named more consistently"/>
++        <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_BINDING_EXT"/>
++        <enum value="0x8C2A" name="GL_TEXTURE_BUFFER_BINDING_OES"/>
+         <enum value="0x8C2B" name="GL_MAX_TEXTURE_BUFFER_SIZE"/>
+         <enum value="0x8C2B" name="GL_MAX_TEXTURE_BUFFER_SIZE_ARB"/>
+         <enum value="0x8C2B" name="GL_MAX_TEXTURE_BUFFER_SIZE_EXT"/>
++        <enum value="0x8C2B" name="GL_MAX_TEXTURE_BUFFER_SIZE_OES"/>
+         <enum value="0x8C2C" name="GL_TEXTURE_BINDING_BUFFER"/>
+         <enum value="0x8C2C" name="GL_TEXTURE_BINDING_BUFFER_ARB"/>
+         <enum value="0x8C2C" name="GL_TEXTURE_BINDING_BUFFER_EXT"/>
++        <enum value="0x8C2C" name="GL_TEXTURE_BINDING_BUFFER_OES"/>
+         <enum value="0x8C2D" name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING"/>
+         <enum value="0x8C2D" name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"/>
+         <enum value="0x8C2D" name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT"/>
++        <enum value="0x8C2D" name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES"/>
+         <enum value="0x8C2E" name="GL_TEXTURE_BUFFER_FORMAT_ARB"/>
+         <enum value="0x8C2E" name="GL_TEXTURE_BUFFER_FORMAT_EXT"/>
+         <enum value="0x8C2F" name="GL_ANY_SAMPLES_PASSED"/>
+         <enum value="0x8C2F" name="GL_ANY_SAMPLES_PASSED_EXT"/>
+-            <unused start="0x8C30" end="0x8C35"/>
++            <unused start="0x8C30" end="0x8C35" vendor="NV"/>
+         <enum value="0x8C36" name="GL_SAMPLE_SHADING"/>
+         <enum value="0x8C36" name="GL_SAMPLE_SHADING_ARB"/>
+         <enum value="0x8C36" name="GL_SAMPLE_SHADING_OES"/>
+         <enum value="0x8C37" name="GL_MIN_SAMPLE_SHADING_VALUE"/>
+         <enum value="0x8C37" name="GL_MIN_SAMPLE_SHADING_VALUE_ARB"/>
+         <enum value="0x8C37" name="GL_MIN_SAMPLE_SHADING_VALUE_OES"/>
+-            <unused start="0x8C38" end="0x8C39"/>
++            <unused start="0x8C38" end="0x8C39" vendor="NV"/>
+         <enum value="0x8C3A" name="GL_R11F_G11F_B10F"/>
++        <enum value="0x8C3A" name="GL_R11F_G11F_B10F_APPLE"/>
+         <enum value="0x8C3A" name="GL_R11F_G11F_B10F_EXT"/>
+         <enum value="0x8C3B" name="GL_UNSIGNED_INT_10F_11F_11F_REV"/>
++        <enum value="0x8C3B" name="GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE"/>
+         <enum value="0x8C3B" name="GL_UNSIGNED_INT_10F_11F_11F_REV_EXT"/>
+         <enum value="0x8C3C" name="GL_RGBA_SIGNED_COMPONENTS_EXT"/>
+         <enum value="0x8C3D" name="GL_RGB9_E5"/>
++        <enum value="0x8C3D" name="GL_RGB9_E5_APPLE"/>
+         <enum value="0x8C3D" name="GL_RGB9_E5_EXT"/>
+         <enum value="0x8C3E" name="GL_UNSIGNED_INT_5_9_9_9_REV"/>
++        <enum value="0x8C3E" name="GL_UNSIGNED_INT_5_9_9_9_REV_APPLE"/>
+         <enum value="0x8C3E" name="GL_UNSIGNED_INT_5_9_9_9_REV_EXT"/>
+         <enum value="0x8C3F" name="GL_TEXTURE_SHARED_SIZE"/>
+         <enum value="0x8C3F" name="GL_TEXTURE_SHARED_SIZE_EXT"/>
+@@ -6344,7 +6552,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8C4E" name="GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV"/>
+         <enum value="0x8C4F" name="GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT"/>
+         <enum value="0x8C4F" name="GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV"/>
+-            <unused start="0x8C50" end="0x8C6F"/>
++            <unused start="0x8C50" end="0x8C6F" vendor="NV"/>
+         <enum value="0x8C70" name="GL_COMPRESSED_LUMINANCE_LATC1_EXT"/>
+         <enum value="0x8C71" name="GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT"/>
+         <enum value="0x8C72" name="GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT"/>
+@@ -6382,6 +6590,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8C87" name="GL_PRIMITIVES_GENERATED"/>
+         <enum value="0x8C87" name="GL_PRIMITIVES_GENERATED_EXT"/>
+         <enum value="0x8C87" name="GL_PRIMITIVES_GENERATED_NV"/>
++        <enum value="0x8C87" name="GL_PRIMITIVES_GENERATED_OES"/>
+         <enum value="0x8C88" name="GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"/>
+         <enum value="0x8C88" name="GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT"/>
+         <enum value="0x8C88" name="GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV"/>
+@@ -6408,13 +6617,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8C8F" name="GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8C90" end="0x8C9F" vendor="QCOM" comment="For Affie Munshi, OpenGL ES extensions">
+-            <!-- Reassigned from ATI to QCOM at time of
+-                 mobile/desktop split (bug 5874) -->
+-            <unused start="0x8C90" end="0x8C91"/>
++    <enums namespace="GL" start="0x8C90" end="0x8C9F" vendor="QCOM" comment="For Affie Munshi. Reassigned from AMD to QCOM (bug 5874)">
++            <unused start="0x8C90" end="0x8C91" vendor="QCOM"/>
+         <enum value="0x8C92" name="GL_ATC_RGB_AMD"/>
+         <enum value="0x8C93" name="GL_ATC_RGBA_EXPLICIT_ALPHA_AMD"/>
+-            <unused start="0x8C94" end="0x8C9F"/>
++            <unused start="0x8C94" end="0x8C9F" vendor="QCOM"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8CA0" end="0x8CAF" vendor="ARB">
+@@ -6460,10 +6667,12 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8CAB" name="GL_RENDERBUFFER_SAMPLES_NV"/>
+         <enum value="0x8CAC" name="GL_DEPTH_COMPONENT32F"/>
+         <enum value="0x8CAD" name="GL_DEPTH32F_STENCIL8"/>
+-            <unused start="0x8CAE" end="0x8CAF"/>
++            <unused start="0x8CAE" end="0x8CAF" vendor="ARB"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8CB0" end="0x8CCF" vendor="ZiiLabs" comment="For Barthold Lichtenbelt 2004/12/1"/>
++    <enums namespace="GL" start="0x8CB0" end="0x8CCF" vendor="ZiiLabs" comment="For Barthold Lichtenbelt 2004/12/1">
++            <unused start="0x8CB0" end="0x8CCF" vendor="ZiiLabs"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8CD0" end="0x8D5F" vendor="ARB" comment="Framebuffer object specification + headroom">
+         <enum value="0x8CD0" name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"/>
+@@ -6491,7 +6700,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8CD7" name="GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"/>
+         <enum value="0x8CD7" name="GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT"/>
+         <enum value="0x8CD7" name="GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES"/>
+-            <unused start="0x8CD8" comment="Removed 2005/09/26 in revision #117 of the FBO extension spec"/>
++            <unused start="0x8CD8" vendor="ARB" comment="Removed 2005/09/26 in revision #117 of the FBO extension spec"/>
+             <!-- <enum value="0x8CD8" name="GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT"/> -->
+         <enum value="0x8CD9" name="GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS"/>
+         <enum value="0x8CD9" name="GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT"/>
+@@ -6507,7 +6716,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8CDD" name="GL_FRAMEBUFFER_UNSUPPORTED"/>
+         <enum value="0x8CDD" name="GL_FRAMEBUFFER_UNSUPPORTED_EXT"/>
+         <enum value="0x8CDD" name="GL_FRAMEBUFFER_UNSUPPORTED_OES"/>
+-            <unused start="0x8CDE" comment="Removed 2005/05/31 in revision #113 of the FBO extension spec"/>
++            <unused start="0x8CDE" vendor="ARB" comment="Removed 2005/05/31 in revision #113 of the FBO extension spec"/>
+             <!-- <enum value="0x8CDE" name="GL_FRAMEBUFFER_STATUS_ERROR_EXT"/> -->
+         <enum value="0x8CDF" name="GL_MAX_COLOR_ATTACHMENTS"/>
+         <enum value="0x8CDF" name="GL_MAX_COLOR_ATTACHMENTS_EXT"/>
+@@ -6561,15 +6770,15 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8CEF" name="GL_COLOR_ATTACHMENT15"/>
+         <enum value="0x8CEF" name="GL_COLOR_ATTACHMENT15_EXT"/>
+         <enum value="0x8CEF" name="GL_COLOR_ATTACHMENT15_NV"/>
+-            <unused start="0x8CF0" end="0x8CFF" comment="For color attachments 16-31"/>
++            <unused start="0x8CF0" end="0x8CFF" vendor="ARB" comment="For color attachments 16-31"/>
+         <enum value="0x8D00" name="GL_DEPTH_ATTACHMENT"/>
+         <enum value="0x8D00" name="GL_DEPTH_ATTACHMENT_EXT"/>
+         <enum value="0x8D00" name="GL_DEPTH_ATTACHMENT_OES"/>
+-            <unused start="0x8D01" end="0x8D1F" comment="For depth attachments 16-31"/>
++            <unused start="0x8D01" end="0x8D1F" vendor="ARB" comment="For depth attachments 16-31"/>
+         <enum value="0x8D20" name="GL_STENCIL_ATTACHMENT"/>
+         <enum value="0x8D20" name="GL_STENCIL_ATTACHMENT_EXT"/>
+         <enum value="0x8D20" name="GL_STENCIL_ATTACHMENT_OES"/>
+-            <unused start="0x8D21" end="0x8D3F" comment="For stencil attachments 16-31"/>
++            <unused start="0x8D21" end="0x8D3F" vendor="ARB" comment="For stencil attachments 16-31"/>
+         <enum value="0x8D40" name="GL_FRAMEBUFFER"/>
+         <enum value="0x8D40" name="GL_FRAMEBUFFER_EXT"/>
+         <enum value="0x8D40" name="GL_FRAMEBUFFER_OES"/>
+@@ -6585,7 +6794,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8D44" name="GL_RENDERBUFFER_INTERNAL_FORMAT"/>
+         <enum value="0x8D44" name="GL_RENDERBUFFER_INTERNAL_FORMAT_EXT"/>
+         <enum value="0x8D44" name="GL_RENDERBUFFER_INTERNAL_FORMAT_OES"/>
+-            <unused start="0x8D45" comment="Was for GL_STENCIL_INDEX_EXT, but now use core STENCIL_INDEX instead"/>
++            <unused start="0x8D45" vendor="ARB" comment="Was for GL_STENCIL_INDEX_EXT, but now use core STENCIL_INDEX instead"/>
+         <enum value="0x8D46" name="GL_STENCIL_INDEX1"/>
+         <enum value="0x8D46" name="GL_STENCIL_INDEX1_EXT"/>
+         <enum value="0x8D46" name="GL_STENCIL_INDEX1_OES"/>
+@@ -6597,7 +6806,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8D48" name="GL_STENCIL_INDEX8_OES"/>
+         <enum value="0x8D49" name="GL_STENCIL_INDEX16"/>
+         <enum value="0x8D49" name="GL_STENCIL_INDEX16_EXT"/>
+-            <unused start="0x8D4A" end="0x8D4F" comment="For additional stencil formats"/>
++            <unused start="0x8D4A" end="0x8D4F" vendor="ARB" comment="For additional stencil formats"/>
+         <enum value="0x8D50" name="GL_RENDERBUFFER_RED_SIZE"/>
+         <enum value="0x8D50" name="GL_RENDERBUFFER_RED_SIZE_EXT"/>
+         <enum value="0x8D50" name="GL_RENDERBUFFER_RED_SIZE_OES"/>
+@@ -6626,7 +6835,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8D57" name="GL_MAX_SAMPLES_APPLE"/>
+         <enum value="0x8D57" name="GL_MAX_SAMPLES_EXT"/>
+         <enum value="0x8D57" name="GL_MAX_SAMPLES_NV"/>
+-            <unused start="0x8D58" end="0x8D5F"/>
++            <unused start="0x8D58" end="0x8D5F" vendor="ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8D60" end="0x8D6F" vendor="OES">
+@@ -6634,7 +6843,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8D61" name="GL_HALF_FLOAT_OES"/>
+         <enum value="0x8D62" name="GL_RGB565_OES"/>
+         <enum value="0x8D62" name="GL_RGB565"/>
+-            <unused start="0x8D63" comment="Was GL_TEXTURE_IMMUTABLE_LEVELS in draft ES 3.0 spec"/>
++            <unused start="0x8D63" vendor="OES" comment="Was GL_TEXTURE_IMMUTABLE_LEVELS in draft ES 3.0 spec"/>
+         <enum value="0x8D64" name="GL_ETC1_RGB8_OES"/>
+         <enum value="0x8D65" name="GL_TEXTURE_EXTERNAL_OES"/>
+         <enum value="0x8D66" name="GL_SAMPLER_EXTERNAL_OES"/>
+@@ -6645,7 +6854,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8D6A" name="GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT"/>
+         <enum value="0x8D6B" name="GL_MAX_ELEMENT_INDEX"/>
+         <enum value="0x8D6C" name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT"/>
+-            <unused start="0x8D6D" end="0x8D6F"/>
++            <unused start="0x8D6D" end="0x8D6F" vendor="OES"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8D70" end="0x8DEF" vendor="NV" comment="For Pat Brown 2005/10/13">
+@@ -6727,9 +6936,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DA7" name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED"/>
+         <enum value="0x8DA7" name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"/>
+         <enum value="0x8DA7" name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT"/>
++        <enum value="0x8DA7" name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES"/>
+         <enum value="0x8DA8" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"/>
+         <enum value="0x8DA8" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"/>
+         <enum value="0x8DA8" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT"/>
++        <enum value="0x8DA8" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES"/>
+         <enum value="0x8DA9" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"/>
+         <enum value="0x8DA9" name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT"/>
+             <!-- Also see the odd namespace "NVTransformFeedbackToken" above -->
+@@ -6740,7 +6951,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DAD" name="GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"/>
+         <enum value="0x8DAE" name="GL_SHADER_INCLUDE_ARB"/>
+         <enum value="0x8DAF" name="GL_DEPTH_BUFFER_FLOAT_MODE_NV"/>
+-            <unused start="0x8DB0" end="0x8DB8"/>
++            <unused start="0x8DB0" end="0x8DB8" vendor="NV"/>
+         <enum value="0x8DB9" name="GL_FRAMEBUFFER_SRGB"/>
+         <enum value="0x8DB9" name="GL_FRAMEBUFFER_SRGB_EXT"/>
+         <enum value="0x8DBA" name="GL_FRAMEBUFFER_SRGB_CAPABLE_EXT"/>
+@@ -6758,6 +6969,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DC1" name="GL_SAMPLER_2D_ARRAY_EXT"/>
+         <enum value="0x8DC2" name="GL_SAMPLER_BUFFER"/>
+         <enum value="0x8DC2" name="GL_SAMPLER_BUFFER_EXT"/>
++        <enum value="0x8DC2" name="GL_SAMPLER_BUFFER_OES"/>
+         <enum value="0x8DC3" name="GL_SAMPLER_1D_ARRAY_SHADOW"/>
+         <enum value="0x8DC3" name="GL_SAMPLER_1D_ARRAY_SHADOW_EXT"/>
+         <enum value="0x8DC4" name="GL_SAMPLER_2D_ARRAY_SHADOW"/>
+@@ -6788,6 +7000,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DCF" name="GL_INT_SAMPLER_2D_ARRAY_EXT"/>
+         <enum value="0x8DD0" name="GL_INT_SAMPLER_BUFFER"/>
+         <enum value="0x8DD0" name="GL_INT_SAMPLER_BUFFER_EXT"/>
++        <enum value="0x8DD0" name="GL_INT_SAMPLER_BUFFER_OES"/>
+         <enum value="0x8DD1" name="GL_UNSIGNED_INT_SAMPLER_1D"/>
+         <enum value="0x8DD1" name="GL_UNSIGNED_INT_SAMPLER_1D_EXT"/>
+         <enum value="0x8DD2" name="GL_UNSIGNED_INT_SAMPLER_2D"/>
+@@ -6804,9 +7017,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DD7" name="GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT"/>
+         <enum value="0x8DD8" name="GL_UNSIGNED_INT_SAMPLER_BUFFER"/>
+         <enum value="0x8DD8" name="GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT"/>
++        <enum value="0x8DD8" name="GL_UNSIGNED_INT_SAMPLER_BUFFER_OES"/>
+         <enum value="0x8DD9" name="GL_GEOMETRY_SHADER"/>
+         <enum value="0x8DD9" name="GL_GEOMETRY_SHADER_ARB"/>
+         <enum value="0x8DD9" name="GL_GEOMETRY_SHADER_EXT"/>
++        <enum value="0x8DD9" name="GL_GEOMETRY_SHADER_OES"/>
+         <enum value="0x8DDA" name="GL_GEOMETRY_VERTICES_OUT_ARB"/>
+         <enum value="0x8DDA" name="GL_GEOMETRY_VERTICES_OUT_EXT"/>
+         <enum value="0x8DDB" name="GL_GEOMETRY_INPUT_TYPE_ARB"/>
+@@ -6820,12 +7035,15 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DDF" name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS"/>
+         <enum value="0x8DDF" name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"/>
+         <enum value="0x8DDF" name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8DDF" name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8DE0" name="GL_MAX_GEOMETRY_OUTPUT_VERTICES"/>
+         <enum value="0x8DE0" name="GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"/>
+         <enum value="0x8DE0" name="GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT"/>
++        <enum value="0x8DE0" name="GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES"/>
+         <enum value="0x8DE1" name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS"/>
+         <enum value="0x8DE1" name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"/>
+         <enum value="0x8DE1" name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT"/>
++        <enum value="0x8DE1" name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES"/>
+         <enum value="0x8DE2" name="GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT"/>
+         <enum value="0x8DE3" name="GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT"/>
+         <enum value="0x8DE4" name="GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT"/>
+@@ -6835,7 +7053,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DE8" name="GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS"/>
+         <enum value="0x8DE9" name="GL_NAMED_STRING_LENGTH_ARB"/>
+         <enum value="0x8DEA" name="GL_NAMED_STRING_TYPE_ARB"/>
+-            <unused start="0x8DEB" end="0x8DEC"/>
++            <unused start="0x8DEB" end="0x8DEC" vendor="NV"/>
+         <enum value="0x8DED" name="GL_MAX_BINDABLE_UNIFORM_SIZE_EXT"/>
+         <enum value="0x8DEE" name="GL_UNIFORM_BUFFER_EXT"/>
+         <enum value="0x8DEF" name="GL_UNIFORM_BUFFER_BINDING_EXT"/>
+@@ -6856,7 +7074,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8DFB" name="GL_MAX_VERTEX_UNIFORM_VECTORS"/>
+         <enum value="0x8DFC" name="GL_MAX_VARYING_VECTORS"/>
+         <enum value="0x8DFD" name="GL_MAX_FRAGMENT_UNIFORM_VECTORS"/>
+-            <unused start="0x8DFE" end="0x8E0F"/>
++            <unused start="0x8DFE" end="0x8E0F" vendor="OES"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8E10" end="0x8E8F" vendor="NV" comment="For Michael Gold 2006/08/07">
+@@ -6871,11 +7089,20 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8E15" name="GL_QUERY_BY_REGION_WAIT_NV"/>
+         <enum value="0x8E16" name="GL_QUERY_BY_REGION_NO_WAIT"/>
+         <enum value="0x8E16" name="GL_QUERY_BY_REGION_NO_WAIT_NV"/>
+-            <unused start="0x8E17" end="0x8E1D"/>
++        <enum value="0x8E17" name="GL_QUERY_WAIT_INVERTED"/>
++        <enum value="0x8E18" name="GL_QUERY_NO_WAIT_INVERTED"/>
++        <enum value="0x8E19" name="GL_QUERY_BY_REGION_WAIT_INVERTED"/>
++        <enum value="0x8E1A" name="GL_QUERY_BY_REGION_NO_WAIT_INVERTED"/>
++        <enum value="0x8E1B" name="GL_POLYGON_OFFSET_CLAMP_EXT"/>
++            <unused start="0x8E1C" end="0x8E1D" vendor="NV"/>
+         <enum value="0x8E1E" name="GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS"/>
++        <enum value="0x8E1E" name="GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8E1E" name="GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8E1F" name="GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS"/>
++        <enum value="0x8E1F" name="GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8E1F" name="GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8E20" name="GL_COLOR_SAMPLES_NV"/>
+-            <unused start="0x8E21"/>
++            <unused start="0x8E21" vendor="NV"/>
+         <enum value="0x8E22" name="GL_TRANSFORM_FEEDBACK"/>
+         <enum value="0x8E22" name="GL_TRANSFORM_FEEDBACK_NV"/>
+         <enum value="0x8E23" name="GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED"/>
+@@ -6898,7 +7125,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8E2D" name="GL_PROGRAM_MATRIX_EXT"/>
+         <enum value="0x8E2E" name="GL_TRANSPOSE_PROGRAM_MATRIX_EXT"/>
+         <enum value="0x8E2F" name="GL_PROGRAM_MATRIX_STACK_DEPTH_EXT"/>
+-            <unused start="0x8E30" end="0x8E41"/>
++            <unused start="0x8E30" end="0x8E41" vendor="NV"/>
+         <enum value="0x8E42" name="GL_TEXTURE_SWIZZLE_R"/>
+         <enum value="0x8E42" name="GL_TEXTURE_SWIZZLE_R_EXT"/>
+         <enum value="0x8E43" name="GL_TEXTURE_SWIZZLE_G"/>
+@@ -6918,12 +7145,15 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8E4C" name="GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT"/>
+         <enum value="0x8E4D" name="GL_FIRST_VERTEX_CONVENTION"/>
+         <enum value="0x8E4D" name="GL_FIRST_VERTEX_CONVENTION_EXT"/>
++        <enum value="0x8E4D" name="GL_FIRST_VERTEX_CONVENTION_OES"/>
+         <enum value="0x8E4E" name="GL_LAST_VERTEX_CONVENTION"/>
+         <enum value="0x8E4E" name="GL_LAST_VERTEX_CONVENTION_EXT"/>
++        <enum value="0x8E4E" name="GL_LAST_VERTEX_CONVENTION_OES"/>
+         <enum value="0x8E4F" name="GL_PROVOKING_VERTEX"/>
+         <enum value="0x8E4F" name="GL_PROVOKING_VERTEX_EXT"/>
+         <enum value="0x8E50" name="GL_SAMPLE_POSITION"/>
+         <enum value="0x8E50" name="GL_SAMPLE_POSITION_NV"/>
++        <enum value="0x8E50" name="GL_SAMPLE_LOCATION_NV" alias="GL_SAMPLE_POSITION_NV"/>
+         <enum value="0x8E51" name="GL_SAMPLE_MASK"/>
+         <enum value="0x8E51" name="GL_SAMPLE_MASK_NV"/>
+         <enum value="0x8E52" name="GL_SAMPLE_MASK_VALUE"/>
+@@ -6938,6 +7168,8 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8E59" name="GL_MAX_SAMPLE_MASK_WORDS_NV"/>
+         <enum value="0x8E5A" name="GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV"/>
+         <enum value="0x8E5A" name="GL_MAX_GEOMETRY_SHADER_INVOCATIONS"/>
++        <enum value="0x8E5A" name="GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT"/>
++        <enum value="0x8E5A" name="GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES"/>
+         <enum value="0x8E5B" name="GL_MIN_FRAGMENT_INTERPOLATION_OFFSET"/>
+         <enum value="0x8E5B" name="GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES"/>
+         <enum value="0x8E5B" name="GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV"/>
+@@ -6953,34 +7185,83 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8E5F" name="GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET"/>
+         <enum value="0x8E5F" name="GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB"/>
+         <enum value="0x8E5F" name="GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV"/>
+-            <unused start="0x8E60" end="0x8E6F"/>
++            <unused start="0x8E60" end="0x8E6F" vendor="NV"/>
+         <enum value="0x8E70" name="GL_MAX_TRANSFORM_FEEDBACK_BUFFERS"/>
+         <enum value="0x8E71" name="GL_MAX_VERTEX_STREAMS"/>
+         <enum value="0x8E72" name="GL_PATCH_VERTICES"/>
++        <enum value="0x8E72" name="GL_PATCH_VERTICES_EXT"/>
++        <enum value="0x8E72" name="GL_PATCH_VERTICES_OES"/>
+         <enum value="0x8E73" name="GL_PATCH_DEFAULT_INNER_LEVEL"/>
++        <enum value="0x8E73" name="GL_PATCH_DEFAULT_INNER_LEVEL_EXT"/>
+         <enum value="0x8E74" name="GL_PATCH_DEFAULT_OUTER_LEVEL"/>
++        <enum value="0x8E74" name="GL_PATCH_DEFAULT_OUTER_LEVEL_EXT"/>
+         <enum value="0x8E75" name="GL_TESS_CONTROL_OUTPUT_VERTICES"/>
++        <enum value="0x8E75" name="GL_TESS_CONTROL_OUTPUT_VERTICES_EXT"/>
++        <enum value="0x8E75" name="GL_TESS_CONTROL_OUTPUT_VERTICES_OES"/>
+         <enum value="0x8E76" name="GL_TESS_GEN_MODE"/>
++        <enum value="0x8E76" name="GL_TESS_GEN_MODE_EXT"/>
++        <enum value="0x8E76" name="GL_TESS_GEN_MODE_OES"/>
+         <enum value="0x8E77" name="GL_TESS_GEN_SPACING"/>
++        <enum value="0x8E77" name="GL_TESS_GEN_SPACING_EXT"/>
++        <enum value="0x8E77" name="GL_TESS_GEN_SPACING_OES"/>
+         <enum value="0x8E78" name="GL_TESS_GEN_VERTEX_ORDER"/>
++        <enum value="0x8E78" name="GL_TESS_GEN_VERTEX_ORDER_EXT"/>
++        <enum value="0x8E78" name="GL_TESS_GEN_VERTEX_ORDER_OES"/>
+         <enum value="0x8E79" name="GL_TESS_GEN_POINT_MODE"/>
++        <enum value="0x8E79" name="GL_TESS_GEN_POINT_MODE_EXT"/>
++        <enum value="0x8E79" name="GL_TESS_GEN_POINT_MODE_OES"/>
+         <enum value="0x8E7A" name="GL_ISOLINES"/>
++        <enum value="0x8E7A" name="GL_ISOLINES_EXT"/>
++        <enum value="0x8E7A" name="GL_ISOLINES_OES"/>
+         <enum value="0x8E7B" name="GL_FRACTIONAL_ODD"/>
++        <enum value="0x8E7B" name="GL_FRACTIONAL_ODD_EXT"/>
++        <enum value="0x8E7B" name="GL_FRACTIONAL_ODD_OES"/>
+         <enum value="0x8E7C" name="GL_FRACTIONAL_EVEN"/>
++        <enum value="0x8E7C" name="GL_FRACTIONAL_EVEN_EXT"/>
++        <enum value="0x8E7C" name="GL_FRACTIONAL_EVEN_OES"/>
+         <enum value="0x8E7D" name="GL_MAX_PATCH_VERTICES"/>
++        <enum value="0x8E7D" name="GL_MAX_PATCH_VERTICES_EXT"/>
++        <enum value="0x8E7D" name="GL_MAX_PATCH_VERTICES_OES"/>
+         <enum value="0x8E7E" name="GL_MAX_TESS_GEN_LEVEL"/>
++        <enum value="0x8E7E" name="GL_MAX_TESS_GEN_LEVEL_EXT"/>
++        <enum value="0x8E7E" name="GL_MAX_TESS_GEN_LEVEL_OES"/>
+         <enum value="0x8E7F" name="GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS"/>
++        <enum value="0x8E7F" name="GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8E7F" name="GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8E80" name="GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS"/>
++        <enum value="0x8E80" name="GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT"/>
++        <enum value="0x8E80" name="GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES"/>
+         <enum value="0x8E81" name="GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS"/>
++        <enum value="0x8E81" name="GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT"/>
++        <enum value="0x8E81" name="GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES"/>
+         <enum value="0x8E82" name="GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS"/>
++        <enum value="0x8E82" name="GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT"/>
++        <enum value="0x8E82" name="GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES"/>
+         <enum value="0x8E83" name="GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS"/>
++        <enum value="0x8E83" name="GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT"/>
++        <enum value="0x8E83" name="GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES"/>
+         <enum value="0x8E84" name="GL_MAX_TESS_PATCH_COMPONENTS"/>
++        <enum value="0x8E84" name="GL_MAX_TESS_PATCH_COMPONENTS_EXT"/>
++        <enum value="0x8E84" name="GL_MAX_TESS_PATCH_COMPONENTS_OES"/>
+         <enum value="0x8E85" name="GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS"/>
++        <enum value="0x8E85" name="GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT"/>
++        <enum value="0x8E85" name="GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES"/>
+         <enum value="0x8E86" name="GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS"/>
++        <enum value="0x8E86" name="GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT"/>
++        <enum value="0x8E86" name="GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES"/>
+         <enum value="0x8E87" name="GL_TESS_EVALUATION_SHADER"/>
++        <enum value="0x8E87" name="GL_TESS_EVALUATION_SHADER_EXT"/>
++        <enum value="0x8E87" name="GL_TESS_EVALUATION_SHADER_OES"/>
+         <enum value="0x8E88" name="GL_TESS_CONTROL_SHADER"/>
++        <enum value="0x8E88" name="GL_TESS_CONTROL_SHADER_EXT"/>
++        <enum value="0x8E88" name="GL_TESS_CONTROL_SHADER_OES"/>
+         <enum value="0x8E89" name="GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS"/>
++        <enum value="0x8E89" name="GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT"/>
++        <enum value="0x8E89" name="GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES"/>
+         <enum value="0x8E8A" name="GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS"/>
++        <enum value="0x8E8A" name="GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT"/>
++        <enum value="0x8E8A" name="GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES"/>
++            <unused start="0x8E8B" vendor="NV"/>
+         <enum value="0x8E8C" name="GL_COMPRESSED_RGBA_BPTC_UNORM"/>
+         <enum value="0x8E8C" name="GL_COMPRESSED_RGBA_BPTC_UNORM_ARB"/>
+         <enum value="0x8E8D" name="GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM"/>
+@@ -6992,14 +7273,20 @@ typedef unsigned int GLhandleARB;
+     </enums>
+ 
+     <enums namespace="GL" start="0x8E90" end="0x8E9F" vendor="QNX" comment="For QNX_texture_tiling, QNX_complex_polygon, QNX_stippled_lines (Khronos bug 696)">
+-            <unused start="0x8E90" end="0x8E9F"/>
++            <unused start="0x8E90" end="0x8E9F" vendor="QNX"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8EA0" end="0x8EAF" vendor="IMG"/>
++    <enums namespace="GL" start="0x8EA0" end="0x8EAF" vendor="IMG">
++            <unused start="0x8EA0" end="0x8EAF" vendor="IMG"/>
++    </enums>
+ 
+-    <enums namespace="GL" start="0x8EB0" end="0x8EBF" vendor="OES" comment="For Affie Munshi 2007/07/20"/>
++    <enums namespace="GL" start="0x8EB0" end="0x8EBF" vendor="OES" comment="For Affie Munshi 2007/07/20">
++            <unused start="0x8EB0" end="0x8EBF" vendor="OES"/>
++    </enums>
+ 
+-    <enums namespace="GL" start="0x8EC0" end="0x8ECF" vendor="Vincent"/>
++    <enums namespace="GL" start="0x8EC0" end="0x8ECF" vendor="Vincent">
++            <unused start="0x8EC0" end="0x8ECF" vendor="Vincent"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8ED0" end="0x8F4F" vendor="NV" comment="For Pat Brown, Khronos bug 3191">
+         <enum value="0x8ED0" name="GL_COVERAGE_COMPONENT_NV"/>
+@@ -7010,7 +7297,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8ED5" name="GL_COVERAGE_ALL_FRAGMENTS_NV"/>
+         <enum value="0x8ED6" name="GL_COVERAGE_EDGE_FRAGMENTS_NV"/>
+         <enum value="0x8ED7" name="GL_COVERAGE_AUTOMATIC_NV"/>
+-            <unused start="0x8ED8" end="0x8F1C"/>
++            <unused start="0x8ED8" end="0x8F1C" vendor="NV"/>
+         <enum value="0x8F1D" name="GL_BUFFER_GPU_ADDRESS_NV"/>
+         <enum value="0x8F1E" name="GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV"/>
+         <enum value="0x8F1F" name="GL_ELEMENT_ARRAY_UNIFIED_NV"/>
+@@ -7085,23 +7372,29 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8F4F" name="GL_VERTEX_BINDING_BUFFER"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8F50" end="0x8F5F" vendor="ZiiLabs" comment="For Jon Kennedy, Khronos public bug 75"/>
++    <enums namespace="GL" start="0x8F50" end="0x8F5F" vendor="ZiiLabs" comment="For Jon Kennedy, Khronos public bug 75">
++            <unused start="0x8F50" end="0x8F5F" vendor="ZiiLabs"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8F60" end="0x8F6F" vendor="ARM" comment="For Remi Pedersen, Khronos bug 3745">
+         <enum value="0x8F60" name="GL_MALI_SHADER_BINARY_ARM"/>
+         <enum value="0x8F61" name="GL_MALI_PROGRAM_BINARY_ARM"/>
+-            <unused start="0x8F62"/>
++            <unused start="0x8F62" vendor="ARM"/>
+         <enum value="0x8F63" name="GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT"/>
+         <enum value="0x8F64" name="GL_SHADER_PIXEL_LOCAL_STORAGE_EXT"/>
+         <enum value="0x8F65" name="GL_FETCH_PER_SAMPLE_ARM"/>
+         <enum value="0x8F66" name="GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM"/>
+         <enum value="0x8F67" name="GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT"/>
+-            <unused start="0x8F68" end="0x8F6F"/>
++            <unused start="0x8F68" end="0x8F6F" vendor="ARM"/>
+     </enums>
+ 
+-    <enums namespace="GL" start="0x8F70" end="0x8F7F" vendor="HI" comment="For Mark Callow, Khronos bug 4055. Shared with EGL."/>
++    <enums namespace="GL" start="0x8F70" end="0x8F7F" vendor="HI" comment="For Mark Callow, Khronos bug 4055. Shared with EGL.">
++            <unused start="0x8F70" end="0x8F7F" vendor="HI"/>
++    </enums>
+ 
+-    <enums namespace="GL" start="0x8F80" end="0x8F8F" vendor="Zebra" comment="For Mike Weiblen, public bug 910"/>
++    <enums namespace="GL" start="0x8F80" end="0x8F8F" vendor="Zebra" comment="For Mike Weiblen, public bug 910">
++            <unused start="0x8F80" end="0x8F8F" vendor="Zebra"/>
++    </enums>
+ 
+     <enums namespace="GL" start="0x8F90" end="0x8F9F" vendor="ARB">
+         <enum value="0x8F90" name="GL_RED_SNORM"/>
+@@ -7113,9 +7406,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8F96" name="GL_RGB8_SNORM"/>
+         <enum value="0x8F97" name="GL_RGBA8_SNORM"/>
+         <enum value="0x8F98" name="GL_R16_SNORM"/>
++        <enum value="0x8F98" name="GL_R16_SNORM_EXT"/>
+         <enum value="0x8F99" name="GL_RG16_SNORM"/>
++        <enum value="0x8F99" name="GL_RG16_SNORM_EXT"/>
+         <enum value="0x8F9A" name="GL_RGB16_SNORM"/>
++        <enum value="0x8F9A" name="GL_RGB16_SNORM_EXT"/>
+         <enum value="0x8F9B" name="GL_RGBA16_SNORM"/>
++        <enum value="0x8F9B" name="GL_RGBA16_SNORM_EXT"/>
+         <enum value="0x8F9C" name="GL_SIGNED_NORMALIZED"/>
+         <enum value="0x8F9D" name="GL_PRIMITIVE_RESTART"/>
+         <enum value="0x8F9E" name="GL_PRIMITIVE_RESTART_INDEX"/>
+@@ -7124,14 +7421,17 @@ typedef unsigned int GLhandleARB;
+ 
+     <enums namespace="GL" start="0x8FA0" end="0x8FBF" vendor="QCOM" comment="For Maurice Ribble, bug 4512">
+         <enum value="0x8FA0" name="GL_PERFMON_GLOBAL_MODE_QCOM"/>
+-            <unused start="0x8FA1" end="0x8FAF"/>
++            <unused start="0x8FA1" end="0x8FAF" vendor="QCOM"/>
+         <enum value="0x8FB0" name="GL_BINNING_CONTROL_HINT_QCOM"/>
+         <enum value="0x8FB1" name="GL_CPU_OPTIMIZED_QCOM"/>
+         <enum value="0x8FB2" name="GL_GPU_OPTIMIZED_QCOM"/>
+         <enum value="0x8FB3" name="GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM"/>
+-            <unused start="0x8FB4" end="0x8FBA"/>
++            <unused start="0x8FB4" end="0x8FBA" vendor="QCOM"/>
+         <enum value="0x8FBB" name="GL_GPU_DISJOINT_EXT"/>
+-            <unused start="0x8FBC" end="0x8FBF"/>
++            <unused start="0x8FBC" vendor="QCOM"/>
++        <enum value="0x8FBD" name="GL_SR8_EXT"/>
++        <enum value="0x8FBE" name="GL_SRG8_EXT"/>
++            <unused start="0x8FBF" vendor="QCOM"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x8FC0" end="0x8FDF" vendor="VIV" comment="For Frido Garritsen, bug 4526">
+@@ -7171,7 +7471,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x8FFD" name="GL_DOUBLE_VEC3_EXT"/>
+         <enum value="0x8FFE" name="GL_DOUBLE_VEC4"/>
+         <enum value="0x8FFE" name="GL_DOUBLE_VEC4_EXT"/>
+-            <unused start="0x8FFF"/>
++            <unused start="0x8FFF" vendor="NV"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9000" end="0x901F" vendor="AMD" comment="For Bill Licea-Kane">
+@@ -7182,21 +7482,33 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9005" name="GL_TESSELLATION_FACTOR_AMD"/>
+         <enum value="0x9006" name="GL_DISCRETE_AMD"/>
+         <enum value="0x9007" name="GL_CONTINUOUS_AMD"/>
+-            <unused start="0x9008"/>
++            <unused start="0x9008" vendor="AMD"/>
+         <enum value="0x9009" name="GL_TEXTURE_CUBE_MAP_ARRAY"/>
+         <enum value="0x9009" name="GL_TEXTURE_CUBE_MAP_ARRAY_ARB"/>
++        <enum value="0x9009" name="GL_TEXTURE_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x9009" name="GL_TEXTURE_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x900A" name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"/>
+         <enum value="0x900A" name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB"/>
++        <enum value="0x900A" name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x900A" name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x900B" name="GL_PROXY_TEXTURE_CUBE_MAP_ARRAY"/>
+         <enum value="0x900B" name="GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB"/>
+         <enum value="0x900C" name="GL_SAMPLER_CUBE_MAP_ARRAY"/>
+         <enum value="0x900C" name="GL_SAMPLER_CUBE_MAP_ARRAY_ARB"/>
++        <enum value="0x900C" name="GL_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x900C" name="GL_SAMPLER_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x900D" name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW"/>
+         <enum value="0x900D" name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB"/>
++        <enum value="0x900D" name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT"/>
++        <enum value="0x900D" name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES"/>
+         <enum value="0x900E" name="GL_INT_SAMPLER_CUBE_MAP_ARRAY"/>
+         <enum value="0x900E" name="GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"/>
++        <enum value="0x900E" name="GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x900E" name="GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x900F" name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY"/>
+         <enum value="0x900F" name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"/>
++        <enum value="0x900F" name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x900F" name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x9010" name="GL_ALPHA_SNORM"/>
+         <enum value="0x9011" name="GL_LUMINANCE_SNORM"/>
+         <enum value="0x9012" name="GL_LUMINANCE_ALPHA_SNORM"/>
+@@ -7245,7 +7557,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x903A" name="GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV"/>
+         <enum value="0x903B" name="GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV"/>
+         <enum value="0x903C" name="GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV"/>
+-            <unused start="0x903D" end="0x9044"/>
++            <unused start="0x903D" end="0x9044" vendor="NV"/>
+         <enum value="0x9045" name="GL_TEXTURE_COVERAGE_SAMPLES_NV"/>
+         <enum value="0x9046" name="GL_TEXTURE_COLOR_SAMPLES_NV"/>
+         <enum value="0x9047" name="GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX"/>
+@@ -7265,12 +7577,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9050" name="GL_IMAGE_CUBE_EXT"/>
+         <enum value="0x9051" name="GL_IMAGE_BUFFER"/>
+         <enum value="0x9051" name="GL_IMAGE_BUFFER_EXT"/>
++        <enum value="0x9051" name="GL_IMAGE_BUFFER_OES"/>
+         <enum value="0x9052" name="GL_IMAGE_1D_ARRAY"/>
+         <enum value="0x9052" name="GL_IMAGE_1D_ARRAY_EXT"/>
+         <enum value="0x9053" name="GL_IMAGE_2D_ARRAY"/>
+         <enum value="0x9053" name="GL_IMAGE_2D_ARRAY_EXT"/>
+         <enum value="0x9054" name="GL_IMAGE_CUBE_MAP_ARRAY"/>
+         <enum value="0x9054" name="GL_IMAGE_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x9054" name="GL_IMAGE_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x9055" name="GL_IMAGE_2D_MULTISAMPLE"/>
+         <enum value="0x9055" name="GL_IMAGE_2D_MULTISAMPLE_EXT"/>
+         <enum value="0x9056" name="GL_IMAGE_2D_MULTISAMPLE_ARRAY"/>
+@@ -7287,12 +7601,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x905B" name="GL_INT_IMAGE_CUBE_EXT"/>
+         <enum value="0x905C" name="GL_INT_IMAGE_BUFFER"/>
+         <enum value="0x905C" name="GL_INT_IMAGE_BUFFER_EXT"/>
++        <enum value="0x905C" name="GL_INT_IMAGE_BUFFER_OES"/>
+         <enum value="0x905D" name="GL_INT_IMAGE_1D_ARRAY"/>
+         <enum value="0x905D" name="GL_INT_IMAGE_1D_ARRAY_EXT"/>
+         <enum value="0x905E" name="GL_INT_IMAGE_2D_ARRAY"/>
+         <enum value="0x905E" name="GL_INT_IMAGE_2D_ARRAY_EXT"/>
+         <enum value="0x905F" name="GL_INT_IMAGE_CUBE_MAP_ARRAY"/>
+         <enum value="0x905F" name="GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x905F" name="GL_INT_IMAGE_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x9060" name="GL_INT_IMAGE_2D_MULTISAMPLE"/>
+         <enum value="0x9060" name="GL_INT_IMAGE_2D_MULTISAMPLE_EXT"/>
+         <enum value="0x9061" name="GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY"/>
+@@ -7309,12 +7625,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9066" name="GL_UNSIGNED_INT_IMAGE_CUBE_EXT"/>
+         <enum value="0x9067" name="GL_UNSIGNED_INT_IMAGE_BUFFER"/>
+         <enum value="0x9067" name="GL_UNSIGNED_INT_IMAGE_BUFFER_EXT"/>
++        <enum value="0x9067" name="GL_UNSIGNED_INT_IMAGE_BUFFER_OES"/>
+         <enum value="0x9068" name="GL_UNSIGNED_INT_IMAGE_1D_ARRAY"/>
+         <enum value="0x9068" name="GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT"/>
+         <enum value="0x9069" name="GL_UNSIGNED_INT_IMAGE_2D_ARRAY"/>
+         <enum value="0x9069" name="GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT"/>
+         <enum value="0x906A" name="GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY"/>
+         <enum value="0x906A" name="GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT"/>
++        <enum value="0x906A" name="GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES"/>
+         <enum value="0x906B" name="GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE"/>
+         <enum value="0x906B" name="GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT"/>
+         <enum value="0x906C" name="GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY"/>
+@@ -7404,14 +7722,20 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x90BD" name="GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV"/>
+         <enum value="0x90BE" name="GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV"/>
+         <enum value="0x90BF" name="GL_PATH_COVER_DEPTH_FUNC_NV"/>
+-            <unused start="0x90C0" end="0x90C6"/>
++            <unused start="0x90C0" end="0x90C6" vendor="NV"/>
+         <enum value="0x90C7" name="GL_IMAGE_FORMAT_COMPATIBILITY_TYPE"/>
+         <enum value="0x90C8" name="GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE"/>
+         <enum value="0x90C9" name="GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS"/>
+         <enum value="0x90CA" name="GL_MAX_VERTEX_IMAGE_UNIFORMS"/>
+         <enum value="0x90CB" name="GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS"/>
++        <enum value="0x90CB" name="GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT"/>
++        <enum value="0x90CB" name="GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES"/>
+         <enum value="0x90CC" name="GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS"/>
++        <enum value="0x90CC" name="GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT"/>
++        <enum value="0x90CC" name="GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES"/>
+         <enum value="0x90CD" name="GL_MAX_GEOMETRY_IMAGE_UNIFORMS"/>
++        <enum value="0x90CD" name="GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT"/>
++        <enum value="0x90CD" name="GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES"/>
+         <enum value="0x90CE" name="GL_MAX_FRAGMENT_IMAGE_UNIFORMS"/>
+         <enum value="0x90CF" name="GL_MAX_COMBINED_IMAGE_UNIFORMS"/>
+         <enum value="0x90D0" name="GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV"/>
+@@ -7422,17 +7746,23 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x90D5" name="GL_SHADER_STORAGE_BUFFER_SIZE"/>
+         <enum value="0x90D6" name="GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS"/>
+         <enum value="0x90D7" name="GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS"/>
++        <enum value="0x90D7" name="GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT"/>
++        <enum value="0x90D7" name="GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES"/>
+         <enum value="0x90D8" name="GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS"/>
++        <enum value="0x90D8" name="GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT"/>
++        <enum value="0x90D8" name="GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES"/>
+         <enum value="0x90D9" name="GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS"/>
++        <enum value="0x90D9" name="GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT"/>
++        <enum value="0x90D9" name="GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES"/>
+         <enum value="0x90DA" name="GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS"/>
+         <enum value="0x90DB" name="GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS"/>
+         <enum value="0x90DC" name="GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS"/>
+         <enum value="0x90DD" name="GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS"/>
+         <enum value="0x90DE" name="GL_MAX_SHADER_STORAGE_BLOCK_SIZE"/>
+         <enum value="0x90DF" name="GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT"/>
+-            <unused start="0x90E0"/>
++            <unused start="0x90E0" vendor="NV"/>
+         <enum value="0x90E1" name="GL_SYNC_X11_FENCE_EXT"/>
+-            <unused start="0x90E2" end="0x90E9"/>
++            <unused start="0x90E2" end="0x90E9" vendor="NV"/>
+         <enum value="0x90EA" name="GL_DEPTH_STENCIL_TEXTURE_MODE"/>
+         <enum value="0x90EB" name="GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS"/>
+         <enum value="0x90EB" name="GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB" alias="GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS"/>
+@@ -7443,11 +7773,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x90F0" name="GL_COLOR_ATTACHMENT_EXT"/>
+         <enum value="0x90F1" name="GL_MULTIVIEW_EXT"/>
+         <enum value="0x90F2" name="GL_MAX_MULTIVIEW_BUFFERS_EXT"/>
++        <enum value="0x90F3" name="GL_CONTEXT_ROBUST_ACCESS"/>
+         <enum value="0x90F3" name="GL_CONTEXT_ROBUST_ACCESS_EXT"/>
+-            <unused start="0x90F4" end="0x90FA"/>
++        <enum value="0x90F3" name="GL_CONTEXT_ROBUST_ACCESS_KHR"/>
++            <unused start="0x90F4" end="0x90FA" vendor="NV"/>
+         <enum value="0x90FB" name="GL_COMPUTE_PROGRAM_NV"/>
+         <enum value="0x90FC" name="GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV"/>
+-            <unused start="0x90FD" end="0x90FF"/>
++            <unused start="0x90FD" end="0x90FF" vendor="NV"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9100" end="0x912F" vendor="ARB">
+@@ -7504,7 +7836,11 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9121" name="GL_BUFFER_MAP_OFFSET"/>
+         <enum value="0x9122" name="GL_MAX_VERTEX_OUTPUT_COMPONENTS"/>
+         <enum value="0x9123" name="GL_MAX_GEOMETRY_INPUT_COMPONENTS"/>
++        <enum value="0x9123" name="GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT"/>
++        <enum value="0x9123" name="GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES"/>
+         <enum value="0x9124" name="GL_MAX_GEOMETRY_OUTPUT_COMPONENTS"/>
++        <enum value="0x9124" name="GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT"/>
++        <enum value="0x9124" name="GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES"/>
+         <enum value="0x9125" name="GL_MAX_FRAGMENT_INPUT_COMPONENTS"/>
+         <enum value="0x9126" name="GL_CONTEXT_PROFILE_MASK"/>
+         <enum value="0x9127" name="GL_UNPACK_COMPRESSED_BLOCK_WIDTH"/>
+@@ -7521,18 +7857,18 @@ typedef unsigned int GLhandleARB;
+ 
+     <enums namespace="GL" start="0x9130" end="0x913F" vendor="IMG" comment="Khronos bug 882">
+         <enum value="0x9130" name="GL_SGX_PROGRAM_BINARY_IMG"/>
+-            <unused start="0x9131" end="0x9132"/>
++            <unused start="0x9131" end="0x9132" vendor="IMG"/>
+         <enum value="0x9133" name="GL_RENDERBUFFER_SAMPLES_IMG"/>
+         <enum value="0x9134" name="GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG"/>
+         <enum value="0x9135" name="GL_MAX_SAMPLES_IMG"/>
+         <enum value="0x9136" name="GL_TEXTURE_SAMPLES_IMG"/>
+         <enum value="0x9137" name="GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG"/>
+         <enum value="0x9138" name="GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG"/>
+-            <unused start="0x9139" end="0x913F"/>
++            <unused start="0x9139" end="0x913F" vendor="IMG"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9140" end="0x923F" vendor="AMD" comment="Khronos bugs 5899, 6004">
+-            <unused start="0x9140" end="0x9142"/>
++            <unused start="0x9140" end="0x9142" vendor="AMD"/>
+         <enum value="0x9143" name="GL_MAX_DEBUG_MESSAGE_LENGTH"/>
+         <enum value="0x9143" name="GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"/>
+         <enum value="0x9143" name="GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"/>
+@@ -7573,9 +7909,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9154" name="GL_VERTEX_ARRAY_OBJECT_AMD"/>
+         <enum value="0x9154" name="GL_VERTEX_ARRAY_OBJECT_EXT"/>
+         <enum value="0x9155" name="GL_SAMPLER_OBJECT_AMD"/>
+-            <unused start="0x9156" end="0x915F"/>
++            <unused start="0x9156" end="0x915F" vendor="AMD"/>
+         <enum value="0x9160" name="GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD"/>
+-            <unused start="0x9161"/>
++            <unused start="0x9161" vendor="AMD"/>
+         <enum value="0x9192" name="GL_QUERY_BUFFER"/>
+         <enum value="0x9192" name="GL_QUERY_BUFFER_AMD"/>
+         <enum value="0x9193" name="GL_QUERY_BUFFER_BINDING"/>
+@@ -7583,41 +7919,58 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9194" name="GL_QUERY_RESULT_NO_WAIT"/>
+         <enum value="0x9194" name="GL_QUERY_RESULT_NO_WAIT_AMD"/>
+         <enum value="0x9195" name="GL_VIRTUAL_PAGE_SIZE_X_ARB"/>
++        <enum value="0x9195" name="GL_VIRTUAL_PAGE_SIZE_X_EXT"/>
+         <enum value="0x9195" name="GL_VIRTUAL_PAGE_SIZE_X_AMD"/>
+         <enum value="0x9196" name="GL_VIRTUAL_PAGE_SIZE_Y_ARB"/>
++        <enum value="0x9196" name="GL_VIRTUAL_PAGE_SIZE_Y_EXT"/>
+         <enum value="0x9196" name="GL_VIRTUAL_PAGE_SIZE_Y_AMD"/>
+         <enum value="0x9197" name="GL_VIRTUAL_PAGE_SIZE_Z_ARB"/>
++        <enum value="0x9197" name="GL_VIRTUAL_PAGE_SIZE_Z_EXT"/>
+         <enum value="0x9197" name="GL_VIRTUAL_PAGE_SIZE_Z_AMD"/>
+         <enum value="0x9198" name="GL_MAX_SPARSE_TEXTURE_SIZE_ARB"/>
++        <enum value="0x9198" name="GL_MAX_SPARSE_TEXTURE_SIZE_EXT"/>
+         <enum value="0x9198" name="GL_MAX_SPARSE_TEXTURE_SIZE_AMD"/>
+         <enum value="0x9199" name="GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"/>
++        <enum value="0x9199" name="GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT"/>
+         <enum value="0x9199" name="GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"/>
+-        <enum value="0x919A" name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"/>
+         <enum value="0x919A" name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"/>
+-        <enum value="0x919B" name="GL_MIN_SPARSE_LEVEL_ARB"/>
++        <enum value="0x919A" name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"/>
++        <enum value="0x919A" name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT"/>
+         <enum value="0x919B" name="GL_MIN_SPARSE_LEVEL_AMD"/>
+         <enum value="0x919C" name="GL_MIN_LOD_WARNING_AMD"/>
+         <enum value="0x919D" name="GL_TEXTURE_BUFFER_OFFSET"/>
++        <enum value="0x919D" name="GL_TEXTURE_BUFFER_OFFSET_EXT"/>
++        <enum value="0x919D" name="GL_TEXTURE_BUFFER_OFFSET_OES"/>
+         <enum value="0x919E" name="GL_TEXTURE_BUFFER_SIZE"/>
++        <enum value="0x919E" name="GL_TEXTURE_BUFFER_SIZE_EXT"/>
++        <enum value="0x919E" name="GL_TEXTURE_BUFFER_SIZE_OES"/>
+         <enum value="0x919F" name="GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT"/>
++        <enum value="0x919F" name="GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT"/>
++        <enum value="0x919F" name="GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES"/>
+         <enum value="0x91A0" name="GL_STREAM_RASTERIZATION_AMD"/>
+-            <unused start="0x91A1" end="0x91A3"/>
++            <unused start="0x91A1" end="0x91A3" vendor="AMD"/>
+         <enum value="0x91A4" name="GL_VERTEX_ELEMENT_SWIZZLE_AMD"/>
+         <enum value="0x91A5" name="GL_VERTEX_ID_SWIZZLE_AMD"/>
+         <enum value="0x91A6" name="GL_TEXTURE_SPARSE_ARB"/>
++        <enum value="0x91A6" name="GL_TEXTURE_SPARSE_EXT"/>
+         <enum value="0x91A7" name="GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"/>
++        <enum value="0x91A7" name="GL_VIRTUAL_PAGE_SIZE_INDEX_EXT"/>
+         <enum value="0x91A8" name="GL_NUM_VIRTUAL_PAGE_SIZES_ARB"/>
++        <enum value="0x91A8" name="GL_NUM_VIRTUAL_PAGE_SIZES_EXT"/>
+         <enum value="0x91A9" name="GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"/>
+-            <unused start="0x91AA" end="0x91B8"/>
++        <enum value="0x91A9" name="GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT"/>
++        <enum value="0x91AA" name="GL_NUM_SPARSE_LEVELS_ARB"/>
++        <enum value="0x91AA" name="GL_NUM_SPARSE_LEVELS_EXT"/>
++            <unused start="0x91AB" end="0x91B8" vendor="AMD"/>
+         <enum value="0x91B9" name="GL_COMPUTE_SHADER"/>
+-            <unused start="0x91BA"/>
++            <unused start="0x91BA" vendor="AMD"/>
+         <enum value="0x91BB" name="GL_MAX_COMPUTE_UNIFORM_BLOCKS"/>
+         <enum value="0x91BC" name="GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS"/>
+         <enum value="0x91BD" name="GL_MAX_COMPUTE_IMAGE_UNIFORMS"/>
+         <enum value="0x91BE" name="GL_MAX_COMPUTE_WORK_GROUP_COUNT"/>
+         <enum value="0x91BF" name="GL_MAX_COMPUTE_WORK_GROUP_SIZE"/>
+         <enum value="0x91BF" name="GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB" alias="GL_MAX_COMPUTE_WORK_GROUP_SIZE"/>
+-            <unused start="0x91C0" end="0x923F"/>
++            <unused start="0x91C0" end="0x923F" vendor="AMD"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9240" end="0x924F" vendor="WEBGL" comment="Khronos bug 6473,6884">
+@@ -7626,17 +7979,20 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9242" name="GL_CONTEXT_LOST_WEBGL"/>
+         <enum value="0x9243" name="GL_UNPACK_COLORSPACE_CONVERSION_WEBGL"/>
+         <enum value="0x9244" name="GL_BROWSER_DEFAULT_WEBGL"/>
+-            <unused start="0x9245" end="0x924F"/>
++            <unused start="0x9245" end="0x924F" vendor="WEBGL"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9250" end="0x925F" vendor="DMP" comment="For Eisaku Ohbuchi via email">
+         <enum value="0x9250" name="GL_SHADER_BINARY_DMP"/>
+-            <unused start="0x9251" end="0x925F"/>
++        <enum value="0x9251" name="GL_SMAPHS30_PROGRAM_BINARY_DMP"/>
++        <enum value="0x9252" name="GL_SMAPHS_PROGRAM_BINARY_DMP"/>
++        <enum value="0x9253" name="GL_DMP_PROGRAM_BINARY_DMP"/>
++            <unused start="0x9254" end="0x925F" vendor="DMP"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9260" end="0x926F" vendor="FJ" comment="Khronos bug 7486">
+         <enum value="0x9260" name="GL_GCCSO_SHADER_BINARY_FJ"/>
+-            <unused start="0x9261" end="0x926F"/>
++            <unused start="0x9261" end="0x926F" vendor="FJ"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9270" end="0x927F" vendor="OES" comment="Khronos bug 7625">
+@@ -7660,7 +8016,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9278" name="GL_COMPRESSED_RGBA8_ETC2_EAC_OES"/>
+         <enum value="0x9279" name="GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"/>
+         <enum value="0x9279" name="GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC_OES"/>
+-            <unused start="0x927A" end="0x927F"/>
++            <unused start="0x927A" end="0x927F" vendor="OES"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9280" end="0x937F" vendor="NV" comment="Khronos bug 7658">
+@@ -7681,10 +8037,10 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x928D" name="GL_DST_OUT_NV"/>
+         <enum value="0x928E" name="GL_SRC_ATOP_NV"/>
+         <enum value="0x928F" name="GL_DST_ATOP_NV"/>
+-            <unused start="0x9290"/>
++            <unused start="0x9290" vendor="NV"/>
+         <enum value="0x9291" name="GL_PLUS_NV"/>
+         <enum value="0x9292" name="GL_PLUS_DARKER_NV"/>
+-            <unused start="0x9293"/>
++            <unused start="0x9293" vendor="NV"/>
+         <enum value="0x9294" name="GL_MULTIPLY_KHR"/>
+         <enum value="0x9294" name="GL_MULTIPLY_NV"/>
+         <enum value="0x9295" name="GL_SCREEN_KHR"/>
+@@ -7703,14 +8059,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x929B" name="GL_HARDLIGHT_NV"/>
+         <enum value="0x929C" name="GL_SOFTLIGHT_KHR"/>
+         <enum value="0x929C" name="GL_SOFTLIGHT_NV"/>
+-            <unused start="0x929D"/>
++            <unused start="0x929D" vendor="NV"/>
+         <enum value="0x929E" name="GL_DIFFERENCE_KHR"/>
+         <enum value="0x929E" name="GL_DIFFERENCE_NV"/>
+         <enum value="0x929F" name="GL_MINUS_NV"/>
+         <enum value="0x92A0" name="GL_EXCLUSION_KHR"/>
+         <enum value="0x92A0" name="GL_EXCLUSION_NV"/>
+         <enum value="0x92A1" name="GL_CONTRAST_NV"/>
+-            <unused start="0x92A2"/>
++            <unused start="0x92A2" vendor="NV"/>
+         <enum value="0x92A3" name="GL_INVERT_RGB_NV"/>
+         <enum value="0x92A4" name="GL_LINEARDODGE_NV"/>
+         <enum value="0x92A5" name="GL_LINEARBURN_NV"/>
+@@ -7718,7 +8074,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x92A7" name="GL_LINEARLIGHT_NV"/>
+         <enum value="0x92A8" name="GL_PINLIGHT_NV"/>
+         <enum value="0x92A9" name="GL_HARDMIX_NV"/>
+-            <unused start="0x92AA" end="0x92AC"/>
++            <unused start="0x92AA" end="0x92AC" vendor="NV"/>
+         <enum value="0x92AD" name="GL_HSL_HUE_KHR"/>
+         <enum value="0x92AD" name="GL_HSL_HUE_NV"/>
+         <enum value="0x92AE" name="GL_HSL_SATURATION_KHR"/>
+@@ -7731,7 +8087,10 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x92B2" name="GL_PLUS_CLAMPED_ALPHA_NV"/>
+         <enum value="0x92B3" name="GL_MINUS_CLAMPED_NV"/>
+         <enum value="0x92B4" name="GL_INVERT_OVG_NV"/>
+-            <unused start="0x92B5" end="0x92BF"/>
++            <unused start="0x92B5" end="0x92BD" vendor="NV"/>
++        <enum value="0x92BE" name="GL_PRIMITIVE_BOUNDING_BOX_EXT"/>
++        <enum value="0x92BE" name="GL_PRIMITIVE_BOUNDING_BOX_OES"/>
++            <unused start="0x92BF" vendor="NV"/>
+         <enum value="0x92C0" name="GL_ATOMIC_COUNTER_BUFFER"/>
+         <enum value="0x92C1" name="GL_ATOMIC_COUNTER_BUFFER_BINDING"/>
+         <enum value="0x92C2" name="GL_ATOMIC_COUNTER_BUFFER_START"/>
+@@ -7746,14 +8105,26 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x92CB" name="GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER"/>
+         <enum value="0x92CC" name="GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS"/>
+         <enum value="0x92CD" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS"/>
++        <enum value="0x92CD" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT"/>
++        <enum value="0x92CD" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES"/>
+         <enum value="0x92CE" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS"/>
++        <enum value="0x92CE" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT"/>
++        <enum value="0x92CE" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES"/>
+         <enum value="0x92CF" name="GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS"/>
++        <enum value="0x92CF" name="GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT"/>
++        <enum value="0x92CF" name="GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES"/>
+         <enum value="0x92D0" name="GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS"/>
+         <enum value="0x92D1" name="GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS"/>
+         <enum value="0x92D2" name="GL_MAX_VERTEX_ATOMIC_COUNTERS"/>
+         <enum value="0x92D3" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS"/>
++        <enum value="0x92D3" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT"/>
++        <enum value="0x92D3" name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES"/>
+         <enum value="0x92D4" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS"/>
++        <enum value="0x92D4" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT"/>
++        <enum value="0x92D4" name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES"/>
+         <enum value="0x92D5" name="GL_MAX_GEOMETRY_ATOMIC_COUNTERS"/>
++        <enum value="0x92D5" name="GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT"/>
++        <enum value="0x92D5" name="GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES"/>
+         <enum value="0x92D6" name="GL_MAX_FRAGMENT_ATOMIC_COUNTERS"/>
+         <enum value="0x92D7" name="GL_MAX_COMBINED_ATOMIC_COUNTERS"/>
+         <enum value="0x92D8" name="GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE"/>
+@@ -7761,7 +8132,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x92DA" name="GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX"/>
+         <enum value="0x92DB" name="GL_UNSIGNED_INT_ATOMIC_COUNTER"/>
+         <enum value="0x92DC" name="GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS"/>
+-            <unused start="0x92DC" end="0x92DF"/>
++        <enum value="0x92DD" name="GL_FRAGMENT_COVERAGE_TO_COLOR_NV"/>
++        <enum value="0x92DE" name="GL_FRAGMENT_COVERAGE_COLOR_NV"/>
++            <unused start="0x92DF" end="0x92DF" vendor="NV"/>
+         <enum value="0x92E0" name="GL_DEBUG_OUTPUT"/>
+         <enum value="0x92E0" name="GL_DEBUG_OUTPUT_KHR"/>
+         <enum value="0x92E1" name="GL_UNIFORM"/>
+@@ -7771,6 +8144,8 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x92E5" name="GL_BUFFER_VARIABLE"/>
+         <enum value="0x92E6" name="GL_SHADER_STORAGE_BLOCK"/>
+         <enum value="0x92E7" name="GL_IS_PER_PATCH"/>
++        <enum value="0x92E7" name="GL_IS_PER_PATCH_EXT"/>
++        <enum value="0x92E7" name="GL_IS_PER_PATCH_OES"/>
+         <enum value="0x92E8" name="GL_VERTEX_SUBROUTINE"/>
+         <enum value="0x92E9" name="GL_TESS_CONTROL_SUBROUTINE"/>
+         <enum value="0x92EA" name="GL_TESS_EVALUATION_SUBROUTINE"/>
+@@ -7803,8 +8178,14 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9305" name="GL_ACTIVE_VARIABLES"/>
+         <enum value="0x9306" name="GL_REFERENCED_BY_VERTEX_SHADER"/>
+         <enum value="0x9307" name="GL_REFERENCED_BY_TESS_CONTROL_SHADER"/>
++        <enum value="0x9307" name="GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT"/>
++        <enum value="0x9307" name="GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES"/>
+         <enum value="0x9308" name="GL_REFERENCED_BY_TESS_EVALUATION_SHADER"/>
++        <enum value="0x9308" name="GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT"/>
++        <enum value="0x9308" name="GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES"/>
+         <enum value="0x9309" name="GL_REFERENCED_BY_GEOMETRY_SHADER"/>
++        <enum value="0x9309" name="GL_REFERENCED_BY_GEOMETRY_SHADER_EXT"/>
++        <enum value="0x9309" name="GL_REFERENCED_BY_GEOMETRY_SHADER_OES"/>
+         <enum value="0x930A" name="GL_REFERENCED_BY_FRAGMENT_SHADER"/>
+         <enum value="0x930B" name="GL_REFERENCED_BY_COMPUTE_SHADER"/>
+         <enum value="0x930C" name="GL_TOP_LEVEL_ARRAY_SIZE"/>
+@@ -7814,31 +8195,78 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x9310" name="GL_FRAMEBUFFER_DEFAULT_WIDTH"/>
+         <enum value="0x9311" name="GL_FRAMEBUFFER_DEFAULT_HEIGHT"/>
+         <enum value="0x9312" name="GL_FRAMEBUFFER_DEFAULT_LAYERS"/>
++        <enum value="0x9312" name="GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT"/>
++        <enum value="0x9312" name="GL_FRAMEBUFFER_DEFAULT_LAYERS_OES"/>
+         <enum value="0x9313" name="GL_FRAMEBUFFER_DEFAULT_SAMPLES"/>
+         <enum value="0x9314" name="GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS"/>
+         <enum value="0x9315" name="GL_MAX_FRAMEBUFFER_WIDTH"/>
+         <enum value="0x9316" name="GL_MAX_FRAMEBUFFER_HEIGHT"/>
+         <enum value="0x9317" name="GL_MAX_FRAMEBUFFER_LAYERS"/>
++        <enum value="0x9317" name="GL_MAX_FRAMEBUFFER_LAYERS_EXT"/>
++        <enum value="0x9317" name="GL_MAX_FRAMEBUFFER_LAYERS_OES"/>
+         <enum value="0x9318" name="GL_MAX_FRAMEBUFFER_SAMPLES"/>
+-            <unused start="0x9319" end="0x9338"/>
++            <unused start="0x9319" end="0x9326" vendor="NV"/>
++        <enum value="0x9327" name="GL_RASTER_MULTISAMPLE_EXT"/>
++        <enum value="0x9328" name="GL_RASTER_SAMPLES_EXT"/>
++        <enum value="0x9329" name="GL_MAX_RASTER_SAMPLES_EXT"/>
++        <enum value="0x932A" name="GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"/>
++        <enum value="0x932B" name="GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT"/>
++        <enum value="0x932C" name="GL_EFFECTIVE_RASTER_SAMPLES_EXT"/>
++        <enum value="0x932D" name="GL_DEPTH_SAMPLES_NV"/>
++        <enum value="0x932E" name="GL_STENCIL_SAMPLES_NV"/>
++        <enum value="0x932F" name="GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV"/>
++        <enum value="0x9330" name="GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV"/>
++        <enum value="0x9331" name="GL_COVERAGE_MODULATION_TABLE_NV"/>
++        <enum value="0x9332" name="GL_COVERAGE_MODULATION_NV"/>
++        <enum value="0x9333" name="GL_COVERAGE_MODULATION_TABLE_SIZE_NV"/>
++            <unused start="0x9334" end="0x9338" vendor="NV"/>
+         <enum value="0x9339" name="GL_WARP_SIZE_NV"/>
+         <enum value="0x933A" name="GL_WARPS_PER_SM_NV"/>
+         <enum value="0x933B" name="GL_SM_COUNT_NV"/>
+-            <unused start="0x933C" end="0x9343"/>
++        <enum value="0x933C" name="GL_FILL_RECTANGLE_NV"/>
++        <enum value="0x933D" name="GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV"/>
++        <enum value="0x933E" name="GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV"/>
++        <enum value="0x933F" name="GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV"/>
++        <enum value="0x9340" name="GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV"/>
++        <enum value="0x9341" name="GL_PROGRAMMABLE_SAMPLE_LOCATION_NV"/>
++        <enum value="0x9342" name="GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV"/>
++        <enum value="0x9343" name="GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV"/>
+         <enum value="0x9344" name="GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"/>
+         <enum value="0x9345" name="GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"/>
+-            <unused start="0x9346" end="0x9349"/>
++        <enum value="0x9346" name="GL_CONSERVATIVE_RASTERIZATION_NV"/>
++        <enum value="0x9347" name="GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"/>
++        <enum value="0x9348" name="GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"/>
++        <enum value="0x9349" name="GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"/>
+         <enum value="0x934A" name="GL_LOCATION_COMPONENT"/>
+         <enum value="0x934B" name="GL_TRANSFORM_FEEDBACK_BUFFER_INDEX"/>
+         <enum value="0x934C" name="GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE"/>
+-            <unused start="0x934D" end="0x9364"/>
++            <unused start="0x934D" end="0x935B" vendor="NV"/>
++        <enum value="0x935C" name="GL_CLIP_ORIGIN"/>
++        <enum value="0x935D" name="GL_CLIP_DEPTH_MODE"/>
++        <enum value="0x935E" name="GL_NEGATIVE_ONE_TO_ONE"/>
++        <enum value="0x935F" name="GL_ZERO_TO_ONE"/>
++            <unused start="0x9360" end="0x9364" vendor="NV"/>
+         <enum value="0x9365" name="GL_CLEAR_TEXTURE"/>
+-            <unused start="0x9366" end="0x937F"/>
++            <unused start="0x9366" end="0x9367" vendor="NV"/>
++        <enum value="0x9368" name="GL_FONT_GLYPHS_AVAILABLE_NV"/>
++        <enum value="0x9369" name="GL_FONT_TARGET_UNAVAILABLE_NV"/>
++        <enum value="0x936A" name="GL_FONT_UNAVAILABLE_NV"/>
++        <enum value="0x936B" name="GL_FONT_UNINTELLIGIBLE_NV"/>
++        <enum value="0x936C" name="GL_STANDARD_FONT_FORMAT_NV"/>
++        <enum value="0x936D" name="GL_FRAGMENT_INPUT_NV"/>
++        <enum value="0x936E" name="GL_UNIFORM_BUFFER_UNIFIED_NV"/>
++        <enum value="0x936F" name="GL_UNIFORM_BUFFER_ADDRESS_NV"/>
++        <enum value="0x9370" name="GL_UNIFORM_BUFFER_LENGTH_NV"/>
++        <enum value="0x9371" name="GL_MULTISAMPLES_NV"/>
++        <enum value="0x9372" name="GL_SUPERSAMPLE_SCALE_X_NV"/>
++        <enum value="0x9373" name="GL_SUPERSAMPLE_SCALE_Y_NV"/>
++        <enum value="0x9374" name="GL_CONFORMANT_NV"/>
++            <unused start="0x9375" end="0x937F" vendor="NV"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x9380" end="0x939F" vendor="ARB">
+         <enum value="0x9380" name="GL_NUM_SAMPLE_COUNTS"/>
+-            <unused start="0x9381" end="0x939F"/>
++            <unused start="0x9381" end="0x939F" vendor="ARB"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x93A0" end="0x93AF" vendor="ANGLE" comment="Khronos bug 8100">
+@@ -7847,9 +8275,9 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x93A2" name="GL_TEXTURE_USAGE_ANGLE"/>
+         <enum value="0x93A3" name="GL_FRAMEBUFFER_ATTACHMENT_ANGLE"/>
+         <enum value="0x93A4" name="GL_PACK_REVERSE_ROW_ORDER_ANGLE"/>
+-            <unused start="0x93A5"/>
++            <unused start="0x93A5" vendor="ANGLE"/>
+         <enum value="0x93A6" name="GL_PROGRAM_BINARY_ANGLE"/>
+-            <unused start="0x93A7" end="0x93AF"/>
++            <unused start="0x93A7" end="0x93AF" vendor="ANGLE"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x93B0" end="0x93EF" vendor="OES" comment="Khronos bug 8853">
+@@ -7867,7 +8295,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x93BB" name="GL_COMPRESSED_RGBA_ASTC_10x10_KHR"/>
+         <enum value="0x93BC" name="GL_COMPRESSED_RGBA_ASTC_12x10_KHR"/>
+         <enum value="0x93BD" name="GL_COMPRESSED_RGBA_ASTC_12x12_KHR"/>
+-            <unused start="0x93BE" end="0x93BF"/>
++            <unused start="0x93BE" end="0x93BF" vendor="OES"/>
+         <enum value="0x93C0" name="GL_COMPRESSED_RGBA_ASTC_3x3x3_OES"/>
+         <enum value="0x93C1" name="GL_COMPRESSED_RGBA_ASTC_4x3x3_OES"/>
+         <enum value="0x93C2" name="GL_COMPRESSED_RGBA_ASTC_4x4x3_OES"/>
+@@ -7878,7 +8306,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x93C7" name="GL_COMPRESSED_RGBA_ASTC_6x5x5_OES"/>
+         <enum value="0x93C8" name="GL_COMPRESSED_RGBA_ASTC_6x6x5_OES"/>
+         <enum value="0x93C9" name="GL_COMPRESSED_RGBA_ASTC_6x6x6_OES"/>
+-            <unused start="0x93CA" end="0x93CF"/>
++            <unused start="0x93CA" end="0x93CF" vendor="OES"/>
+         <enum value="0x93D0" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"/>
+         <enum value="0x93D1" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"/>
+         <enum value="0x93D2" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"/>
+@@ -7893,7 +8321,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x93DB" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"/>
+         <enum value="0x93DC" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"/>
+         <enum value="0x93DD" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"/>
+-            <unused start="0x93DE" end="0x93DF"/>
++            <unused start="0x93DE" end="0x93DF" vendor="OES"/>
+         <enum value="0x93E0" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES"/>
+         <enum value="0x93E1" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES"/>
+         <enum value="0x93E2" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES"/>
+@@ -7904,11 +8332,13 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x93E7" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES"/>
+         <enum value="0x93E8" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES"/>
+         <enum value="0x93E9" name="GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES"/>
+-            <unused start="0x93EA" end="0x93EF"/>
++            <unused start="0x93EA" end="0x93EF" vendor="OES"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x93F0" end="0x94EF" vendor="APPLE" comment="Khronos bug 10233">
+-            <unused start="0x93F0" end="0x94EF"/>
++        <enum value="0x93F0" name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG"/>
++        <enum value="0x93F1" name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG"/>
++            <unused start="0x93F2" end="0x94EF" vendor="APPLE"/>
+     </enums>
+ 
+     <enums namespace="GL" start="0x94F0" end="0x950F" vendor="INTEL" comment="Khronos bug 11345">
+@@ -7918,7 +8348,7 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x94F3" name="GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL"/>
+         <enum value="0x94F4" name="GL_PERFQUERY_COUNTER_RAW_INTEL"/>
+         <enum value="0x94F5" name="GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL"/>
+-            <unused start="0x94F6" end="0x94F7"/>
++            <unused start="0x94F6" end="0x94F7" vendor="INTEL"/>
+         <enum value="0x94F8" name="GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL"/>
+         <enum value="0x94F9" name="GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL"/>
+         <enum value="0x94FA" name="GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL"/>
+@@ -7928,7 +8358,22 @@ typedef unsigned int GLhandleARB;
+         <enum value="0x94FE" name="GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL"/>
+         <enum value="0x94FF" name="GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL"/>
+         <enum value="0x9500" name="GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL"/>
+-            <unused start="0x9501" end="0x950F"/>
++            <unused start="0x9501" end="0x950F" vendor="INTEL"/>
++    </enums>
++
++    <enums namespace="GL" start="0x9510" end="0x952F" vendor="Broadcom" comment="Khronos bug 12203">
++            <unused start="0x9510" end="0x952F" vendor="Broadcom"/>
++    </enums>
++
++    <enums namespace="GL" start="0x9530" end="0x962F" vendor="NV" comment="Khronos bug 12977">
++            <unused start="0x9530" end="0x962F" vendor="NV"/>
++    </enums>
++
++    <enums namespace="GL" start="0x9630" end="0x963F" vendor="Oculus" comment="Email from Cass Everitt">
++        <enum value="0x9630" name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR"/>
++        <enum value="0x9631" name="GL_MAX_VIEWS_OVR"/>
++        <enum value="0x9632" name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR"/>
++            <unused start="0x9633" end="0x963F" vendor="Oculus"/>
+     </enums>
+ 
+ <!-- Enums reservable for future use. To reserve a new range, allocate one
+@@ -7940,8 +8385,8 @@ typedef unsigned int GLhandleARB;
+      file) File requests in the Khronos Bugzilla, OpenGL project, Registry
+      component. -->
+ 
+-    <enums namespace="GL" start="0x9510" end="99999" vendor="ARB" comment="RESERVED FOR FUTURE ALLOCATIONS BY KHRONOS">
+-        <unused start="0x9510" end="99999"/>
++    <enums namespace="GL" start="0x9640" end="99999" vendor="ARB" comment="RESERVED FOR FUTURE ALLOCATIONS BY KHRONOS">
++        <unused start="0x9640" end="99999" comment="RESERVED"/>
+     </enums>
+ 
+ <!-- Historical large block allocations, all unused except (in older days) by IBM -->
+@@ -8505,6 +8950,11 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="4117"/>
+         </command>
+         <command>
++            <proto>void <name>glBindTextureUnit</name></proto>
++            <param><ptype>GLuint</ptype> <name>unit</name></param>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++        </command>
++        <command>
+             <proto><ptype>GLuint</ptype> <name>glBindTextureUnitParameterEXT</name></proto>
+             <param group="TextureUnit"><ptype>GLenum</ptype> <name>unit</name></param>
+             <param group="VertexShaderTextureUnitParameter"><ptype>GLenum</ptype> <name>value</name></param>
+@@ -8657,10 +9107,10 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(width,height)">const <ptype>GLubyte</ptype> *<name>bitmap</name></param>
+         </command>
+         <command>
+-            <proto>void <name>glBlendBarrierNV</name></proto>
++            <proto>void <name>glBlendBarrierKHR</name></proto>
+         </command>
+         <command>
+-            <proto>void <name>glBlendBarrierKHR</name></proto>
++            <proto>void <name>glBlendBarrierNV</name></proto>
+         </command>
+         <command>
+             <proto>void <name>glBlendColor</name></proto>
+@@ -8746,6 +9196,20 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBlendEquationSeparatei"/>
+         </command>
+         <command>
++            <proto>void <name>glBlendEquationSeparateiEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>modeRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>modeAlpha</name></param>
++            <alias name="glBlendEquationSeparatei"/>
++        </command>
++        <command>
++            <proto>void <name>glBlendEquationSeparateiOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>modeRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>modeAlpha</name></param>
++            <alias name="glBlendEquationSeparatei"/>
++        </command>
++        <command>
+             <proto>void <name>glBlendEquationi</name></proto>
+             <param><ptype>GLuint</ptype> <name>buf</name></param>
+             <param><ptype>GLenum</ptype> <name>mode</name></param>
+@@ -8757,6 +9221,18 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBlendEquationi"/>
+         </command>
+         <command>
++            <proto>void <name>glBlendEquationiEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <alias name="glBlendEquationi"/>
++        </command>
++        <command>
++            <proto>void <name>glBlendEquationiOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <alias name="glBlendEquationi"/>
++        </command>
++        <command>
+             <proto>void <name>glBlendFunc</name></proto>
+             <param group="BlendingFactorSrc"><ptype>GLenum</ptype> <name>sfactor</name></param>
+             <param group="BlendingFactorDest"><ptype>GLenum</ptype> <name>dfactor</name></param>
+@@ -8829,6 +9305,24 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBlendFuncSeparatei"/>
+         </command>
+         <command>
++            <proto>void <name>glBlendFuncSeparateiEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>srcRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>dstRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>srcAlpha</name></param>
++            <param><ptype>GLenum</ptype> <name>dstAlpha</name></param>
++            <alias name="glBlendFuncSeparatei"/>
++        </command>
++        <command>
++            <proto>void <name>glBlendFuncSeparateiOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>srcRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>dstRGB</name></param>
++            <param><ptype>GLenum</ptype> <name>srcAlpha</name></param>
++            <param><ptype>GLenum</ptype> <name>dstAlpha</name></param>
++            <alias name="glBlendFuncSeparatei"/>
++        </command>
++        <command>
+             <proto>void <name>glBlendFunci</name></proto>
+             <param><ptype>GLuint</ptype> <name>buf</name></param>
+             <param><ptype>GLenum</ptype> <name>src</name></param>
+@@ -8842,6 +9336,20 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBlendFunci"/>
+         </command>
+         <command>
++            <proto>void <name>glBlendFunciEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>src</name></param>
++            <param><ptype>GLenum</ptype> <name>dst</name></param>
++            <alias name="glBlendFunci"/>
++        </command>
++        <command>
++            <proto>void <name>glBlendFunciOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>buf</name></param>
++            <param><ptype>GLenum</ptype> <name>src</name></param>
++            <param><ptype>GLenum</ptype> <name>dst</name></param>
++            <alias name="glBlendFunci"/>
++        </command>
++        <command>
+             <proto>void <name>glBlendParameteriNV</name></proto>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+             <param><ptype>GLint</ptype> <name>value</name></param>
+@@ -8903,6 +9411,21 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBlitFramebuffer"/>
+         </command>
+         <command>
++            <proto>void <name>glBlitNamedFramebuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>readFramebuffer</name></param>
++            <param><ptype>GLuint</ptype> <name>drawFramebuffer</name></param>
++            <param><ptype>GLint</ptype> <name>srcX0</name></param>
++            <param><ptype>GLint</ptype> <name>srcY0</name></param>
++            <param><ptype>GLint</ptype> <name>srcX1</name></param>
++            <param><ptype>GLint</ptype> <name>srcY1</name></param>
++            <param><ptype>GLint</ptype> <name>dstX0</name></param>
++            <param><ptype>GLint</ptype> <name>dstY0</name></param>
++            <param><ptype>GLint</ptype> <name>dstX1</name></param>
++            <param><ptype>GLint</ptype> <name>dstY1</name></param>
++            <param><ptype>GLbitfield</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>filter</name></param>
++        </command>
++        <command>
+             <proto>void <name>glBufferAddressRangeNV</name></proto>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+@@ -8925,6 +9448,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBufferData"/>
+         </command>
+         <command>
++            <proto>void <name>glBufferPageCommitmentARB</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++        </command>
++        <command>
+             <proto>void <name>glBufferParameteriAPPLE</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -8938,6 +9468,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLbitfield</ptype> <name>flags</name></param>
+         </command>
+         <command>
++            <proto>void <name>glBufferStorageEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param len="size">const void *<name>data</name></param>
++            <param><ptype>GLbitfield</ptype> <name>flags</name></param>
++            <alias name="glBufferStorage"/>
++        </command>
++        <command>
+             <proto>void <name>glBufferSubData</name></proto>
+             <param group="BufferTargetARB"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="BufferOffset"><ptype>GLintptr</ptype> <name>offset</name></param>
+@@ -8953,6 +9491,10 @@ typedef unsigned int GLhandleARB;
+             <alias name="glBufferSubData"/>
+         </command>
+         <command>
++            <proto>void <name>glCallCommandListNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>list</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCallList</name></proto>
+             <param group="List"><ptype>GLuint</ptype> <name>list</name></param>
+             <glx type="render" opcode="1"/>
+@@ -8980,6 +9522,11 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLenum</ptype> <name>glCheckNamedFramebufferStatus</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++        </command>
++        <command>
+             <proto group="FramebufferStatus"><ptype>GLenum</ptype> <name>glCheckNamedFramebufferStatusEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -9132,6 +9679,14 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="129"/>
+         </command>
+         <command>
++            <proto>void <name>glClearNamedBufferData</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glClearNamedBufferDataEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLenum</ptype> <name>internalformat</name></param>
+@@ -9140,6 +9695,16 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(format,type)">const void *<name>data</name></param>
+         </command>
+         <command>
++            <proto>void <name>glClearNamedBufferSubData</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glClearNamedBufferSubDataEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLenum</ptype> <name>internalformat</name></param>
+@@ -9150,6 +9715,34 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(format,type)">const void *<name>data</name></param>
+         </command>
+         <command>
++            <proto>void <name>glClearNamedFramebufferfi</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>buffer</name></param>
++            <param>const <ptype>GLfloat</ptype> <name>depth</name></param>
++            <param><ptype>GLint</ptype> <name>stencil</name></param>
++        </command>
++        <command>
++            <proto>void <name>glClearNamedFramebufferfv</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>buffer</name></param>
++            <param><ptype>GLint</ptype> <name>drawbuffer</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>value</name></param>
++        </command>
++        <command>
++            <proto>void <name>glClearNamedFramebufferiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>buffer</name></param>
++            <param><ptype>GLint</ptype> <name>drawbuffer</name></param>
++            <param>const <ptype>GLint</ptype> *<name>value</name></param>
++        </command>
++        <command>
++            <proto>void <name>glClearNamedFramebufferuiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>buffer</name></param>
++            <param><ptype>GLint</ptype> <name>drawbuffer</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>value</name></param>
++        </command>
++        <command>
+             <proto>void <name>glClearStencil</name></proto>
+             <param group="StencilValue"><ptype>GLint</ptype> <name>s</name></param>
+             <glx type="render" opcode="131"/>
+@@ -9207,6 +9800,11 @@ typedef unsigned int GLhandleARB;
+             <alias name="glClientWaitSync"/>
+         </command>
+         <command>
++            <proto>void <name>glClipControl</name></proto>
++            <param><ptype>GLenum</ptype> <name>origin</name></param>
++            <param><ptype>GLenum</ptype> <name>depth</name></param>
++        </command>
++        <command>
+             <proto>void <name>glClipPlane</name></proto>
+             <param group="ClipPlaneName"><ptype>GLenum</ptype> <name>plane</name></param>
+             <param len="4">const <ptype>GLdouble</ptype> *<name>equation</name></param>
+@@ -9629,6 +10227,24 @@ typedef unsigned int GLhandleARB;
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>a</name></param>
+         </command>
+         <command>
++            <proto>void <name>glColorMaskiEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>r</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>g</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>b</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>a</name></param>
++            <alias name="glColorMaski"/>
++        </command>
++        <command>
++            <proto>void <name>glColorMaskiOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>r</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>g</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>b</name></param>
++            <param group="Boolean"><ptype>GLboolean</ptype> <name>a</name></param>
++            <alias name="glColorMaski"/>
++        </command>
++        <command>
+             <proto>void <name>glColorMaterial</name></proto>
+             <param group="MaterialFace"><ptype>GLenum</ptype> <name>face</name></param>
+             <param group="ColorMaterialParameter"><ptype>GLenum</ptype> <name>mode</name></param>
+@@ -9821,6 +10437,15 @@ typedef unsigned int GLhandleARB;
+             <param group="CheckedFloat32" len="COMPSIZE(pname)">const <ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCommandListSegmentsNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>list</name></param>
++            <param><ptype>GLuint</ptype> <name>segments</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCompileCommandListNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>list</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCompileShader</name></proto>
+             <param><ptype>GLuint</ptype> <name>shader</name></param>
+         </command>
+@@ -10138,6 +10763,16 @@ typedef unsigned int GLhandleARB;
+             <param len="imageSize">const void *<name>bits</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCompressedTextureSubImage1D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLsizei</ptype> <name>imageSize</name></param>
++            <param>const void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCompressedTextureSubImage1DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10149,6 +10784,18 @@ typedef unsigned int GLhandleARB;
+             <param len="imageSize">const void *<name>bits</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCompressedTextureSubImage2D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLsizei</ptype> <name>imageSize</name></param>
++            <param>const void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCompressedTextureSubImage2DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10162,6 +10809,20 @@ typedef unsigned int GLhandleARB;
+             <param len="imageSize">const void *<name>bits</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCompressedTextureSubImage3D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLsizei</ptype> <name>imageSize</name></param>
++            <param>const void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCompressedTextureSubImage3DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10407,6 +11068,44 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>srcDepth</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCopyImageSubDataEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>srcName</name></param>
++            <param><ptype>GLenum</ptype> <name>srcTarget</name></param>
++            <param><ptype>GLint</ptype> <name>srcLevel</name></param>
++            <param><ptype>GLint</ptype> <name>srcX</name></param>
++            <param><ptype>GLint</ptype> <name>srcY</name></param>
++            <param><ptype>GLint</ptype> <name>srcZ</name></param>
++            <param><ptype>GLuint</ptype> <name>dstName</name></param>
++            <param><ptype>GLenum</ptype> <name>dstTarget</name></param>
++            <param><ptype>GLint</ptype> <name>dstLevel</name></param>
++            <param><ptype>GLint</ptype> <name>dstX</name></param>
++            <param><ptype>GLint</ptype> <name>dstY</name></param>
++            <param><ptype>GLint</ptype> <name>dstZ</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcWidth</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcHeight</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcDepth</name></param>
++            <alias name="glCopyImageSubData"/>
++        </command>
++        <command>
++            <proto>void <name>glCopyImageSubDataOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>srcName</name></param>
++            <param><ptype>GLenum</ptype> <name>srcTarget</name></param>
++            <param><ptype>GLint</ptype> <name>srcLevel</name></param>
++            <param><ptype>GLint</ptype> <name>srcX</name></param>
++            <param><ptype>GLint</ptype> <name>srcY</name></param>
++            <param><ptype>GLint</ptype> <name>srcZ</name></param>
++            <param><ptype>GLuint</ptype> <name>dstName</name></param>
++            <param><ptype>GLenum</ptype> <name>dstTarget</name></param>
++            <param><ptype>GLint</ptype> <name>dstLevel</name></param>
++            <param><ptype>GLint</ptype> <name>dstX</name></param>
++            <param><ptype>GLint</ptype> <name>dstY</name></param>
++            <param><ptype>GLint</ptype> <name>dstZ</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcWidth</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcHeight</name></param>
++            <param><ptype>GLsizei</ptype> <name>srcDepth</name></param>
++            <alias name="glCopyImageSubData"/>
++        </command>
++        <command>
+             <proto>void <name>glCopyImageSubDataNV</name></proto>
+             <param><ptype>GLuint</ptype> <name>srcName</name></param>
+             <param><ptype>GLenum</ptype> <name>srcTarget</name></param>
+@@ -10484,6 +11183,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCopyNamedBufferSubData</name></proto>
++            <param><ptype>GLuint</ptype> <name>readBuffer</name></param>
++            <param><ptype>GLuint</ptype> <name>writeBuffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>readOffset</name></param>
++            <param><ptype>GLintptr</ptype> <name>writeOffset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCopyPathNV</name></proto>
+             <param group="Path"><ptype>GLuint</ptype> <name>resultPath</name></param>
+             <param group="Path"><ptype>GLuint</ptype> <name>srcPath</name></param>
+@@ -10662,6 +11369,15 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>sourceLevelCount</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCopyTextureSubImage1D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>x</name></param>
++            <param><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCopyTextureSubImage1DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10672,6 +11388,17 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>width</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCopyTextureSubImage2D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>x</name></param>
++            <param><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCopyTextureSubImage2DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10684,6 +11411,18 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCopyTextureSubImage3D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLint</ptype> <name>x</name></param>
++            <param><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCopyTextureSubImage3DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -10735,6 +11474,26 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLenum</ptype> <name>operation</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCreateBuffers</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>buffers</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateCommandListsNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>lists</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateStatesNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>states</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateFramebuffers</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>framebuffers</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCreatePerfQueryINTEL</name></proto>
+             <param><ptype>GLuint</ptype> <name>queryId</name></param>
+             <param><ptype>GLuint</ptype> *<name>queryHandle</name></param>
+@@ -10747,6 +11506,27 @@ typedef unsigned int GLhandleARB;
+             <alias name="glCreateProgram"/>
+         </command>
+         <command>
++            <proto>void <name>glCreateProgramPipelines</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>pipelines</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateQueries</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>ids</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateRenderbuffers</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>renderbuffers</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateSamplers</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>samplers</name></param>
++        </command>
++        <command>
+             <proto><ptype>GLuint</ptype> <name>glCreateShader</name></proto>
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+         </command>
+@@ -10779,6 +11559,22 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLbitfield</ptype> <name>flags</name></param>
+         </command>
+         <command>
++            <proto>void <name>glCreateTextures</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>textures</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateTransformFeedbacks</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>ids</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCreateVertexArrays</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param><ptype>GLuint</ptype> *<name>arrays</name></param>
++        </command>
++        <command>
+             <proto>void <name>glCullFace</name></proto>
+             <param group="CullFaceMode"><ptype>GLenum</ptype> <name>mode</name></param>
+             <glx type="render" opcode="79"/>
+@@ -10956,6 +11752,16 @@ typedef unsigned int GLhandleARB;
+             <alias name="glDeleteBuffers"/>
+         </command>
+         <command>
++            <proto>void <name>glDeleteCommandListsNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>lists</name></param>
++        </command>
++        <command>
++            <proto>void <name>glDeleteStatesNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>states</name></param>
++        </command>
++        <command>
+             <proto>void <name>glDeleteFencesAPPLE</name></proto>
+             <param><ptype>GLsizei</ptype> <name>n</name></param>
+             <param group="FenceNV" len="n">const <ptype>GLuint</ptype> *<name>fences</name></param>
+@@ -11190,12 +11996,24 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(count)">const <ptype>GLdouble</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDepthRangeArrayfvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>first</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
+             <proto>void <name>glDepthRangeIndexed</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param><ptype>GLdouble</ptype> <name>n</name></param>
+             <param><ptype>GLdouble</ptype> <name>f</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDepthRangeIndexedfNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLfloat</ptype> <name>n</name></param>
++            <param><ptype>GLfloat</ptype> <name>f</name></param>
++        </command>
++        <command>
+             <proto>void <name>glDepthRangedNV</name></proto>
+             <param><ptype>GLdouble</ptype> <name>zNear</name></param>
+             <param><ptype>GLdouble</ptype> <name>zFar</name></param>
+@@ -11275,6 +12093,11 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>id</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDisableVertexArrayAttrib</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++        </command>
++        <command>
+             <proto>void <name>glDisableVertexArrayAttribEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+@@ -11304,6 +12127,24 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDisableiEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glDisablei"/>
++        </command>
++        <command>
++            <proto>void <name>glDisableiNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glDisablei"/>
++        </command>
++        <command>
++            <proto>void <name>glDisableiOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glDisablei"/>
++        </command>
++        <command>
+             <proto>void <name>glDiscardFramebufferEXT</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLsizei</ptype> <name>numAttachments</name></param>
+@@ -11379,6 +12220,15 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
+             <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
+         </command>
++        <command>
++            <proto>void <name>glDrawArraysInstancedBaseInstanceEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLint</ptype> <name>first</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
++            <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
++            <alias name="glDrawArraysInstancedBaseInstance"/>
++        </command>
+         <command comment="primcount should be renamed to instanceCount for OpenGL ES">
+             <proto>void <name>glDrawArraysInstancedEXT</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+@@ -11397,7 +12247,7 @@ typedef unsigned int GLhandleARB;
+         </command>
+         <command>
+             <proto>void <name>glDrawBuffer</name></proto>
+-            <param group="DrawBufferMode"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param group="DrawBufferMode"><ptype>GLenum</ptype> <name>buf</name></param>
+             <glx type="render" opcode="126"/>
+         </command>
+         <command>
+@@ -11437,6 +12287,38 @@ typedef unsigned int GLhandleARB;
+             <param len="n">const <ptype>GLenum</ptype> *<name>bufs</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDrawCommandsNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>primitiveMode</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param>const <ptype>GLintptr</ptype> *<name>indirects</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>sizes</name></param>
++            <param><ptype>GLuint</ptype> <name>count</name></param>
++        </command>
++        <command>
++            <proto>void <name>glDrawCommandsAddressNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>primitiveMode</name></param>
++            <param>const <ptype>GLuint64</ptype> *<name>indirects</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>sizes</name></param>
++            <param><ptype>GLuint</ptype> <name>count</name></param>
++        </command>
++        <command>
++            <proto>void <name>glDrawCommandsStatesNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param>const <ptype>GLintptr</ptype> *<name>indirects</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>sizes</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>states</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>fbos</name></param>
++            <param><ptype>GLuint</ptype> <name>count</name></param>
++        </command>
++        <command>
++            <proto>void <name>glDrawCommandsStatesAddressNV</name></proto>
++            <param>const <ptype>GLuint64</ptype> *<name>indirects</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>sizes</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>states</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>fbos</name></param>
++            <param><ptype>GLuint</ptype> <name>count</name></param>
++        </command>
++        <command>
+             <proto>void <name>glDrawElementArrayAPPLE</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLint</ptype> <name>first</name></param>
+@@ -11463,6 +12345,24 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>basevertex</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDrawElementsBaseVertexEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawElementsBaseVertex"/>
++        </command>
++        <command>
++            <proto>void <name>glDrawElementsBaseVertexOES</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawElementsBaseVertex"/>
++        </command>
++        <command>
+             <proto>void <name>glDrawElementsIndirect</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+@@ -11504,6 +12404,16 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDrawElementsInstancedBaseInstanceEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="count">const void *<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
++            <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
++            <alias name="glDrawElementsInstancedBaseInstance"/>
++        </command>
++        <command>
+             <proto>void <name>glDrawElementsInstancedBaseVertex</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+@@ -11513,6 +12423,26 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>basevertex</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDrawElementsInstancedBaseVertexEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawElementsInstancedBaseVertex"/>
++        </command>
++        <command>
++            <proto>void <name>glDrawElementsInstancedBaseVertexOES</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawElementsInstancedBaseVertex"/>
++        </command>
++        <command>
+             <proto>void <name>glDrawElementsInstancedBaseVertexBaseInstance</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+@@ -11522,6 +12452,17 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>basevertex</name></param>
+             <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
+         </command>
++        <command>
++            <proto>void <name>glDrawElementsInstancedBaseVertexBaseInstanceEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="count">const void *<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>instancecount</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <param><ptype>GLuint</ptype> <name>baseinstance</name></param>
++            <alias name="glDrawElementsInstancedBaseVertexBaseInstance"/>
++        </command>
+         <command comment="primcount should be renamed to instanceCount for OpenGL ES">
+             <proto>void <name>glDrawElementsInstancedEXT</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+@@ -11592,6 +12533,28 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>basevertex</name></param>
+         </command>
+         <command>
++            <proto>void <name>glDrawRangeElementsBaseVertexEXT</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLuint</ptype> <name>start</name></param>
++            <param><ptype>GLuint</ptype> <name>end</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawRangeElementsBaseVertex"/>
++        </command>
++        <command>
++            <proto>void <name>glDrawRangeElementsBaseVertexOES</name></proto>
++            <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLuint</ptype> <name>start</name></param>
++            <param><ptype>GLuint</ptype> <name>end</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(count,type)">const void *<name>indices</name></param>
++            <param><ptype>GLint</ptype> <name>basevertex</name></param>
++            <alias name="glDrawRangeElementsBaseVertex"/>
++        </command>
++        <command>
+             <proto>void <name>glDrawRangeElementsEXT</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLuint</ptype> <name>start</name></param>
+@@ -11778,6 +12741,11 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>id</name></param>
+         </command>
+         <command>
++            <proto>void <name>glEnableVertexArrayAttrib</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++        </command>
++        <command>
+             <proto>void <name>glEnableVertexArrayAttribEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+@@ -11807,6 +12775,24 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+         </command>
+         <command>
++            <proto>void <name>glEnableiEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glEnablei"/>
++        </command>
++        <command>
++            <proto>void <name>glEnableiNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glEnablei"/>
++        </command>
++        <command>
++            <proto>void <name>glEnableiOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glEnablei"/>
++        </command>
++        <command>
+             <proto>void <name>glEnd</name></proto>
+             <glx type="render" opcode="23"/>
+         </command>
+@@ -12147,6 +13133,12 @@ typedef unsigned int GLhandleARB;
+             <alias name="glFlushMappedBufferRange"/>
+         </command>
+         <command>
++            <proto>void <name>glFlushMappedNamedBufferRange</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>length</name></param>
++        </command>
++        <command>
+             <proto>void <name>glFlushMappedNamedBufferRangeEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLintptr</ptype> <name>offset</name></param>
+@@ -12544,7 +13536,15 @@ typedef unsigned int GLhandleARB;
+             <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="CheckedInt32"><ptype>GLint</ptype> <name>level</name></param>
+-            <alias name="glFramebufferTextureARB"/>
++            <alias name="glFramebufferTexture"/>
++        </command>
++        <command>
++            <proto>void <name>glFramebufferTextureOES</name></proto>
++            <param group="FramebufferTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
++            <param group="CheckedInt32"><ptype>GLint</ptype> <name>level</name></param>
++            <alias name="glFramebufferTexture"/>
+         </command>
+         <command>
+             <proto>void <name>glFramebufferTextureFaceARB</name></proto>
+@@ -12591,6 +13591,15 @@ typedef unsigned int GLhandleARB;
+             <alias name="glFramebufferTextureLayer"/>
+         </command>
+         <command>
++            <proto>void <name>glFramebufferTextureMultiviewOVR</name></proto>
++            <param group="FramebufferTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
++            <param group="CheckedInt32"><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>baseViewIndex</name></param>
++            <param><ptype>GLsizei</ptype> <name>numViews</name></param>
++        </command>
++        <command>
+             <proto>void <name>glFreeObjectBufferATI</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+         </command>
+@@ -12855,6 +13864,10 @@ typedef unsigned int GLhandleARB;
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGenerateTextureMipmap</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGenerateTextureMipmapEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -12947,7 +13960,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLuint</ptype> <name>uniformBlockIndex</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+-            <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(program,uniformBlockIndex,pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetActiveUniformName</name></proto>
+@@ -12961,9 +13974,9 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glGetActiveUniformsiv</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLsizei</ptype> <name>uniformCount</name></param>
+-            <param len="COMPSIZE(uniformCount)">const <ptype>GLuint</ptype> *<name>uniformIndices</name></param>
++            <param len="uniformCount">const <ptype>GLuint</ptype> *<name>uniformIndices</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+-            <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(uniformCount,pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetActiveVaryingNV</name></proto>
+@@ -13226,6 +14239,11 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLuint</ptype> <name>glGetCommandHeaderNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>tokenID</name></param>
++            <param><ptype>GLuint</ptype> <name>size</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetCompressedMultiTexImageEXT</name></proto>
+             <param group="TextureUnit"><ptype>GLenum</ptype> <name>texunit</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -13249,6 +14267,13 @@ typedef unsigned int GLhandleARB;
+             <glx type="single" opcode="160"/>
+         </command>
+         <command>
++            <proto>void <name>glGetCompressedTextureImage</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetCompressedTextureImageEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -13256,6 +14281,19 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(target,lod)">void *<name>img</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetCompressedTextureSubImage</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetConvolutionFilter</name></proto>
+             <param group="ConvolutionTarget"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="PixelFormat"><ptype>GLenum</ptype> <name>format</name></param>
+@@ -13374,7 +14412,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glGetDoublei_vEXT</name></proto>
+             <param group="TypeEnum"><ptype>GLenum</ptype> <name>pname</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+-            <param len="COMPSIZE(target)"><ptype>GLdouble</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLdouble</ptype> *<name>params</name></param>
+             <alias name="glGetDoublei_v"/>
+         </command>
+         <command>
+@@ -13449,10 +14487,17 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(target)"><ptype>GLfloat</ptype> *<name>data</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetFloati_vNV</name></proto>
++            <param group="TypeEnum"><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param len="COMPSIZE(target)"><ptype>GLfloat</ptype> *<name>data</name></param>
++            <alias name="glGetFloati_v"/>
++        </command>
++        <command>
+             <proto>void <name>glGetFloati_vEXT</name></proto>
+             <param group="TypeEnum"><ptype>GLenum</ptype> <name>pname</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+-            <param len="COMPSIZE(target)"><ptype>GLfloat</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLfloat</ptype> *<name>params</name></param>
+             <alias name="glGetFloati_v"/>
+         </command>
+         <command>
+@@ -13542,12 +14587,19 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLenum</ptype> <name>glGetGraphicsResetStatus</name></proto>
++        </command>
++        <command>
+             <proto><ptype>GLenum</ptype> <name>glGetGraphicsResetStatusARB</name></proto>
+         </command>
+         <command>
+             <proto><ptype>GLenum</ptype> <name>glGetGraphicsResetStatusEXT</name></proto>
+         </command>
+         <command>
++            <proto><ptype>GLenum</ptype> <name>glGetGraphicsResetStatusKHR</name></proto>
++            <alias name="glGetGraphicsResetStatus"/>
++        </command>
++        <command>
+             <proto group="handleARB"><ptype>GLhandleARB</ptype> <name>glGetHandleARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+         </command>
+@@ -13713,6 +14765,15 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetInternalformatSampleivNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>samples</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param len="bufSize"><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetInvariantBooleanvEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>id</name></param>
+             <param group="GetVariantValueEXT"><ptype>GLenum</ptype> <name>value</name></param>
+@@ -14036,6 +15097,18 @@ typedef unsigned int GLhandleARB;
+             <alias name="glGetMultisamplefv"/>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedBufferParameteri64v</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint64</ptype> *<name>params</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetNamedBufferParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedBufferParameterivEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param group="VertexBufferObjectParameter"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -14048,12 +15121,25 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLuint64EXT</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedBufferPointerv</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param>void **<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedBufferPointervEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param group="VertexBufferObjectParameter"><ptype>GLenum</ptype> <name>pname</name></param>
+             <param len="1">void **<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedBufferSubData</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param>void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedBufferSubDataEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLintptr</ptype> <name>offset</name></param>
+@@ -14061,6 +15147,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(size)">void *<name>data</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedFramebufferAttachmentParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedFramebufferAttachmentParameterivEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
+@@ -14068,6 +15161,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedFramebufferParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedFramebufferParameterivEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="GetFramebufferParameter"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -14116,6 +15215,12 @@ typedef unsigned int GLhandleARB;
+             <param len="1"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetNamedRenderbufferParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>renderbuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetNamedRenderbufferParameterivEXT</name></proto>
+             <param group="Renderbuffer"><ptype>GLuint</ptype> <name>renderbuffer</name></param>
+             <param group="RenderbufferParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -14645,6 +15750,17 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLchar</ptype> *<name>name</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetProgramResourcefvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLenum</ptype> <name>programInterface</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLsizei</ptype> <name>propCount</name></param>
++            <param>const <ptype>GLenum</ptype> *<name>props</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLsizei</ptype> *<name>length</name></param>
++            <param><ptype>GLfloat</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetProgramResourceiv</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLenum</ptype> <name>programInterface</name></param>
+@@ -14702,6 +15818,34 @@ typedef unsigned int GLhandleARB;
+             <glx type="vendor" opcode="1298"/>
+         </command>
+         <command>
++            <proto>void <name>glGetQueryBufferObjecti64v</name></proto>
++            <param><ptype>GLuint</ptype> <name>id</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetQueryBufferObjectiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>id</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetQueryBufferObjectui64v</name></proto>
++            <param><ptype>GLuint</ptype> <name>id</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetQueryBufferObjectuiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>id</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetQueryIndexediv</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+@@ -14825,12 +15969,40 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetSamplerParameterIivEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
++            <alias name="glGetSamplerParameterIiv"/>
++        </command>
++        <command>
++            <proto>void <name>glGetSamplerParameterIivOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
++            <alias name="glGetSamplerParameterIiv"/>
++        </command>
++        <command>
+             <proto>void <name>glGetSamplerParameterIuiv</name></proto>
+             <param><ptype>GLuint</ptype> <name>sampler</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+             <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetSamplerParameterIuivEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
++            <alias name="glGetSamplerParameterIuiv"/>
++        </command>
++        <command>
++            <proto>void <name>glGetSamplerParameterIuivOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
++            <alias name="glGetSamplerParameterIuiv"/>
++        </command>
++        <command>
+             <proto>void <name>glGetSamplerParameterfv</name></proto>
+             <param><ptype>GLuint</ptype> <name>sampler</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -14907,6 +16079,10 @@ typedef unsigned int GLhandleARB;
+             <glx type="vendor" opcode="4097"/>
+         </command>
+         <command>
++            <proto><ptype>GLushort</ptype> <name>glGetStageIndexNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>shadertype</name></param>
++        </command>
++        <command>
+             <proto group="String">const <ptype>GLubyte</ptype> *<name>glGetString</name></proto>
+             <param group="StringName"><ptype>GLenum</ptype> <name>name</name></param>
+             <glx type="single" opcode="129"/>
+@@ -15075,6 +16251,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glGetTexParameterIiv"/>
+         </command>
+         <command>
++            <proto>void <name>glGetTexParameterIivOES</name></proto>
++            <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="GetTextureParameter"><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
++            <alias name="glGetTexParameterIiv"/>
++        </command>
++        <command>
+             <proto>void <name>glGetTexParameterIuiv</name></proto>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="GetTextureParameter"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -15089,6 +16272,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glGetTexParameterIuiv"/>
+         </command>
+         <command>
++            <proto>void <name>glGetTexParameterIuivOES</name></proto>
++            <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="GetTextureParameter"><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
++            <alias name="glGetTexParameterIuiv"/>
++        </command>
++        <command>
+             <proto>void <name>glGetTexParameterPointervAPPLE</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -15129,6 +16319,15 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>texture</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureImage</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureImageEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15138,6 +16337,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(target,level,format,type)">void *<name>pixels</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureLevelParameterfv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLfloat</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureLevelParameterfvEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15146,6 +16352,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureLevelParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureLevelParameterivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15154,6 +16367,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureParameterIiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureParameterIivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15161,6 +16380,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureParameterIuiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLuint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureParameterIuivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15168,6 +16393,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureParameterfv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLfloat</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureParameterfvEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15175,6 +16406,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTextureParameterivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -15192,6 +16429,21 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>sampler</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTextureSubImage</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTrackMatrixivNV</name></proto>
+             <param group="VertexAttribEnumNV"><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLuint</ptype> <name>address</name></param>
+@@ -15227,6 +16479,26 @@ typedef unsigned int GLhandleARB;
+             <param len="1"><ptype>GLint</ptype> *<name>location</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetTransformFeedbacki64_v</name></proto>
++            <param><ptype>GLuint</ptype> <name>xfb</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLint64</ptype> *<name>param</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetTransformFeedbacki_v</name></proto>
++            <param><ptype>GLuint</ptype> <name>xfb</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetTransformFeedbackiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>xfb</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetTranslatedShaderSourceANGLE</name></proto>
+             <param><ptype>GLuint</ptype> <name>shader</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufsize</name></param>
+@@ -15276,38 +16548,38 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glGetUniformdv</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLdouble</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(program,location)"><ptype>GLdouble</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetUniformfv</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLfloat</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(program,location)"><ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetUniformfvARB</name></proto>
+             <param group="handleARB"><ptype>GLhandleARB</ptype> <name>programObj</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLfloat</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(programObj,location)"><ptype>GLfloat</ptype> *<name>params</name></param>
+             <alias name="glGetUniformfv"/>
+         </command>
+         <command>
+             <proto>void <name>glGetUniformi64vNV</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLint64EXT</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(program,location)"><ptype>GLint64EXT</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetUniformiv</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLint</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(program,location)"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glGetUniformivARB</name></proto>
+             <param group="handleARB"><ptype>GLhandleARB</ptype> <name>programObj</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+-            <param len="COMPSIZE(location)"><ptype>GLint</ptype> *<name>params</name></param>
++            <param len="COMPSIZE(programObj,location)"><ptype>GLint</ptype> *<name>params</name></param>
+             <alias name="glGetUniformiv"/>
+         </command>
+         <command>
+@@ -15371,6 +16643,20 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(name)">const <ptype>GLchar</ptype> *<name>name</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetVertexArrayIndexed64iv</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint64</ptype> *<name>param</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetVertexArrayIndexediv</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetVertexArrayIntegeri_vEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+@@ -15397,6 +16683,12 @@ typedef unsigned int GLhandleARB;
+             <param len="1">void **<name>param</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetVertexArrayiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetVertexAttribArrayObjectfvATI</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param group="ArrayObjectPNameATI"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -15607,6 +16899,14 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)"><ptype>GLuint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnColorTable</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>table</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnColorTableARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>format</name></param>
+@@ -15615,6 +16915,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>table</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnCompressedTexImage</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLint</ptype> <name>lod</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnCompressedTexImageARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLint</ptype> <name>lod</name></param>
+@@ -15622,6 +16929,14 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>img</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnConvolutionFilter</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>image</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnConvolutionFilterARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>format</name></param>
+@@ -15630,6 +16945,15 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>image</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnHistogram</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLboolean</ptype> <name>reset</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>values</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnHistogramARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>reset</name></param>
+@@ -15639,6 +16963,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>values</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnMapdv</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>query</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLdouble</ptype> *<name>v</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnMapdvARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>query</name></param>
+@@ -15646,6 +16977,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLdouble</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnMapfv</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>query</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnMapfvARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>query</name></param>
+@@ -15653,6 +16991,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLfloat</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnMapiv</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>query</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLint</ptype> *<name>v</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnMapivARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>query</name></param>
+@@ -15660,6 +17005,15 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLint</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnMinmax</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLboolean</ptype> <name>reset</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>values</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnMinmaxARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>reset</name></param>
+@@ -15669,29 +17023,63 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>values</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnPixelMapfv</name></proto>
++            <param><ptype>GLenum</ptype> <name>map</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLfloat</ptype> *<name>values</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnPixelMapfvARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>map</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize"><ptype>GLfloat</ptype> *<name>values</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnPixelMapuiv</name></proto>
++            <param><ptype>GLenum</ptype> <name>map</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLuint</ptype> *<name>values</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnPixelMapuivARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>map</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize"><ptype>GLuint</ptype> *<name>values</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnPixelMapusv</name></proto>
++            <param><ptype>GLenum</ptype> <name>map</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLushort</ptype> *<name>values</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnPixelMapusvARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>map</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize"><ptype>GLushort</ptype> *<name>values</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnPolygonStipple</name></proto>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLubyte</ptype> *<name>pattern</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnPolygonStippleARB</name></proto>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize"><ptype>GLubyte</ptype> *<name>pattern</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnSeparableFilter</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>rowBufSize</name></param>
++            <param>void *<name>row</name></param>
++            <param><ptype>GLsizei</ptype> <name>columnBufSize</name></param>
++            <param>void *<name>column</name></param>
++            <param>void *<name>span</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnSeparableFilterARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>format</name></param>
+@@ -15703,6 +17091,15 @@ typedef unsigned int GLhandleARB;
+             <param len="0">void *<name>span</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnTexImage</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnTexImageARB</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLint</ptype> <name>level</name></param>
+@@ -15712,6 +17109,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize">void *<name>img</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnUniformdv</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLdouble</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnUniformdvARB</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+@@ -15719,6 +17123,13 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLdouble</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnUniformfv</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLfloat</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnUniformfvARB</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+@@ -15733,6 +17144,21 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnUniformfvKHR</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLfloat</ptype> *<name>params</name></param>
++            <alias name="glGetnUniformfv"/>
++        </command>
++        <command>
++            <proto>void <name>glGetnUniformiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnUniformivARB</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+@@ -15747,6 +17173,21 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnUniformivKHR</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLint</ptype> *<name>params</name></param>
++            <alias name="glGetnUniformiv"/>
++        </command>
++        <command>
++            <proto>void <name>glGetnUniformuiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLuint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glGetnUniformuivARB</name></proto>
+             <param><ptype>GLuint</ptype> <name>program</name></param>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+@@ -15754,6 +17195,14 @@ typedef unsigned int GLhandleARB;
+             <param len="bufSize"><ptype>GLuint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glGetnUniformuivKHR</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param><ptype>GLuint</ptype> *<name>params</name></param>
++            <alias name="glGetnUniformuiv"/>
++        </command>
++        <command>
+             <proto>void <name>glGlobalAlphaFactorbSUN</name></proto>
+             <param><ptype>GLbyte</ptype> <name>factor</name></param>
+         </command>
+@@ -15998,6 +17447,22 @@ typedef unsigned int GLhandleARB;
+             <param len="numAttachments">const <ptype>GLenum</ptype> *<name>attachments</name></param>
+         </command>
+         <command>
++            <proto>void <name>glInvalidateNamedFramebufferData</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLsizei</ptype> <name>numAttachments</name></param>
++            <param>const <ptype>GLenum</ptype> *<name>attachments</name></param>
++        </command>
++        <command>
++            <proto>void <name>glInvalidateNamedFramebufferSubData</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLsizei</ptype> <name>numAttachments</name></param>
++            <param>const <ptype>GLenum</ptype> *<name>attachments</name></param>
++            <param><ptype>GLint</ptype> <name>x</name></param>
++            <param><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glInvalidateSubFramebuffer</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLsizei</ptype> <name>numAttachments</name></param>
+@@ -16041,6 +17506,10 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLboolean</ptype> <name>glIsCommandListNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>list</name></param>
++        </command>
++        <command>
+             <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsEnabled</name></proto>
+             <param group="EnableCap"><ptype>GLenum</ptype> <name>cap</name></param>
+             <glx type="single" opcode="140"/>
+@@ -16057,6 +17526,24 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+         </command>
+         <command>
++            <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsEnablediEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glIsEnabledi"/>
++        </command>
++        <command>
++            <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsEnablediOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glIsEnabledi"/>
++        </command>
++        <command>
++            <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsEnablediNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <alias name="glIsEnabledi"/>
++        </command>
++        <command>
+             <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsFenceAPPLE</name></proto>
+             <param group="FenceNV"><ptype>GLuint</ptype> <name>fence</name></param>
+         </command>
+@@ -16195,6 +17682,10 @@ typedef unsigned int GLhandleARB;
+             <glx type="single" opcode="196"/>
+         </command>
+         <command>
++            <proto><ptype>GLboolean</ptype> <name>glIsStateNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>state</name></param>
++        </command>
++        <command>
+             <proto group="Boolean"><ptype>GLboolean</ptype> <name>glIsSync</name></proto>
+             <param group="sync"><ptype>GLsync</ptype> <name>sync</name></param>
+         </command>
+@@ -16397,6 +17888,16 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="3"/>
+         </command>
+         <command>
++            <proto>void <name>glListDrawCommandsStatesClientNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>list</name></param>
++            <param><ptype>GLuint</ptype> <name>segment</name></param>
++            <param>const void **<name>indirects</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>sizes</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>states</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>fbos</name></param>
++            <param><ptype>GLuint</ptype> <name>count</name></param>
++        </command>
++        <command>
+             <proto>void <name>glListParameterfSGIX</name></proto>
+             <param group="List"><ptype>GLuint</ptype> <name>list</name></param>
+             <param group="ListParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -16715,11 +18216,23 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLfixed</ptype> <name>v2</name></param>
+         </command>
+         <command>
++            <proto>void *<name>glMapNamedBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLenum</ptype> <name>access</name></param>
++        </command>
++        <command>
+             <proto>void *<name>glMapNamedBufferEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param group="VertexBufferObjectAccess"><ptype>GLenum</ptype> <name>access</name></param>
+         </command>
+         <command>
++            <proto>void *<name>glMapNamedBufferRange</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>length</name></param>
++            <param><ptype>GLbitfield</ptype> <name>access</name></param>
++        </command>
++        <command>
+             <proto>void *<name>glMapNamedBufferRangeEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLintptr</ptype> <name>offset</name></param>
+@@ -16893,10 +18406,25 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="4327"/>
+         </command>
+         <command>
++            <proto>void <name>glMatrixLoad3x2fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
++            <proto>void <name>glMatrixLoad3x3fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
+             <proto>void <name>glMatrixLoadIdentityEXT</name></proto>
+             <param group="MatrixMode"><ptype>GLenum</ptype> <name>mode</name></param>
+         </command>
+         <command>
++            <proto>void <name>glMatrixLoadTranspose3x3fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
+             <proto>void <name>glMatrixLoadTransposedEXT</name></proto>
+             <param group="MatrixMode"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param len="16">const <ptype>GLdouble</ptype> *<name>m</name></param>
+@@ -16922,6 +18450,21 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="179"/>
+         </command>
+         <command>
++            <proto>void <name>glMatrixMult3x2fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
++            <proto>void <name>glMatrixMult3x3fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
++            <proto>void <name>glMatrixMultTranspose3x3fNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>matrixMode</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>m</name></param>
++        </command>
++        <command>
+             <proto>void <name>glMatrixMultTransposedEXT</name></proto>
+             <param group="MatrixMode"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param len="16">const <ptype>GLdouble</ptype> *<name>m</name></param>
+@@ -17116,6 +18659,23 @@ typedef unsigned int GLhandleARB;
+             <alias name="glMultiDrawArraysIndirect"/>
+         </command>
+         <command>
++            <proto>void <name>glMultiDrawArraysIndirectEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param len="COMPSIZE(drawcount,stride)">const void *<name>indirect</name></param>
++            <param><ptype>GLsizei</ptype> <name>drawcount</name></param>
++            <param><ptype>GLsizei</ptype> <name>stride</name></param>
++            <alias name="glMultiDrawArraysIndirect"/>
++        </command>
++        <command>
++            <proto>void <name>glMultiDrawArraysIndirectBindlessCountNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param>const void *<name>indirect</name></param>
++            <param><ptype>GLsizei</ptype> <name>drawCount</name></param>
++            <param><ptype>GLsizei</ptype> <name>maxDrawCount</name></param>
++            <param><ptype>GLsizei</ptype> <name>stride</name></param>
++            <param><ptype>GLint</ptype> <name>vertexBufferCount</name></param>
++        </command>
++        <command>
+             <proto>void <name>glMultiDrawArraysIndirectBindlessNV</name></proto>
+             <param><ptype>GLenum</ptype> <name>mode</name></param>
+             <param>const void *<name>indirect</name></param>
+@@ -17156,6 +18716,26 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(drawcount)">const <ptype>GLint</ptype> *<name>basevertex</name></param>
+         </command>
+         <command>
++            <proto>void <name>glMultiDrawElementsBaseVertexEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param len="COMPSIZE(drawcount)">const <ptype>GLsizei</ptype> *<name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(drawcount)">const void *const*<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>primcount</name></param>
++            <param len="COMPSIZE(drawcount)">const <ptype>GLint</ptype> *<name>basevertex</name></param>
++            <alias name="glMultiDrawElementsBaseVertex"/>
++        </command>
++        <command>
++            <proto>void <name>glMultiDrawElementsBaseVertexOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param len="COMPSIZE(drawcount)">const <ptype>GLsizei</ptype> *<name>count</name></param>
++            <param group="DrawElementsType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(drawcount)">const void *const*<name>indices</name></param>
++            <param><ptype>GLsizei</ptype> <name>primcount</name></param>
++            <param len="COMPSIZE(drawcount)">const <ptype>GLint</ptype> *<name>basevertex</name></param>
++            <alias name="glMultiDrawElementsBaseVertex"/>
++        </command>
++        <command>
+             <proto>void <name>glMultiDrawElementsEXT</name></proto>
+             <param group="PrimitiveType"><ptype>GLenum</ptype> <name>mode</name></param>
+             <param len="COMPSIZE(primcount)">const <ptype>GLsizei</ptype> *<name>count</name></param>
+@@ -17173,6 +18753,15 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>stride</name></param>
+         </command>
+         <command>
++            <proto>void <name>glMultiDrawElementsIndirectEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param len="COMPSIZE(drawcount,stride)">const void *<name>indirect</name></param>
++            <param><ptype>GLsizei</ptype> <name>drawcount</name></param>
++            <param><ptype>GLsizei</ptype> <name>stride</name></param>
++            <alias name="glMultiDrawElementsIndirect"/>
++        </command>
++        <command>
+             <proto>void <name>glMultiDrawElementsIndirectAMD</name></proto>
+             <param><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+@@ -17182,6 +18771,16 @@ typedef unsigned int GLhandleARB;
+             <alias name="glMultiDrawElementsIndirect"/>
+         </command>
+         <command>
++            <proto>void <name>glMultiDrawElementsIndirectBindlessCountNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>indirect</name></param>
++            <param><ptype>GLsizei</ptype> <name>drawCount</name></param>
++            <param><ptype>GLsizei</ptype> <name>maxDrawCount</name></param>
++            <param><ptype>GLsizei</ptype> <name>stride</name></param>
++            <param><ptype>GLint</ptype> <name>vertexBufferCount</name></param>
++        </command>
++        <command>
+             <proto>void <name>glMultiDrawElementsIndirectBindlessNV</name></proto>
+             <param><ptype>GLenum</ptype> <name>mode</name></param>
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+@@ -18110,6 +19709,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(format,type,width,height,depth)">const void *<name>pixels</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedBufferData</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param>const void *<name>data</name></param>
++            <param><ptype>GLenum</ptype> <name>usage</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedBufferDataEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
+@@ -18117,18 +19723,48 @@ typedef unsigned int GLhandleARB;
+             <param group="VertexBufferObjectUsage"><ptype>GLenum</ptype> <name>usage</name></param>
+         </command>
+         <command>
+-            <proto>void <name>glNamedBufferStorageEXT</name></proto>
++            <proto>void <name>glNamedBufferPageCommitmentARB</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedBufferPageCommitmentEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
+             <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedBufferStorage</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param len="size">const void *<name>data</name></param>
++            <param><ptype>GLbitfield</ptype> <name>flags</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedBufferStorageEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
+             <param len="size">const void *<name>data</name></param>
+             <param><ptype>GLbitfield</ptype> <name>flags</name></param>
++            <alias name="glNamedBufferStorage"/>
++        </command>
++        <command>
++            <proto>void <name>glNamedBufferSubData</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param len="COMPSIZE(size)">const void *<name>data</name></param>
+         </command>
+         <command>
+             <proto>void <name>glNamedBufferSubDataEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+             <param><ptype>GLintptr</ptype> <name>offset</name></param>
+-            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
+             <param len="COMPSIZE(size)">const void *<name>data</name></param>
++            <alias name="glNamedBufferSubData"/>
+         </command>
+         <command>
+             <proto>void <name>glNamedCopyBufferSubDataEXT</name></proto>
+@@ -18139,12 +19775,41 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedFramebufferDrawBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>buf</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedFramebufferDrawBuffers</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param>const <ptype>GLenum</ptype> *<name>bufs</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedFramebufferParameteri</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> <name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedFramebufferParameteriEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
+             <param><ptype>GLint</ptype> <name>param</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedFramebufferReadBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>src</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedFramebufferRenderbuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param><ptype>GLenum</ptype> <name>renderbuffertarget</name></param>
++            <param><ptype>GLuint</ptype> <name>renderbuffer</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedFramebufferRenderbufferEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
+@@ -18152,6 +19817,13 @@ typedef unsigned int GLhandleARB;
+             <param group="Renderbuffer"><ptype>GLuint</ptype> <name>renderbuffer</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedFramebufferTexture</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedFramebufferTexture1DEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
+@@ -18192,6 +19864,14 @@ typedef unsigned int GLhandleARB;
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>face</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedFramebufferTextureLayer</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>attachment</name></param>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>layer</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedFramebufferTextureLayerEXT</name></proto>
+             <param group="Framebuffer"><ptype>GLuint</ptype> <name>framebuffer</name></param>
+             <param group="FramebufferAttachment"><ptype>GLenum</ptype> <name>attachment</name></param>
+@@ -18304,6 +19984,13 @@ typedef unsigned int GLhandleARB;
+             <param len="len">const void *<name>string</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedRenderbufferStorage</name></proto>
++            <param><ptype>GLuint</ptype> <name>renderbuffer</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedRenderbufferStorageEXT</name></proto>
+             <param group="Renderbuffer"><ptype>GLuint</ptype> <name>renderbuffer</name></param>
+             <param group="PixelInternalFormat"><ptype>GLenum</ptype> <name>internalformat</name></param>
+@@ -18311,6 +19998,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+         </command>
+         <command>
++            <proto>void <name>glNamedRenderbufferStorageMultisample</name></proto>
++            <param><ptype>GLuint</ptype> <name>renderbuffer</name></param>
++            <param><ptype>GLsizei</ptype> <name>samples</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glNamedRenderbufferStorageMultisampleCoverageEXT</name></proto>
+             <param group="Renderbuffer"><ptype>GLuint</ptype> <name>renderbuffer</name></param>
+             <param><ptype>GLsizei</ptype> <name>coverageSamples</name></param>
+@@ -18672,6 +20367,18 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>value</name></param>
+         </command>
+         <command>
++            <proto>void <name>glPatchParameteriEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> <name>value</name></param>
++            <alias name="glPatchParameteri"/>
++        </command>
++        <command>
++            <proto>void <name>glPatchParameteriOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> <name>value</name></param>
++            <alias name="glPatchParameteri"/>
++        </command>
++        <command>
+             <proto>void <name>glPathColorGenNV</name></proto>
+             <param group="PathColor"><ptype>GLenum</ptype> <name>color</name></param>
+             <param group="PathGenMode"><ptype>GLenum</ptype> <name>genMode</name></param>
+@@ -18709,6 +20416,26 @@ typedef unsigned int GLhandleARB;
+             <param group="PathGenMode"><ptype>GLenum</ptype> <name>genMode</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLenum</ptype> <name>glPathGlyphIndexArrayNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>firstPathName</name></param>
++            <param><ptype>GLenum</ptype> <name>fontTarget</name></param>
++            <param>const void *<name>fontName</name></param>
++            <param><ptype>GLbitfield</ptype> <name>fontStyle</name></param>
++            <param><ptype>GLuint</ptype> <name>firstGlyphIndex</name></param>
++            <param><ptype>GLsizei</ptype> <name>numGlyphs</name></param>
++            <param><ptype>GLuint</ptype> <name>pathParameterTemplate</name></param>
++            <param><ptype>GLfloat</ptype> <name>emScale</name></param>
++        </command>
++        <command>
++            <proto><ptype>GLenum</ptype> <name>glPathGlyphIndexRangeNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>fontTarget</name></param>
++            <param>const void *<name>fontName</name></param>
++            <param><ptype>GLbitfield</ptype> <name>fontStyle</name></param>
++            <param><ptype>GLuint</ptype> <name>pathParameterTemplate</name></param>
++            <param><ptype>GLfloat</ptype> <name>emScale</name></param>
++            <param><ptype>GLuint</ptype> <name>baseAndCount</name>[2]</param>
++        </command>
++        <command>
+             <proto>void <name>glPathGlyphRangeNV</name></proto>
+             <param group="Path"><ptype>GLuint</ptype> <name>firstPathName</name></param>
+             <param group="PathFontTarget"><ptype>GLenum</ptype> <name>fontTarget</name></param>
+@@ -18734,6 +20461,18 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLfloat</ptype> <name>emScale</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLenum</ptype> <name>glPathMemoryGlyphIndexArrayNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>firstPathName</name></param>
++            <param><ptype>GLenum</ptype> <name>fontTarget</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>fontSize</name></param>
++            <param>const void *<name>fontData</name></param>
++            <param><ptype>GLsizei</ptype> <name>faceIndex</name></param>
++            <param><ptype>GLuint</ptype> <name>firstGlyphIndex</name></param>
++            <param><ptype>GLsizei</ptype> <name>numGlyphs</name></param>
++            <param><ptype>GLuint</ptype> <name>pathParameterTemplate</name></param>
++            <param><ptype>GLfloat</ptype> <name>emScale</name></param>
++        </command>
++        <command>
+             <proto>void <name>glPathParameterfNV</name></proto>
+             <param group="Path"><ptype>GLuint</ptype> <name>path</name></param>
+             <param group="PathParameter"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -19082,6 +20821,12 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="101"/>
+         </command>
+         <command>
++            <proto>void <name>glPolygonModeNV</name></proto>
++            <param group="MaterialFace"><ptype>GLenum</ptype> <name>face</name></param>
++            <param group="PolygonMode"><ptype>GLenum</ptype> <name>mode</name></param>
++            <alias name="glPolygonMode"/>
++        </command>
++        <command>
+             <proto>void <name>glPolygonOffset</name></proto>
+             <param><ptype>GLfloat</ptype> <name>factor</name></param>
+             <param><ptype>GLfloat</ptype> <name>units</name></param>
+@@ -19104,6 +20849,13 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLfixed</ptype> <name>units</name></param>
+         </command>
+         <command>
++            <proto>void <name>glPolygonOffsetClampEXT</name></proto>
++            <param><ptype>GLfloat</ptype> <name>factor</name></param>
++            <param><ptype>GLfloat</ptype> <name>units</name></param>
++            <param><ptype>GLfloat</ptype> <name>clamp</name></param>
++            <glx type="render" opcode="4225"/>
++        </command>
++        <command>
+             <proto>void <name>glPolygonStipple</name></proto>
+             <param len="COMPSIZE()">const <ptype>GLubyte</ptype> *<name>mask</name></param>
+             <glx type="render" opcode="102"/>
+@@ -19165,6 +20917,28 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>key1</name></param>
+         </command>
+         <command>
++            <proto>void <name>glPrimitiveBoundingBoxEXT</name></proto>
++            <param><ptype>GLfloat</ptype> <name>minX</name></param>
++            <param><ptype>GLfloat</ptype> <name>minY</name></param>
++            <param><ptype>GLfloat</ptype> <name>minZ</name></param>
++            <param><ptype>GLfloat</ptype> <name>minW</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxX</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxY</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxZ</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxW</name></param>
++        </command>
++        <command>
++            <proto>void <name>glPrimitiveBoundingBoxOES</name></proto>
++            <param><ptype>GLfloat</ptype> <name>minX</name></param>
++            <param><ptype>GLfloat</ptype> <name>minY</name></param>
++            <param><ptype>GLfloat</ptype> <name>minZ</name></param>
++            <param><ptype>GLfloat</ptype> <name>minW</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxX</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxY</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxZ</name></param>
++            <param><ptype>GLfloat</ptype> <name>maxW</name></param>
++        </command>
++        <command>
+             <proto>void <name>glPrimitiveRestartIndex</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+         </command>
+@@ -19516,6 +21290,14 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="4186"/>
+         </command>
+         <command>
++            <proto>void <name>glProgramPathFragmentInputGenNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>program</name></param>
++            <param><ptype>GLint</ptype> <name>location</name></param>
++            <param><ptype>GLenum</ptype> <name>genMode</name></param>
++            <param><ptype>GLint</ptype> <name>components</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>coeffs</name></param>
++        </command>
++        <command>
+             <proto>void <name>glProgramStringARB</name></proto>
+             <param group="ProgramTargetARB"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="ProgramFormatARB"><ptype>GLenum</ptype> <name>format</name></param>
+@@ -20723,7 +22505,7 @@ typedef unsigned int GLhandleARB;
+         </command>
+         <command>
+             <proto>void <name>glReadBuffer</name></proto>
+-            <param group="ReadBufferMode"><ptype>GLenum</ptype> <name>mode</name></param>
++            <param group="ReadBufferMode"><ptype>GLenum</ptype> <name>src</name></param>
+             <glx type="render" opcode="171"/>
+         </command>
+         <command>
+@@ -20753,6 +22535,17 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="345" name="glReadPixelsPBO" comment="PBO protocol"/>
+         </command>
+         <command>
++            <proto>void <name>glReadnPixels</name></proto>
++            <param><ptype>GLint</ptype> <name>x</name></param>
++            <param><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param>void *<name>data</name></param>
++        </command>
++        <command>
+             <proto>void <name>glReadnPixelsARB</name></proto>
+             <param><ptype>GLint</ptype> <name>x</name></param>
+             <param><ptype>GLint</ptype> <name>y</name></param>
+@@ -20762,6 +22555,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize">void *<name>data</name></param>
++            <alias name="glReadnPixels"/>
+         </command>
+         <command>
+             <proto>void <name>glReadnPixelsEXT</name></proto>
+@@ -20773,6 +22567,19 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLenum</ptype> <name>type</name></param>
+             <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
+             <param len="bufSize">void *<name>data</name></param>
++            <alias name="glReadnPixels"/>
++        </command>
++        <command>
++            <proto>void <name>glReadnPixelsKHR</name></proto>
++            <param group="WinCoord"><ptype>GLint</ptype> <name>x</name></param>
++            <param group="WinCoord"><ptype>GLint</ptype> <name>y</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param group="PixelFormat"><ptype>GLenum</ptype> <name>format</name></param>
++            <param group="PixelType"><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLsizei</ptype> <name>bufSize</name></param>
++            <param len="bufSize">void *<name>data</name></param>
++            <alias name="glReadnPixels"/>
+         </command>
+         <command>
+             <proto>void <name>glRectd</name></proto>
+@@ -21194,11 +23001,6 @@ typedef unsigned int GLhandleARB;
+             <alias name="glSampleCoverage"/>
+         </command>
+         <command>
+-            <proto>void <name>glSampleCoverageOES</name></proto>
+-            <param group="ClampedFixed"><ptype>GLfixed</ptype> <name>value</name></param>
+-            <param group="Boolean"><ptype>GLboolean</ptype> <name>invert</name></param>
+-        </command>
+-        <command>
+             <proto>void <name>glSampleCoveragex</name></proto>
+             <param><ptype>GLclampx</ptype> <name>value</name></param>
+             <param><ptype>GLboolean</ptype> <name>invert</name></param>
+@@ -21253,12 +23055,40 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)">const <ptype>GLint</ptype> *<name>param</name></param>
+         </command>
+         <command>
++            <proto>void <name>glSamplerParameterIivEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLint</ptype> *<name>param</name></param>
++            <alias name="glSamplerParameterIiv"/>
++        </command>
++        <command>
++            <proto>void <name>glSamplerParameterIivOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLint</ptype> *<name>param</name></param>
++            <alias name="glSamplerParameterIiv"/>
++        </command>
++        <command>
+             <proto>void <name>glSamplerParameterIuiv</name></proto>
+             <param><ptype>GLuint</ptype> <name>sampler</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+             <param len="COMPSIZE(pname)">const <ptype>GLuint</ptype> *<name>param</name></param>
+         </command>
+         <command>
++            <proto>void <name>glSamplerParameterIuivEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLuint</ptype> *<name>param</name></param>
++            <alias name="glSamplerParameterIuiv"/>
++        </command>
++        <command>
++            <proto>void <name>glSamplerParameterIuivOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>sampler</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLuint</ptype> *<name>param</name></param>
++            <alias name="glSamplerParameterIuiv"/>
++        </command>
++        <command>
+             <proto>void <name>glSamplerParameterf</name></proto>
+             <param><ptype>GLuint</ptype> <name>sampler</name></param>
+             <param><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -21323,6 +23153,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(count)">const <ptype>GLint</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glScissorArrayvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>first</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param len="COMPSIZE(count)">const <ptype>GLint</ptype> *<name>v</name></param>
++            <alias name="glScissorArrayv"/>
++        </command>
++        <command>
+             <proto>void <name>glScissorIndexed</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param><ptype>GLint</ptype> <name>left</name></param>
+@@ -21331,11 +23168,26 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+         </command>
+         <command>
++            <proto>void <name>glScissorIndexedNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLint</ptype> <name>left</name></param>
++            <param><ptype>GLint</ptype> <name>bottom</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <alias name="glScissorIndexed"/>
++        </command>
++        <command>
+             <proto>void <name>glScissorIndexedv</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param len="4">const <ptype>GLint</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glScissorIndexedvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param len="4">const <ptype>GLint</ptype> *<name>v</name></param>
++            <alias name="glScissorIndexedv"/>
++        </command>
++        <command>
+             <proto>void <name>glSecondaryColor3b</name></proto>
+             <param group="ColorB"><ptype>GLbyte</ptype> <name>red</name></param>
+             <param group="ColorB"><ptype>GLbyte</ptype> <name>green</name></param>
+@@ -21765,6 +23617,11 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLbitfield</ptype> <name>preserveMask</name></param>
+         </command>
+         <command>
++            <proto>void <name>glStateCaptureNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>state</name></param>
++            <param><ptype>GLenum</ptype> <name>mode</name></param>
++        </command>
++        <command>
+             <proto>void <name>glStencilClearTagEXT</name></proto>
+             <param><ptype>GLsizei</ptype> <name>stencilTagBits</name></param>
+             <param><ptype>GLuint</ptype> <name>stencilClearTag</name></param>
+@@ -21863,6 +23720,44 @@ typedef unsigned int GLhandleARB;
+             <param group="MaskedStencilValue"><ptype>GLuint</ptype> <name>mask</name></param>
+         </command>
+         <command>
++            <proto>void <name>glStencilThenCoverFillPathInstancedNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>numPaths</name></param>
++            <param><ptype>GLenum</ptype> <name>pathNameType</name></param>
++            <param>const void *<name>paths</name></param>
++            <param><ptype>GLuint</ptype> <name>pathBase</name></param>
++            <param><ptype>GLenum</ptype> <name>fillMode</name></param>
++            <param><ptype>GLuint</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>coverMode</name></param>
++            <param><ptype>GLenum</ptype> <name>transformType</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>transformValues</name></param>
++        </command>
++        <command>
++            <proto>void <name>glStencilThenCoverFillPathNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>path</name></param>
++            <param><ptype>GLenum</ptype> <name>fillMode</name></param>
++            <param><ptype>GLuint</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>coverMode</name></param>
++        </command>
++        <command>
++            <proto>void <name>glStencilThenCoverStrokePathInstancedNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>numPaths</name></param>
++            <param><ptype>GLenum</ptype> <name>pathNameType</name></param>
++            <param>const void *<name>paths</name></param>
++            <param><ptype>GLuint</ptype> <name>pathBase</name></param>
++            <param><ptype>GLint</ptype> <name>reference</name></param>
++            <param><ptype>GLuint</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>coverMode</name></param>
++            <param><ptype>GLenum</ptype> <name>transformType</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>transformValues</name></param>
++        </command>
++        <command>
++            <proto>void <name>glStencilThenCoverStrokePathNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>path</name></param>
++            <param><ptype>GLint</ptype> <name>reference</name></param>
++            <param><ptype>GLuint</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>coverMode</name></param>
++        </command>
++        <command>
+             <proto>void <name>glStopInstrumentsSGIX</name></proto>
+             <param><ptype>GLint</ptype> <name>marker</name></param>
+             <glx type="render" opcode="2070"/>
+@@ -21997,6 +23892,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glTexBuffer"/>
+         </command>
+         <command>
++            <proto>void <name>glTexBufferOES</name></proto>
++            <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <alias name="glTexBuffer"/>
++        </command>
++        <command>
+             <proto>void <name>glTexBufferRange</name></proto>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLenum</ptype> <name>internalformat</name></param>
+@@ -22005,6 +23907,24 @@ typedef unsigned int GLhandleARB;
+             <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTexBufferRangeEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param group="BufferOffset"><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <alias name="glTexBufferRange"/>
++        </command>
++        <command>
++            <proto>void <name>glTexBufferRangeOES</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param group="BufferOffset"><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++            <alias name="glTexBufferRange"/>
++        </command>
++        <command>
+             <proto>void <name>glTexBumpParameterfvATI</name></proto>
+             <param group="TexBumpParameterATI"><ptype>GLenum</ptype> <name>pname</name></param>
+             <param len="COMPSIZE(pname)">const <ptype>GLfloat</ptype> *<name>param</name></param>
+@@ -22797,7 +24717,20 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>width</name></param>
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+             <param><ptype>GLsizei</ptype> <name>depth</name></param>
+-            <param><ptype>GLboolean</ptype> <name>resident</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++        </command>
++        <command>
++            <proto>void <name>glTexPageCommitmentEXT</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++            <alias name="glTexPageCommitmentARB"/>
+         </command>
+         <command>
+             <proto>void <name>glTexParameterIiv</name></proto>
+@@ -22814,6 +24747,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glTexParameterIiv"/>
+         </command>
+         <command>
++            <proto>void <name>glTexParameterIivOES</name></proto>
++            <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="TextureParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLint</ptype> *<name>params</name></param>
++            <alias name="glTexParameterIiv"/>
++        </command>
++        <command>
+             <proto>void <name>glTexParameterIuiv</name></proto>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="TextureParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -22828,6 +24768,13 @@ typedef unsigned int GLhandleARB;
+             <alias name="glTexParameterIuiv"/>
+         </command>
+         <command>
++            <proto>void <name>glTexParameterIuivOES</name></proto>
++            <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
++            <param group="TextureParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
++            <param len="COMPSIZE(pname)">const <ptype>GLuint</ptype> *<name>params</name></param>
++            <alias name="glTexParameterIuiv"/>
++        </command>
++        <command>
+             <proto>void <name>glTexParameterf</name></proto>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+             <param group="TextureParameterName"><ptype>GLenum</ptype> <name>pname</name></param>
+@@ -23092,10 +25039,19 @@ typedef unsigned int GLhandleARB;
+             <glx type="render" opcode="2058"/>
+         </command>
+         <command>
++            <proto>void <name>glTextureBarrier</name></proto>
++        </command>
++        <command>
+             <proto>void <name>glTextureBarrierNV</name></proto>
+             <glx type="render" opcode="4348"/>
+         </command>
+         <command>
++            <proto>void <name>glTextureBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureBufferEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23103,6 +25059,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureBufferRange</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureBufferRangeEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23225,7 +25189,13 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>width</name></param>
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+             <param><ptype>GLsizei</ptype> <name>depth</name></param>
+-            <param><ptype>GLboolean</ptype> <name>resident</name></param>
++            <param><ptype>GLboolean</ptype> <name>commit</name></param>
++        </command>
++        <command>
++            <proto>void <name>glTextureParameterIiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param>const <ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
+             <proto>void <name>glTextureParameterIivEXT</name></proto>
+@@ -23235,6 +25205,12 @@ typedef unsigned int GLhandleARB;
+             <param group="CheckedInt32" len="COMPSIZE(pname)">const <ptype>GLint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureParameterIuiv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>params</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureParameterIuivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23242,6 +25218,12 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(pname)">const <ptype>GLuint</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureParameterf</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLfloat</ptype> <name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureParameterfEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23250,6 +25232,12 @@ typedef unsigned int GLhandleARB;
+             <vecequiv name="glTextureParameterfvEXT"/>
+         </command>
+         <command>
++            <proto>void <name>glTextureParameterfv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureParameterfvEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23257,6 +25245,12 @@ typedef unsigned int GLhandleARB;
+             <param group="CheckedFloat32" len="COMPSIZE(pname)">const <ptype>GLfloat</ptype> *<name>params</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureParameteri</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param><ptype>GLint</ptype> <name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureParameteriEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23265,6 +25259,12 @@ typedef unsigned int GLhandleARB;
+             <vecequiv name="glTextureParameterivEXT"/>
+         </command>
+         <command>
++            <proto>void <name>glTextureParameteriv</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>pname</name></param>
++            <param>const <ptype>GLint</ptype> *<name>param</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureParameterivEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23284,6 +25284,13 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>renderbuffer</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureStorage1D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLsizei</ptype> <name>levels</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureStorage1DEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>texture</name></param>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23292,6 +25299,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>width</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureStorage2D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLsizei</ptype> <name>levels</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureStorage2DEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>texture</name></param>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23301,6 +25316,15 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>height</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureStorage2DMultisample</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLsizei</ptype> <name>samples</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLboolean</ptype> <name>fixedsamplelocations</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureStorage2DMultisampleEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23311,6 +25335,15 @@ typedef unsigned int GLhandleARB;
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>fixedsamplelocations</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureStorage3D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLsizei</ptype> <name>levels</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureStorage3DEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>texture</name></param>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23321,6 +25354,16 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>depth</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureStorage3DMultisample</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLsizei</ptype> <name>samples</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLboolean</ptype> <name>fixedsamplelocations</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureStorage3DMultisampleEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>texture</name></param>
+             <param><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23343,6 +25386,16 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLbitfield</ptype> <name>flags</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureSubImage1D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureSubImage1DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23354,6 +25407,18 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(format,type,width)">const void *<name>pixels</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureSubImage2D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureSubImage2DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23367,6 +25432,20 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(format,type,width,height)">const void *<name>pixels</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureSubImage3D</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLint</ptype> <name>level</name></param>
++            <param><ptype>GLint</ptype> <name>xoffset</name></param>
++            <param><ptype>GLint</ptype> <name>yoffset</name></param>
++            <param><ptype>GLint</ptype> <name>zoffset</name></param>
++            <param><ptype>GLsizei</ptype> <name>width</name></param>
++            <param><ptype>GLsizei</ptype> <name>height</name></param>
++            <param><ptype>GLsizei</ptype> <name>depth</name></param>
++            <param><ptype>GLenum</ptype> <name>format</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param>const void *<name>pixels</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTextureSubImage3DEXT</name></proto>
+             <param group="Texture"><ptype>GLuint</ptype> <name>texture</name></param>
+             <param group="TextureTarget"><ptype>GLenum</ptype> <name>target</name></param>
+@@ -23393,6 +25472,30 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>numlayers</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTextureViewEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>origtexture</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>minlevel</name></param>
++            <param><ptype>GLuint</ptype> <name>numlevels</name></param>
++            <param><ptype>GLuint</ptype> <name>minlayer</name></param>
++            <param><ptype>GLuint</ptype> <name>numlayers</name></param>
++            <alias name="glTextureView"/>
++        </command>
++        <command>
++            <proto>void <name>glTextureViewOES</name></proto>
++            <param><ptype>GLuint</ptype> <name>texture</name></param>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>origtexture</name></param>
++            <param><ptype>GLenum</ptype> <name>internalformat</name></param>
++            <param><ptype>GLuint</ptype> <name>minlevel</name></param>
++            <param><ptype>GLuint</ptype> <name>numlevels</name></param>
++            <param><ptype>GLuint</ptype> <name>minlayer</name></param>
++            <param><ptype>GLuint</ptype> <name>numlayers</name></param>
++            <alias name="glTextureView"/>
++        </command>
++        <command>
+             <proto>void <name>glTrackMatrixNV</name></proto>
+             <param group="VertexAttribEnumNV"><ptype>GLenum</ptype> <name>target</name></param>
+             <param><ptype>GLuint</ptype> <name>address</name></param>
+@@ -23402,11 +25505,25 @@ typedef unsigned int GLhandleARB;
+         </command>
+         <command>
+             <proto>void <name>glTransformFeedbackAttribsNV</name></proto>
+-            <param><ptype>GLuint</ptype> <name>count</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param len="COMPSIZE(count)">const <ptype>GLint</ptype> *<name>attribs</name></param>
+             <param><ptype>GLenum</ptype> <name>bufferMode</name></param>
+         </command>
+         <command>
++            <proto>void <name>glTransformFeedbackBufferBase</name></proto>
++            <param><ptype>GLuint</ptype> <name>xfb</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++        </command>
++        <command>
++            <proto>void <name>glTransformFeedbackBufferRange</name></proto>
++            <param><ptype>GLuint</ptype> <name>xfb</name></param>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param group="BufferSize"><ptype>GLsizeiptr</ptype> <name>size</name></param>
++        </command>
++        <command>
+             <proto>void <name>glTransformFeedbackStreamAttribsNV</name></proto>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param len="count">const <ptype>GLint</ptype> *<name>attribs</name></param>
+@@ -23478,7 +25595,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1dv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1f</name></proto>
+@@ -23495,13 +25612,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniform1fv"/>
+         </command>
+         <command>
+@@ -23518,7 +25635,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1i64vNV</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint64EXT</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLint64EXT</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1iARB</name></proto>
+@@ -23530,13 +25647,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1iv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLint</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1ivARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLint</ptype> *<name>value</name></param>
+             <alias name="glUniform1iv"/>
+         </command>
+         <command>
+@@ -23553,7 +25670,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1ui64vNV</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLuint64EXT</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLuint64EXT</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1uiEXT</name></proto>
+@@ -23565,13 +25682,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform1uiv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLuint</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLuint</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform1uivEXT</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLuint</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLuint</ptype> *<name>value</name></param>
+             <alias name="glUniform1uiv"/>
+         </command>
+         <command>
+@@ -23584,7 +25701,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform2dv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*2">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform2f</name></proto>
+@@ -23603,13 +25720,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform2fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*2">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform2fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*2">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniform2fv"/>
+         </command>
+         <command>
+@@ -23641,13 +25758,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform2iv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*2">const <ptype>GLint</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform2ivARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*2">const <ptype>GLint</ptype> *<name>value</name></param>
+             <alias name="glUniform2iv"/>
+         </command>
+         <command>
+@@ -23699,7 +25816,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform3dv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*3">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform3f</name></proto>
+@@ -23720,13 +25837,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform3fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*3">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform3fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*3">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniform3fv"/>
+         </command>
+         <command>
+@@ -23761,13 +25878,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform3iv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*3">const <ptype>GLint</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform3ivARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*3">const <ptype>GLint</ptype> *<name>value</name></param>
+             <alias name="glUniform3iv"/>
+         </command>
+         <command>
+@@ -23823,7 +25940,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform4dv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform4f</name></proto>
+@@ -23846,13 +25963,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform4fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform4fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniform4fv"/>
+         </command>
+         <command>
+@@ -23890,13 +26007,13 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniform4iv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLint</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniform4ivARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLint</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLint</ptype> *<name>value</name></param>
+             <alias name="glUniform4iv"/>
+         </command>
+         <command>
+@@ -23982,21 +26099,21 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix2fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix2fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*4">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix2fv"/>
+         </command>
+         <command>
+@@ -24004,14 +26121,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix2x3fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="6">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="305"/>
+         </command>
+         <command>
+@@ -24019,7 +26136,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="6">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix2x3fv"/>
+         </command>
+         <command>
+@@ -24027,14 +26144,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix2x4fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="8">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="307"/>
+         </command>
+         <command>
+@@ -24042,7 +26159,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="8">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix2x4fv"/>
+         </command>
+         <command>
+@@ -24050,21 +26167,21 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*9">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix3fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*9">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix3fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*9">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix3fv"/>
+         </command>
+         <command>
+@@ -24072,14 +26189,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix3x2fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="6">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="306"/>
+         </command>
+         <command>
+@@ -24087,7 +26204,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="6">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*6">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix3x2fv"/>
+         </command>
+         <command>
+@@ -24095,14 +26212,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix3x4fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="12">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="309"/>
+         </command>
+         <command>
+@@ -24110,7 +26227,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="12">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix3x4fv"/>
+         </command>
+         <command>
+@@ -24118,21 +26235,21 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*16">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix4fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*16">const <ptype>GLfloat</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix4fvARB</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*16">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix4fv"/>
+         </command>
+         <command>
+@@ -24140,14 +26257,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix4x2fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="8">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="308"/>
+         </command>
+         <command>
+@@ -24155,7 +26272,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="8">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*8">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix4x2fv"/>
+         </command>
+         <command>
+@@ -24163,14 +26280,14 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="count">const <ptype>GLdouble</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLdouble</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUniformMatrix4x3fv</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="12">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <glx type="render" opcode="310"/>
+         </command>
+         <command>
+@@ -24178,7 +26295,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+             <param group="Boolean"><ptype>GLboolean</ptype> <name>transpose</name></param>
+-            <param len="12">const <ptype>GLfloat</ptype> *<name>value</name></param>
++            <param len="count*12">const <ptype>GLfloat</ptype> *<name>value</name></param>
+             <alias name="glUniformMatrix4x3fv"/>
+         </command>
+         <command>
+@@ -24196,7 +26313,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glUniformui64vNV</name></proto>
+             <param><ptype>GLint</ptype> <name>location</name></param>
+             <param><ptype>GLsizei</ptype> <name>count</name></param>
+-            <param len="count">const <ptype>GLuint64EXT</ptype> *<name>value</name></param>
++            <param len="count*1">const <ptype>GLuint64EXT</ptype> *<name>value</name></param>
+         </command>
+         <command>
+             <proto>void <name>glUnlockArraysEXT</name></proto>
+@@ -24216,6 +26333,10 @@ typedef unsigned int GLhandleARB;
+             <alias name="glUnmapBuffer"/>
+         </command>
+         <command>
++            <proto><ptype>GLboolean</ptype> <name>glUnmapNamedBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++        </command>
++        <command>
+             <proto group="Boolean"><ptype>GLboolean</ptype> <name>glUnmapNamedBufferEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+         </command>
+@@ -24390,6 +26511,7 @@ typedef unsigned int GLhandleARB;
+         <command>
+             <proto>void <name>glVertex2bOES</name></proto>
+             <param><ptype>GLbyte</ptype> <name>x</name></param>
++            <param><ptype>GLbyte</ptype> <name>y</name></param>
+         </command>
+         <command>
+             <proto>void <name>glVertex2bvOES</name></proto>
+@@ -24462,6 +26584,7 @@ typedef unsigned int GLhandleARB;
+             <proto>void <name>glVertex3bOES</name></proto>
+             <param><ptype>GLbyte</ptype> <name>x</name></param>
+             <param><ptype>GLbyte</ptype> <name>y</name></param>
++            <param><ptype>GLbyte</ptype> <name>z</name></param>
+         </command>
+         <command>
+             <proto>void <name>glVertex3bvOES</name></proto>
+@@ -24541,6 +26664,7 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLbyte</ptype> <name>x</name></param>
+             <param><ptype>GLbyte</ptype> <name>y</name></param>
+             <param><ptype>GLbyte</ptype> <name>z</name></param>
++            <param><ptype>GLbyte</ptype> <name>w</name></param>
+         </command>
+         <command>
+             <proto>void <name>glVertex4bvOES</name></proto>
+@@ -24622,6 +26746,37 @@ typedef unsigned int GLhandleARB;
+             <param len="4">const <ptype>GLfixed</ptype> *<name>coords</name></param>
+         </command>
+         <command>
++            <proto>void <name>glVertexArrayAttribBinding</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>attribindex</name></param>
++            <param><ptype>GLuint</ptype> <name>bindingindex</name></param>
++        </command>
++        <command>
++            <proto>void <name>glVertexArrayAttribFormat</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>attribindex</name></param>
++            <param><ptype>GLint</ptype> <name>size</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLboolean</ptype> <name>normalized</name></param>
++            <param><ptype>GLuint</ptype> <name>relativeoffset</name></param>
++        </command>
++        <command>
++            <proto>void <name>glVertexArrayAttribIFormat</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>attribindex</name></param>
++            <param><ptype>GLint</ptype> <name>size</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLuint</ptype> <name>relativeoffset</name></param>
++        </command>
++        <command>
++            <proto>void <name>glVertexArrayAttribLFormat</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>attribindex</name></param>
++            <param><ptype>GLint</ptype> <name>size</name></param>
++            <param><ptype>GLenum</ptype> <name>type</name></param>
++            <param><ptype>GLuint</ptype> <name>relativeoffset</name></param>
++        </command>
++        <command>
+             <proto>void <name>glVertexArrayBindVertexBufferEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>bindingindex</name></param>
+@@ -24630,6 +26785,12 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLsizei</ptype> <name>stride</name></param>
+         </command>
+         <command>
++            <proto>void <name>glVertexArrayBindingDivisor</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>bindingindex</name></param>
++            <param><ptype>GLuint</ptype> <name>divisor</name></param>
++        </command>
++        <command>
+             <proto>void <name>glVertexArrayColorOffsetEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+@@ -24646,6 +26807,11 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLintptr</ptype> <name>offset</name></param>
+         </command>
+         <command>
++            <proto>void <name>glVertexArrayElementBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++        </command>
++        <command>
+             <proto>void <name>glVertexArrayFogCoordOffsetEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+@@ -24787,6 +26953,23 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLuint</ptype> <name>divisor</name></param>
+         </command>
+         <command>
++            <proto>void <name>glVertexArrayVertexBuffer</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>bindingindex</name></param>
++            <param><ptype>GLuint</ptype> <name>buffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>offset</name></param>
++            <param><ptype>GLsizei</ptype> <name>stride</name></param>
++        </command>
++        <command>
++            <proto>void <name>glVertexArrayVertexBuffers</name></proto>
++            <param><ptype>GLuint</ptype> <name>vaobj</name></param>
++            <param><ptype>GLuint</ptype> <name>first</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param>const <ptype>GLuint</ptype> *<name>buffers</name></param>
++            <param>const <ptype>GLintptr</ptype> *<name>offsets</name></param>
++            <param>const <ptype>GLsizei</ptype> *<name>strides</name></param>
++        </command>
++        <command>
+             <proto>void <name>glVertexArrayVertexOffsetEXT</name></proto>
+             <param><ptype>GLuint</ptype> <name>vaobj</name></param>
+             <param><ptype>GLuint</ptype> <name>buffer</name></param>
+@@ -26670,6 +28853,13 @@ typedef unsigned int GLhandleARB;
+             <param len="COMPSIZE(count)">const <ptype>GLfloat</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glViewportArrayvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>first</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param len="COMPSIZE(count)">const <ptype>GLfloat</ptype> *<name>v</name></param>
++            <alias name="glViewportArrayv"/>
++        </command>
++        <command>
+             <proto>void <name>glViewportIndexedf</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param><ptype>GLfloat</ptype> <name>x</name></param>
+@@ -26678,11 +28868,26 @@ typedef unsigned int GLhandleARB;
+             <param><ptype>GLfloat</ptype> <name>h</name></param>
+         </command>
+         <command>
++            <proto>void <name>glViewportIndexedfNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param><ptype>GLfloat</ptype> <name>x</name></param>
++            <param><ptype>GLfloat</ptype> <name>y</name></param>
++            <param><ptype>GLfloat</ptype> <name>w</name></param>
++            <param><ptype>GLfloat</ptype> <name>h</name></param>
++            <alias name="glViewportIndexedf"/>
++        </command>
++        <command>
+             <proto>void <name>glViewportIndexedfv</name></proto>
+             <param><ptype>GLuint</ptype> <name>index</name></param>
+             <param len="4">const <ptype>GLfloat</ptype> *<name>v</name></param>
+         </command>
+         <command>
++            <proto>void <name>glViewportIndexedfvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>index</name></param>
++            <param len="4">const <ptype>GLfloat</ptype> *<name>v</name></param>
++            <alias name="glViewportIndexedfv"/>
++        </command>
++        <command>
+             <proto>void <name>glWaitSync</name></proto>
+             <param group="sync"><ptype>GLsync</ptype> <name>sync</name></param>
+             <param><ptype>GLbitfield</ptype> <name>flags</name></param>
+@@ -27121,6 +29326,51 @@ typedef unsigned int GLhandleARB;
+             <param group="VertexShaderWriteMaskEXT"><ptype>GLenum</ptype> <name>outZ</name></param>
+             <param group="VertexShaderWriteMaskEXT"><ptype>GLenum</ptype> <name>outW</name></param>
+         </command>
++        <command>
++            <proto>void <name>glCoverageModulationNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>components</name></param>
++        </command>
++        <command>
++            <proto>void <name>glCoverageModulationTableNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>n</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
++            <proto>void <name>glFragmentCoverageColorNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>color</name></param>
++        </command>
++        <command>
++            <proto>void <name>glFramebufferSampleLocationsfvNV</name></proto>
++            <param><ptype>GLenum</ptype> <name>target</name></param>
++            <param><ptype>GLuint</ptype> <name>start</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
++            <proto>void <name>glGetCoverageModulationTableNV</name></proto>
++            <param><ptype>GLsizei</ptype> <name>bufsize</name></param>
++            <param><ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
++            <proto>void <name>glNamedFramebufferSampleLocationsfvNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>framebuffer</name></param>
++            <param><ptype>GLuint</ptype> <name>start</name></param>
++            <param><ptype>GLsizei</ptype> <name>count</name></param>
++            <param>const <ptype>GLfloat</ptype> *<name>v</name></param>
++        </command>
++        <command>
++            <proto>void <name>glRasterSamplesEXT</name></proto>
++            <param><ptype>GLuint</ptype> <name>samples</name></param>
++            <param><ptype>GLboolean</ptype> <name>fixedsamplelocations</name></param>
++        </command>
++        <command>
++            <proto>void <name>glResolveDepthValuesNV</name></proto>
++        </command>
++        <command>
++            <proto>void <name>glSubpixelPrecisionBiasNV</name></proto>
++            <param><ptype>GLuint</ptype> <name>xbits</name></param>
++            <param><ptype>GLuint</ptype> <name>ybits</name></param>
++        </command>
+     </commands>
+ 
+     <!-- SECTION: GL API interface definitions. -->
+@@ -28955,11 +31205,13 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_UNIFORM_BUFFER_START"/>
+             <enum name="GL_UNIFORM_BUFFER_SIZE"/>
+             <enum name="GL_MAX_VERTEX_UNIFORM_BLOCKS"/>
++            <enum name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS"/>
+             <enum name="GL_MAX_FRAGMENT_UNIFORM_BLOCKS"/>
+             <enum name="GL_MAX_COMBINED_UNIFORM_BLOCKS"/>
+             <enum name="GL_MAX_UNIFORM_BUFFER_BINDINGS"/>
+             <enum name="GL_MAX_UNIFORM_BLOCK_SIZE"/>
+             <enum name="GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS"/>
++            <enum name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS"/>
+             <enum name="GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS"/>
+             <enum name="GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT"/>
+             <enum name="GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH"/>
+@@ -28978,6 +31230,7 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS"/>
+             <enum name="GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES"/>
+             <enum name="GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER"/>
++            <enum name="GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER"/>
+             <enum name="GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER"/>
+             <enum name="GL_INVALID_INDEX"/>
+             <command name="glGetUniformIndices"/>
+@@ -28987,6 +31240,9 @@ typedef unsigned int GLhandleARB;
+             <command name="glGetActiveUniformBlockiv"/>
+             <command name="glGetActiveUniformBlockName"/>
+             <command name="glUniformBlockBinding"/>
++            <command name="glBindBufferRange"/>
++            <command name="glBindBufferBase"/>
++            <command name="glGetIntegeri_v"/>
+         </require>
+     </feature>
+     <feature api="gl" name="GL_VERSION_3_2" number="3.2">
+@@ -30303,6 +32559,12 @@ typedef unsigned int GLhandleARB;
+         </require>
+     </feature>
+     <feature api="gl" name="GL_VERSION_4_2" number="4.2">
++        <require comment="New aliases for old tokens">
++            <enum name="GL_COPY_READ_BUFFER_BINDING"/>
++            <enum name="GL_COPY_WRITE_BUFFER_BINDING"/>
++            <enum name="GL_TRANSFORM_FEEDBACK_ACTIVE"/>
++            <enum name="GL_TRANSFORM_FEEDBACK_PAUSED"/>
++        </require>
+         <require comment="Reuse tokens from ARB_base_instance (none)">
+         </require>
+         <require comment="Reuse tokens from ARB_shading_language_420pack (none)">
+@@ -30523,6 +32785,7 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER"/>
+             <enum name="GL_DISPATCH_INDIRECT_BUFFER"/>
+             <enum name="GL_DISPATCH_INDIRECT_BUFFER_BINDING"/>
++            <enum name="GL_COMPUTE_SHADER_BIT"/>
+         </require>
+         <require comment="Reuse tokens from ARB_copy_image (none)">
+         </require>
+@@ -30940,6 +33203,191 @@ typedef unsigned int GLhandleARB;
+             <enum name="GL_UNSIGNED_INT_10F_11F_11F_REV"/>
+         </require>
+     </feature>
++    <feature api="gl" name="GL_VERSION_4_5" number="4.5">
++        <require comment="Added robustness functionality">
++            <enum name="GL_CONTEXT_LOST"/>
++        </require>
++        <require comment="Reuse GL_ARB_clip_control">
++            <command name="glClipControl"/>
++            <enum name="GL_LOWER_LEFT"/>
++            <enum name="GL_UPPER_LEFT"/>
++            <enum name="GL_NEGATIVE_ONE_TO_ONE"/>
++            <enum name="GL_ZERO_TO_ONE"/>
++            <enum name="GL_CLIP_ORIGIN"/>
++            <enum name="GL_CLIP_DEPTH_MODE"/>
++        </require>
++        <require comment="Reuse GL_ARB_conditional_render_inverted">
++            <enum name="GL_QUERY_WAIT_INVERTED"/>
++            <enum name="GL_QUERY_NO_WAIT_INVERTED"/>
++            <enum name="GL_QUERY_BY_REGION_WAIT_INVERTED"/>
++            <enum name="GL_QUERY_BY_REGION_NO_WAIT_INVERTED"/>
++        </require>
++        <require comment="Reuse GL_ARB_cull_distance">
++            <enum name="GL_MAX_CULL_DISTANCES"/>
++            <enum name="GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES"/>
++        </require>
++        <require comment="Reuse GL_ARB_direct_state_access">
++            <enum name="GL_TEXTURE_TARGET"/>
++            <enum name="GL_QUERY_TARGET"/>
++            <enum name="GL_TEXTURE_BINDING_1D"/>
++            <enum name="GL_TEXTURE_BINDING_1D_ARRAY"/>
++            <enum name="GL_TEXTURE_BINDING_2D"/>
++            <enum name="GL_TEXTURE_BINDING_2D_ARRAY"/>
++            <enum name="GL_TEXTURE_BINDING_2D_MULTISAMPLE"/>
++            <enum name="GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY"/>
++            <enum name="GL_TEXTURE_BINDING_3D"/>
++            <enum name="GL_TEXTURE_BINDING_BUFFER"/>
++            <enum name="GL_TEXTURE_BINDING_CUBE_MAP"/>
++            <enum name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"/>
++            <enum name="GL_TEXTURE_BINDING_RECTANGLE"/>
++            <command name="glCreateTransformFeedbacks"/>
++            <command name="glTransformFeedbackBufferBase"/>
++            <command name="glTransformFeedbackBufferRange"/>
++            <command name="glGetTransformFeedbackiv"/>
++            <command name="glGetTransformFeedbacki_v"/>
++            <command name="glGetTransformFeedbacki64_v"/>
++            <command name="glCreateBuffers"/>
++            <command name="glNamedBufferStorage"/>
++            <command name="glNamedBufferData"/>
++            <command name="glNamedBufferSubData"/>
++            <command name="glCopyNamedBufferSubData"/>
++            <command name="glClearNamedBufferData"/>
++            <command name="glClearNamedBufferSubData"/>
++            <command name="glMapNamedBuffer"/>
++            <command name="glMapNamedBufferRange"/>
++            <command name="glUnmapNamedBuffer"/>
++            <command name="glFlushMappedNamedBufferRange"/>
++            <command name="glGetNamedBufferParameteriv"/>
++            <command name="glGetNamedBufferParameteri64v"/>
++            <command name="glGetNamedBufferPointerv"/>
++            <command name="glGetNamedBufferSubData"/>
++            <command name="glCreateFramebuffers"/>
++            <command name="glNamedFramebufferRenderbuffer"/>
++            <command name="glNamedFramebufferParameteri"/>
++            <command name="glNamedFramebufferTexture"/>
++            <command name="glNamedFramebufferTextureLayer"/>
++            <command name="glNamedFramebufferDrawBuffer"/>
++            <command name="glNamedFramebufferDrawBuffers"/>
++            <command name="glNamedFramebufferReadBuffer"/>
++            <command name="glInvalidateNamedFramebufferData"/>
++            <command name="glInvalidateNamedFramebufferSubData"/>
++            <command name="glClearNamedFramebufferiv"/>
++            <command name="glClearNamedFramebufferuiv"/>
++            <command name="glClearNamedFramebufferfv"/>
++            <command name="glClearNamedFramebufferfi"/>
++            <command name="glBlitNamedFramebuffer"/>
++            <command name="glCheckNamedFramebufferStatus"/>
++            <command name="glGetNamedFramebufferParameteriv"/>
++            <command name="glGetNamedFramebufferAttachmentParameteriv"/>
++            <command name="glCreateRenderbuffers"/>
++            <command name="glNamedRenderbufferStorage"/>
++            <command name="glNamedRenderbufferStorageMultisample"/>
++            <command name="glGetNamedRenderbufferParameteriv"/>
++            <command name="glCreateTextures"/>
++            <command name="glTextureBuffer"/>
++            <command name="glTextureBufferRange"/>
++            <command name="glTextureStorage1D"/>
++            <command name="glTextureStorage2D"/>
++            <command name="glTextureStorage3D"/>
++            <command name="glTextureStorage2DMultisample"/>
++            <command name="glTextureStorage3DMultisample"/>
++            <command name="glTextureSubImage1D"/>
++            <command name="glTextureSubImage2D"/>
++            <command name="glTextureSubImage3D"/>
++            <command name="glCompressedTextureSubImage1D"/>
++            <command name="glCompressedTextureSubImage2D"/>
++            <command name="glCompressedTextureSubImage3D"/>
++            <command name="glCopyTextureSubImage1D"/>
++            <command name="glCopyTextureSubImage2D"/>
++            <command name="glCopyTextureSubImage3D"/>
++            <command name="glTextureParameterf"/>
++            <command name="glTextureParameterfv"/>
++            <command name="glTextureParameteri"/>
++            <command name="glTextureParameterIiv"/>
++            <command name="glTextureParameterIuiv"/>
++            <command name="glTextureParameteriv"/>
++            <command name="glGenerateTextureMipmap"/>
++            <command name="glBindTextureUnit"/>
++            <command name="glGetTextureImage"/>
++            <command name="glGetCompressedTextureImage"/>
++            <command name="glGetTextureLevelParameterfv"/>
++            <command name="glGetTextureLevelParameteriv"/>
++            <command name="glGetTextureParameterfv"/>
++            <command name="glGetTextureParameterIiv"/>
++            <command name="glGetTextureParameterIuiv"/>
++            <command name="glGetTextureParameteriv"/>
++            <command name="glCreateVertexArrays"/>
++            <command name="glDisableVertexArrayAttrib"/>
++            <command name="glEnableVertexArrayAttrib"/>
++            <command name="glVertexArrayElementBuffer"/>
++            <command name="glVertexArrayVertexBuffer"/>
++            <command name="glVertexArrayVertexBuffers"/>
++            <command name="glVertexArrayAttribBinding"/>
++            <command name="glVertexArrayAttribFormat"/>
++            <command name="glVertexArrayAttribIFormat"/>
++            <command name="glVertexArrayAttribLFormat"/>
++            <command name="glVertexArrayBindingDivisor"/>
++            <command name="glGetVertexArrayiv"/>
++            <command name="glGetVertexArrayIndexediv"/>
++            <command name="glGetVertexArrayIndexed64iv"/>
++            <command name="glCreateSamplers"/>
++            <command name="glCreateProgramPipelines"/>
++            <command name="glCreateQueries"/>
++            <command name="glGetQueryBufferObjecti64v"/>
++            <command name="glGetQueryBufferObjectiv"/>
++            <command name="glGetQueryBufferObjectui64v"/>
++            <command name="glGetQueryBufferObjectuiv"/>
++        </require>
++        <require comment="Reuse GL_ARB_ES3_1_compatibility">
++            <enum name="GL_BACK"/>
++            <command name="glMemoryBarrierByRegion"/>
++        </require>
++        <require comment="Reuse GL_ARB_get_texture_sub_image">
++            <command name="glGetTextureSubImage"/>
++            <command name="glGetCompressedTextureSubImage"/>
++        </require>
++        <require comment="Reuse GL_ARB_robustness">
++            <enum name="GL_NO_ERROR"/>
++            <enum name="GL_GUILTY_CONTEXT_RESET"/>
++            <enum name="GL_INNOCENT_CONTEXT_RESET"/>
++            <enum name="GL_UNKNOWN_CONTEXT_RESET"/>
++            <enum name="GL_RESET_NOTIFICATION_STRATEGY"/>
++            <enum name="GL_LOSE_CONTEXT_ON_RESET"/>
++            <enum name="GL_NO_RESET_NOTIFICATION"/>
++            <enum name="GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT"/>
++            <enum name="GL_CONTEXT_LOST"/>
++            <command name="glGetGraphicsResetStatus"/>
++            <command name="glGetnCompressedTexImage"/>
++            <command name="glGetnTexImage"/>
++            <command name="glGetnUniformdv"/>
++            <command name="glGetnUniformfv"/>
++            <command name="glGetnUniformiv"/>
++            <command name="glGetnUniformuiv"/>
++            <command name="glReadnPixels"/>
++        </require>
++        <require profile="compatibility" comment="Reuse GL_ARB_robustness">
++            <command name="glGetnMapdv"/>
++            <command name="glGetnMapfv"/>
++            <command name="glGetnMapiv"/>
++            <command name="glGetnPixelMapfv"/>
++            <command name="glGetnPixelMapuiv"/>
++            <command name="glGetnPixelMapusv"/>
++            <command name="glGetnPolygonStipple"/>
++            <command name="glGetnColorTable"/>
++            <command name="glGetnConvolutionFilter"/>
++            <command name="glGetnSeparableFilter"/>
++            <command name="glGetnHistogram"/>
++            <command name="glGetnMinmax"/>
++        </require>
++        <require comment="Reuse GL_ARB_texture_barrier">
++            <command name="glTextureBarrier"/>
++        </require>
++        <require comment="Reuse GL_KHR_context_flush_control">
++            <enum name="GL_CONTEXT_RELEASE_BEHAVIOR"/>
++            <enum name="GL_NONE"/>
++            <enum name="GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH"/>
++        </require>
++    </feature>
+ 
+     <!-- SECTION: OpenGL ES 1.0/1.1 API interface definitions. -->
+     <feature api="gles1" name="GL_VERSION_ES_CM_1_0" number="1.0">
+@@ -32675,6 +35123,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glBlendEquationSeparateIndexedAMD"/>
+             </require>
+         </extension>
++        <extension name="GL_AMD_gcn_shader" supported="gl"/>
+         <extension name="GL_AMD_gpu_shader_int64" supported="gl">
+             <require>
+                 <enum name="GL_INT64_NV"/>
+@@ -32757,7 +35206,6 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVertexAttribParameteriAMD"/>
+             </require>
+         </extension>
+-        <extension name="GL_AMD_gcn_shader" supported="gl"/>
+         <extension name="GL_AMD_multi_draw_indirect" supported="gl">
+             <require>
+                 <command name="glMultiDrawArraysIndirectAMD"/>
+@@ -32847,7 +35295,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_VIRTUAL_PAGE_SIZE_Z_AMD"/>
+                 <enum name="GL_MAX_SPARSE_TEXTURE_SIZE_AMD"/>
+                 <enum name="GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"/>
+-                <enum name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"/>
++                <enum name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS" comment="Should have an AMD suffix, but probably too late now"/>
+                 <enum name="GL_MIN_SPARSE_LEVEL_AMD"/>
+                 <enum name="GL_MIN_LOD_WARNING_AMD"/>
+                 <enum name="GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"/>
+@@ -32885,8 +35333,31 @@ typedef unsigned int GLhandleARB;
+                 <command name="glTessellationModeAMD"/>
+             </require>
+         </extension>
+-        <extension name="GL_AMD_vertex_shader_viewport_index" supported="gl">
+-            <require>
++        <extension name="GL_AMD_vertex_shader_viewport_index" supported="gl"/>
++        <extension name="GL_ANDROID_extension_pack_es31a" supported="gles2">
++            <require comment="This is an alias for the following extensions. At present gl.xml doesn't actually replicate all their interfaces here.">
++                <!--
++                    KHR_debug
++                    KHR_texture_compression_astc_ldr
++                    KHR_blend_equation_advanced
++                    OES_sample_shading
++                    OES_sample_variables
++                    OES_shader_image_atomic
++                    OES_shader_multisample_interpolation
++                    OES_texture_stencil8
++                    OES_texture_storage_multisample_2d_array
++                    EXT_copy_image
++                    EXT_draw_buffers_indexed
++                    EXT_geometry_shader
++                    EXT_gpu_shader5
++                    EXT_primitive_bounding_box
++                    EXT_shader_io_blocks
++                    EXT_tessellation_shader
++                    EXT_texture_border_clamp
++                    EXT_texture_buffer
++                    EXT_texture_cube_map_array
++                    EXT_texture_srgb_decode
++                -->
+             </require>
+         </extension>
+         <extension name="GL_ANGLE_depth_texture" supported="gles2">
+@@ -32968,6 +35439,20 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNPACK_CLIENT_STORAGE_APPLE"/>
+             </require>
+         </extension>
++        <extension name="GL_APPLE_clip_distance" supported="gles2">
++            <require>
++                <enum name="GL_MAX_CLIP_DISTANCES_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE0_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE1_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE2_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE3_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE4_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE5_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE6_APPLE"/>
++                <enum name="GL_CLIP_DISTANCE7_APPLE"/>
++            </require>
++        </extension>
++        <extension name="GL_APPLE_color_buffer_packed_float" supported="gles2"/>
+         <extension name="GL_APPLE_copy_texture_levels" supported="gles1|gles2">
+             <require>
+                 <command name="glCopyTextureLevelsAPPLE"/>
+@@ -33099,10 +35584,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetSyncivAPPLE"/>
+             </require>
+         </extension>
+-        <extension name="GL_APPLE_texture_2D_limited_npot" supported="gles1">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_APPLE_texture_2D_limited_npot" supported="gles1"/>
+         <extension name="GL_APPLE_texture_format_BGRA8888" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_BGRA_EXT"/>
+@@ -33116,6 +35598,14 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_TEXTURE_MAX_LEVEL_APPLE"/>
+             </require>
+         </extension>
++        <extension name="GL_APPLE_texture_packed_float" supported="gles2">
++            <require>
++                <enum name="GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE"/>
++                <enum name="GL_UNSIGNED_INT_5_9_9_9_REV_APPLE"/>
++                <enum name="GL_R11F_G11F_B10F_APPLE"/>
++                <enum name="GL_RGB9_E5_APPLE"/>
++            </require>
++        </extension>
+         <extension name="GL_APPLE_texture_range" supported="gl">
+             <require>
+                 <enum name="GL_TEXTURE_RANGE_LENGTH_APPLE"/>
+@@ -33209,6 +35699,12 @@ typedef unsigned int GLhandleARB;
+                 <command name="glClearDepthf"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_ES3_1_compatibility" supported="gl|glcore">
++            <require>
++                <enum name="GL_BACK"/>
++                <command name="glMemoryBarrierByRegion"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_ES3_compatibility" supported="gl|glcore">
+             <require>
+                 <enum name="GL_COMPRESSED_RGB8_ETC2"/>
+@@ -33300,6 +35796,17 @@ typedef unsigned int GLhandleARB;
+                 <command name="glClearTexSubImage"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_clip_control" supported="gl|glcore">
++            <require>
++                <command name="glClipControl"/>
++                <enum name="GL_LOWER_LEFT"/>
++                <enum name="GL_UPPER_LEFT"/>
++                <enum name="GL_NEGATIVE_ONE_TO_ONE"/>
++                <enum name="GL_ZERO_TO_ONE"/>
++                <enum name="GL_CLIP_ORIGIN"/>
++                <enum name="GL_CLIP_DEPTH_MODE"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_color_buffer_float" supported="gl">
+             <require>
+                 <enum name="GL_RGBA_FLOAT_MODE_ARB"/>
+@@ -33359,12 +35866,18 @@ typedef unsigned int GLhandleARB;
+                 <command name="glDispatchComputeGroupSizeARB"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_conditional_render_inverted" supported="gl|glcore">
++            <require>
++                <enum name="GL_QUERY_WAIT_INVERTED"/>
++                <enum name="GL_QUERY_NO_WAIT_INVERTED"/>
++                <enum name="GL_QUERY_BY_REGION_WAIT_INVERTED"/>
++                <enum name="GL_QUERY_BY_REGION_NO_WAIT_INVERTED"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_conservative_depth" supported="gl|glcore"/>
+         <extension name="GL_ARB_copy_buffer" supported="gl|glcore">
+             <require>
+-                <enum name="GL_COPY_READ_BUFFER_BINDING"/>
+                 <enum name="GL_COPY_READ_BUFFER"/>
+-                <enum name="GL_COPY_WRITE_BUFFER_BINDING"/>
+                 <enum name="GL_COPY_WRITE_BUFFER"/>
+                 <command name="glCopyBufferSubData"/>
+             </require>
+@@ -33374,6 +35887,12 @@ typedef unsigned int GLhandleARB;
+                 <command name="glCopyImageSubData"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_cull_distance" supported="gl|glcore">
++            <require>
++                <enum name="GL_MAX_CULL_DISTANCES"/>
++                <enum name="GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_debug_output" supported="gl|glcore">
+             <require>
+                 <enum name="GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"/>
+@@ -33425,6 +35944,139 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_DEPTH_TEXTURE_MODE_ARB"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_derivative_control" supported="gl|glcore"/>
++        <extension name="GL_ARB_direct_state_access" supported="gl|glcore">
++            <require>
++                <enum name="GL_TEXTURE_TARGET"/>
++                <enum name="GL_QUERY_TARGET"/>
++                <enum name="GL_TEXTURE_BINDING_1D"/>
++                <enum name="GL_TEXTURE_BINDING_1D_ARRAY"/>
++                <enum name="GL_TEXTURE_BINDING_2D"/>
++                <enum name="GL_TEXTURE_BINDING_2D_ARRAY"/>
++                <enum name="GL_TEXTURE_BINDING_2D_MULTISAMPLE"/>
++                <enum name="GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY"/>
++                <enum name="GL_TEXTURE_BINDING_3D"/>
++                <enum name="GL_TEXTURE_BINDING_BUFFER"/>
++                <enum name="GL_TEXTURE_BINDING_CUBE_MAP"/>
++                <enum name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"/>
++                <enum name="GL_TEXTURE_BINDING_RECTANGLE"/>
++            </require>
++            <require comment="Transform Feedback object functions">
++                <command name="glCreateTransformFeedbacks"/>
++                <command name="glTransformFeedbackBufferBase"/>
++                <command name="glTransformFeedbackBufferRange"/>
++                <command name="glGetTransformFeedbackiv"/>
++                <command name="glGetTransformFeedbacki_v"/>
++                <command name="glGetTransformFeedbacki64_v"/>
++            </require>
++            <require comment="Buffer object functions">
++                <command name="glCreateBuffers"/>
++                <command name="glNamedBufferStorage"/>
++                <command name="glNamedBufferData"/>
++                <command name="glNamedBufferSubData"/>
++                <command name="glCopyNamedBufferSubData"/>
++                <command name="glClearNamedBufferData"/>
++                <command name="glClearNamedBufferSubData"/>
++                <command name="glMapNamedBuffer"/>
++                <command name="glMapNamedBufferRange"/>
++                <command name="glUnmapNamedBuffer"/>
++                <command name="glFlushMappedNamedBufferRange"/>
++                <command name="glGetNamedBufferParameteriv"/>
++                <command name="glGetNamedBufferParameteri64v"/>
++                <command name="glGetNamedBufferPointerv"/>
++                <command name="glGetNamedBufferSubData"/>
++            </require>
++            <require comment="Framebuffer object functions">
++                <command name="glCreateFramebuffers"/>
++                <command name="glNamedFramebufferRenderbuffer"/>
++                <command name="glNamedFramebufferParameteri"/>
++                <command name="glNamedFramebufferTexture"/>
++                <command name="glNamedFramebufferTextureLayer"/>
++                <command name="glNamedFramebufferDrawBuffer"/>
++                <command name="glNamedFramebufferDrawBuffers"/>
++                <command name="glNamedFramebufferReadBuffer"/>
++                <command name="glInvalidateNamedFramebufferData"/>
++                <command name="glInvalidateNamedFramebufferSubData"/>
++                <command name="glClearNamedFramebufferiv"/>
++                <command name="glClearNamedFramebufferuiv"/>
++                <command name="glClearNamedFramebufferfv"/>
++                <command name="glClearNamedFramebufferfi"/>
++                <command name="glBlitNamedFramebuffer"/>
++                <command name="glCheckNamedFramebufferStatus"/>
++                <command name="glGetNamedFramebufferParameteriv"/>
++                <command name="glGetNamedFramebufferAttachmentParameteriv"/>
++            </require>
++            <require comment="Renderbuffer object functions">
++                <command name="glCreateRenderbuffers"/>
++                <command name="glNamedRenderbufferStorage"/>
++                <command name="glNamedRenderbufferStorageMultisample"/>
++                <command name="glGetNamedRenderbufferParameteriv"/>
++            </require>
++            <require comment="Texture object functions">
++                <command name="glCreateTextures"/>
++                <command name="glTextureBuffer"/>
++                <command name="glTextureBufferRange"/>
++                <command name="glTextureStorage1D"/>
++                <command name="glTextureStorage2D"/>
++                <command name="glTextureStorage3D"/>
++                <command name="glTextureStorage2DMultisample"/>
++                <command name="glTextureStorage3DMultisample"/>
++                <command name="glTextureSubImage1D"/>
++                <command name="glTextureSubImage2D"/>
++                <command name="glTextureSubImage3D"/>
++                <command name="glCompressedTextureSubImage1D"/>
++                <command name="glCompressedTextureSubImage2D"/>
++                <command name="glCompressedTextureSubImage3D"/>
++                <command name="glCopyTextureSubImage1D"/>
++                <command name="glCopyTextureSubImage2D"/>
++                <command name="glCopyTextureSubImage3D"/>
++                <command name="glTextureParameterf"/>
++                <command name="glTextureParameterfv"/>
++                <command name="glTextureParameteri"/>
++                <command name="glTextureParameterIiv"/>
++                <command name="glTextureParameterIuiv"/>
++                <command name="glTextureParameteriv"/>
++                <command name="glGenerateTextureMipmap"/>
++                <command name="glBindTextureUnit"/>
++                <command name="glGetTextureImage"/>
++                <command name="glGetCompressedTextureImage"/>
++                <command name="glGetTextureLevelParameterfv"/>
++                <command name="glGetTextureLevelParameteriv"/>
++                <command name="glGetTextureParameterfv"/>
++                <command name="glGetTextureParameterIiv"/>
++                <command name="glGetTextureParameterIuiv"/>
++                <command name="glGetTextureParameteriv"/>
++            </require>
++            <require comment="Vertex Array object functions">
++                <command name="glCreateVertexArrays"/>
++                <command name="glDisableVertexArrayAttrib"/>
++                <command name="glEnableVertexArrayAttrib"/>
++                <command name="glVertexArrayElementBuffer"/>
++                <command name="glVertexArrayVertexBuffer"/>
++                <command name="glVertexArrayVertexBuffers"/>
++                <command name="glVertexArrayAttribBinding"/>
++                <command name="glVertexArrayAttribFormat"/>
++                <command name="glVertexArrayAttribIFormat"/>
++                <command name="glVertexArrayAttribLFormat"/>
++                <command name="glVertexArrayBindingDivisor"/>
++                <command name="glGetVertexArrayiv"/>
++                <command name="glGetVertexArrayIndexediv"/>
++                <command name="glGetVertexArrayIndexed64iv"/>
++            </require>
++            <require comment="Sampler object functions">
++                <command name="glCreateSamplers"/>
++            </require>
++            <require comment="Program Pipeline object functions">
++                <command name="glCreateProgramPipelines"/>
++            </require>
++            <require comment="Query object functions">
++                <command name="glCreateQueries"/>
++                <command name="glGetQueryBufferObjecti64v"/>
++                <command name="glGetQueryBufferObjectiv"/>
++                <command name="glGetQueryBufferObjectui64v"/>
++                <command name="glGetQueryBufferObjectuiv"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_draw_buffers" supported="gl">
+             <require>
+                 <enum name="GL_MAX_DRAW_BUFFERS_ARB"/>
+@@ -33638,11 +36290,6 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNSIGNED_INT_24_8"/>
+                 <enum name="GL_DEPTH24_STENCIL8"/>
+                 <enum name="GL_TEXTURE_STENCIL_SIZE"/>
+-                <enum name="GL_TEXTURE_RED_TYPE"/>
+-                <enum name="GL_TEXTURE_GREEN_TYPE"/>
+-                <enum name="GL_TEXTURE_BLUE_TYPE"/>
+-                <enum name="GL_TEXTURE_ALPHA_TYPE"/>
+-                <enum name="GL_TEXTURE_DEPTH_TYPE"/>
+                 <enum name="GL_UNSIGNED_NORMALIZED"/>
+                 <enum name="GL_FRAMEBUFFER_BINDING"/>
+                 <enum name="GL_DRAW_FRAMEBUFFER_BINDING"/>
+@@ -33721,8 +36368,6 @@ typedef unsigned int GLhandleARB;
+             </require>
+             <require api="gl" profile="compatibility">
+                 <enum name="GL_INDEX"/>
+-                <enum name="GL_TEXTURE_LUMINANCE_TYPE"/>
+-                <enum name="GL_TEXTURE_INTENSITY_TYPE"/>
+             </require>
+         </extension>
+         <extension name="GL_ARB_framebuffer_sRGB" supported="gl|glcore">
+@@ -33769,6 +36414,12 @@ typedef unsigned int GLhandleARB;
+                 <command name="glProgramParameteri"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_get_texture_sub_image" supported="gl|glcore">
++            <require>
++                <command name="glGetTextureSubImage"/>
++                <command name="glGetCompressedTextureSubImage"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_gpu_shader5" supported="gl|glcore">
+             <require>
+                 <enum name="GL_GEOMETRY_SHADER_INVOCATIONS"/>
+@@ -34252,6 +36903,21 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_ANY_SAMPLES_PASSED"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_pipeline_statistics_query" supported="gl|glcore">
++            <require>
++                <enum name="GL_VERTICES_SUBMITTED_ARB"/>
++                <enum name="GL_PRIMITIVES_SUBMITTED_ARB"/>
++                <enum name="GL_VERTEX_SHADER_INVOCATIONS_ARB"/>
++                <enum name="GL_TESS_CONTROL_SHADER_PATCHES_ARB"/>
++                <enum name="GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB"/>
++                <enum name="GL_GEOMETRY_SHADER_INVOCATIONS"/>
++                <enum name="GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB"/>
++                <enum name="GL_FRAGMENT_SHADER_INVOCATIONS_ARB"/>
++                <enum name="GL_COMPUTE_SHADER_INVOCATIONS_ARB"/>
++                <enum name="GL_CLIPPING_INPUT_PRIMITIVES_ARB"/>
++                <enum name="GL_CLIPPING_OUTPUT_PRIMITIVES_ARB"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_pixel_buffer_object" supported="gl">
+             <require>
+                 <enum name="GL_PIXEL_PACK_BUFFER_ARB"/>
+@@ -34730,10 +37396,8 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetProgramStageiv"/>
+             </require>
+         </extension>
+-        <extension name="GL_ARB_shader_texture_lod" supported="gl">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_ARB_shader_texture_image_samples" supported="gl|glcore"/>
++        <extension name="GL_ARB_shader_texture_lod" supported="gl"/>
+         <extension name="GL_ARB_shading_language_100" supported="gl">
+             <require>
+                 <enum name="GL_SHADING_LANGUAGE_VERSION_ARB"/>
+@@ -34766,11 +37430,24 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_TEXTURE_COMPARE_FAIL_VALUE_ARB"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_sparse_buffer" supported="gl|glcore">
++            <require>
++                <enum name="GL_SPARSE_STORAGE_BIT_ARB"/>
++                <enum name="GL_SPARSE_BUFFER_PAGE_SIZE_ARB"/>
++                <command name="glBufferPageCommitmentARB"/>
++            </require>
++            <require comment="Supported only if GL_EXT_direct_state_access is supported">
++                <command name="glNamedBufferPageCommitmentEXT"/>
++            </require>
++            <require comment="Supported only if GL_ARb_direct_state_access or GL 4.5 is supported">
++                <command name="glNamedBufferPageCommitmentARB"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_sparse_texture" supported="gl|glcore">
+             <require>
+                 <enum name="GL_TEXTURE_SPARSE_ARB"/>
+                 <enum name="GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"/>
+-                <enum name="GL_MIN_SPARSE_LEVEL_ARB"/>
++                <enum name="GL_NUM_SPARSE_LEVELS_ARB"/>
+                 <enum name="GL_NUM_VIRTUAL_PAGE_SIZES_ARB"/>
+                 <enum name="GL_VIRTUAL_PAGE_SIZE_X_ARB"/>
+                 <enum name="GL_VIRTUAL_PAGE_SIZE_Y_ARB"/>
+@@ -34856,6 +37533,11 @@ typedef unsigned int GLhandleARB;
+                 <command name="glPatchParameterfv"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_texture_barrier" supported="gl|glcore">
++            <require>
++                <command name="glTextureBarrier"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_texture_border_clamp" supported="gl">
+             <require>
+                 <enum name="GL_CLAMP_TO_BORDER_ARB"/>
+@@ -35148,9 +37830,7 @@ typedef unsigned int GLhandleARB;
+         <extension name="GL_ARB_transform_feedback2" supported="gl|glcore">
+             <require>
+                 <enum name="GL_TRANSFORM_FEEDBACK"/>
+-                <enum name="GL_TRANSFORM_FEEDBACK_PAUSED"/>
+                 <enum name="GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED"/>
+-                <enum name="GL_TRANSFORM_FEEDBACK_ACTIVE"/>
+                 <enum name="GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE"/>
+                 <enum name="GL_TRANSFORM_FEEDBACK_BINDING"/>
+                 <command name="glBindTransformFeedback"/>
+@@ -35178,6 +37858,12 @@ typedef unsigned int GLhandleARB;
+                 <command name="glDrawTransformFeedbackStreamInstanced"/>
+             </require>
+         </extension>
++        <extension name="GL_ARB_transform_feedback_overflow_query" supported="gl|glcore">
++            <require>
++                <enum name="GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB"/>
++                <enum name="GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB"/>
++            </require>
++        </extension>
+         <extension name="GL_ARB_transpose_matrix" supported="gl">
+             <require>
+                 <enum name="GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"/>
+@@ -35232,6 +37918,9 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetActiveUniformBlockiv"/>
+                 <command name="glGetActiveUniformBlockName"/>
+                 <command name="glUniformBlockBinding"/>
++                <command name="glBindBufferRange"/>
++                <command name="glBindBufferBase"/>
++                <command name="glGetIntegeri_v"/>
+             </require>
+         </extension>
+         <extension name="GL_ARB_vertex_array_bgra" supported="gl|glcore">
+@@ -36069,6 +38758,13 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVertexBlendEnvfATI"/>
+             </require>
+         </extension>
++        <extension name="GL_DMP_program_binary" supported="gles2">
++            <require>
++                <enum name="GL_SMAPHS30_PROGRAM_BINARY_DMP"/>
++                <enum name="GL_SMAPHS_PROGRAM_BINARY_DMP"/>
++                <enum name="GL_DMP_PROGRAM_BINARY_DMP"/>
++            </require>
++        </extension>
+         <extension name="GL_DMP_shader_binary" supported="gles2">
+             <require>
+                 <enum name="GL_SHADER_BINARY_DMP"/>
+@@ -36087,6 +38783,13 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_ABGR_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_base_instance" supported="gles2">
++            <require>
++                <command name="glDrawArraysInstancedBaseInstanceEXT"/>
++                <command name="glDrawElementsInstancedBaseInstanceEXT"/>
++                <command name="glDrawElementsInstancedBaseVertexBaseInstanceEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_bgra" supported="gl">
+             <require>
+                 <enum name="GL_BGR_EXT"/>
+@@ -36150,6 +38853,21 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FUNC_REVERSE_SUBTRACT_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_buffer_storage" supported="gles2">
++            <require>
++                <enum name="GL_MAP_READ_BIT"/>
++                <enum name="GL_MAP_WRITE_BIT"/>
++                <enum name="GL_MAP_PERSISTENT_BIT"/>
++                <enum name="GL_MAP_COHERENT_BIT"/>
++                <enum name="GL_DYNAMIC_STORAGE_BIT"/>
++                <enum name="GL_CLIENT_STORAGE_BIT"/>
++                <enum name="GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT"/>
++                <enum name="GL_BUFFER_IMMUTABLE_STORAGE"/>
++                <enum name="GL_BUFFER_STORAGE_FLAGS"/>
++                <command name="glBufferStorageEXT"/>
++                <!-- <command name="glNamedBufferStorageEXT"/> -->
++            </require>
++        </extension>
+         <extension name="GL_EXT_clip_volume_hint" supported="gl">
+             <require>
+                 <enum name="GL_CLIP_VOLUME_CLIPPING_HINT_EXT"/>
+@@ -36264,6 +38982,11 @@ typedef unsigned int GLhandleARB;
+                 <command name="glBinormalPointerEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_copy_image" supported="gles2">
++            <require>
++                <command name="glCopyImageSubDataEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_copy_texture" supported="gl">
+             <require>
+                 <command name="glCopyTexImage1DEXT"/>
+@@ -36745,6 +39468,54 @@ typedef unsigned int GLhandleARB;
+                 <command name="glIsEnabledIndexedEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_draw_buffers_indexed" supported="gles2">
++            <require>
++                <enum name="GL_BLEND_EQUATION_RGB"/>
++                <enum name="GL_BLEND_EQUATION_ALPHA"/>
++                <enum name="GL_BLEND_SRC_RGB"/>
++                <enum name="GL_BLEND_SRC_ALPHA"/>
++                <enum name="GL_BLEND_DST_RGB"/>
++                <enum name="GL_BLEND_DST_ALPHA"/>
++                <enum name="GL_COLOR_WRITEMASK"/>
++                <enum name="GL_BLEND"/>
++                <enum name="GL_FUNC_ADD"/>
++                <enum name="GL_FUNC_SUBTRACT"/>
++                <enum name="GL_FUNC_REVERSE_SUBTRACT"/>
++                <enum name="GL_MIN"/>
++                <enum name="GL_MAX"/>
++                <enum name="GL_ZERO"/>
++                <enum name="GL_ONE"/>
++                <enum name="GL_SRC_COLOR"/>
++                <enum name="GL_ONE_MINUS_SRC_COLOR"/>
++                <enum name="GL_DST_COLOR"/>
++                <enum name="GL_ONE_MINUS_DST_COLOR"/>
++                <enum name="GL_SRC_ALPHA"/>
++                <enum name="GL_ONE_MINUS_SRC_ALPHA"/>
++                <enum name="GL_DST_ALPHA"/>
++                <enum name="GL_ONE_MINUS_DST_ALPHA"/>
++                <enum name="GL_CONSTANT_COLOR"/>
++                <enum name="GL_ONE_MINUS_CONSTANT_COLOR"/>
++                <enum name="GL_CONSTANT_ALPHA"/>
++                <enum name="GL_ONE_MINUS_CONSTANT_ALPHA"/>
++                <enum name="GL_SRC_ALPHA_SATURATE"/>
++                <command name="glEnableiEXT"/>
++                <command name="glDisableiEXT"/>
++                <command name="glBlendEquationiEXT"/>
++                <command name="glBlendEquationSeparateiEXT"/>
++                <command name="glBlendFunciEXT"/>
++                <command name="glBlendFuncSeparateiEXT"/>
++                <command name="glColorMaskiEXT"/>
++                <command name="glIsEnablediEXT"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_draw_elements_base_vertex" supported="gles2">
++            <require>
++                <command name="glDrawElementsBaseVertexEXT"/>
++                <command name="glDrawRangeElementsBaseVertexEXT" comment="Supported only if OpenGL ES 3.0 is supported"/>
++                <command name="glDrawElementsInstancedBaseVertexEXT" comment="Supported only if OpenGL ES 3.0 is supported"/>
++                <command name="glMultiDrawElementsBaseVertexEXT" comment="Supported only if GL_EXT_multi_draw_arrays is supported"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_draw_instanced" supported="gl|gles2">
+             <require>
+                 <command name="glDrawArraysInstancedEXT"/>
+@@ -36758,6 +39529,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glDrawRangeElementsEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_float_blend" supported="gles2"/>
+         <extension name="GL_EXT_fog_coord" supported="gl">
+             <require>
+                 <enum name="GL_FOG_COORDINATE_SOURCE_EXT"/>
+@@ -36876,6 +39648,45 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FRAMEBUFFER_SRGB_CAPABLE_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_geometry_point_size" supported="gles2"/>
++        <extension name="GL_EXT_geometry_shader" supported="gles2">
++            <require>
++                <enum name="GL_GEOMETRY_SHADER_EXT"/>
++                <enum name="GL_GEOMETRY_SHADER_BIT_EXT"/>
++                <enum name="GL_GEOMETRY_LINKED_VERTICES_OUT_EXT"/>
++                <enum name="GL_GEOMETRY_LINKED_INPUT_TYPE_EXT"/>
++                <enum name="GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT"/>
++                <enum name="GL_GEOMETRY_SHADER_INVOCATIONS_EXT"/>
++                <enum name="GL_LAYER_PROVOKING_VERTEX_EXT"/>
++                <enum name="GL_LINES_ADJACENCY_EXT"/>
++                <enum name="GL_LINE_STRIP_ADJACENCY_EXT"/>
++                <enum name="GL_TRIANGLES_ADJACENCY_EXT"/>
++                <enum name="GL_TRIANGLE_STRIP_ADJACENCY_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT"/>
++                <enum name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT"/>
++                <enum name="GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT"/>
++                <enum name="GL_FIRST_VERTEX_CONVENTION_EXT"/>
++                <enum name="GL_LAST_VERTEX_CONVENTION_EXT"/>
++                <enum name="GL_UNDEFINED_VERTEX_EXT"/>
++                <enum name="GL_PRIMITIVES_GENERATED_EXT"/>
++                <enum name="GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT"/>
++                <enum name="GL_MAX_FRAMEBUFFER_LAYERS_EXT"/>
++                <enum name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT"/>
++                <enum name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT"/>
++                <enum name="GL_REFERENCED_BY_GEOMETRY_SHADER_EXT"/>
++                <command name="glFramebufferTextureEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_geometry_shader4" supported="gl">
+             <require>
+                 <enum name="GL_GEOMETRY_SHADER_EXT"/>
+@@ -36950,6 +39761,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glUniform4uivEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_gpu_shader5" supported="gles2"/>
+         <extension name="GL_EXT_histogram" supported="gl">
+             <require>
+                 <enum name="GL_HISTOGRAM_EXT"/>
+@@ -37006,10 +39818,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glIndexMaterialEXT"/>
+             </require>
+         </extension>
+-        <extension name="GL_EXT_index_texture" supported="gl">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_EXT_index_texture" supported="gl"/>
+         <extension name="GL_EXT_instanced_arrays" supported="gles2">
+             <require>
+                 <enum name="GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT"/>
+@@ -37047,16 +39856,19 @@ typedef unsigned int GLhandleARB;
+                 <command name="glFlushMappedBufferRangeEXT"/>
+             </require>
+         </extension>
+-        <extension name="GL_EXT_misc_attribute" supported="gl">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_EXT_misc_attribute" supported="gl"/>
+         <extension name="GL_EXT_multi_draw_arrays" supported="gl|gles1|gles2">
+             <require>
+                 <command name="glMultiDrawArraysEXT"/>
+                 <command name="glMultiDrawElementsEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_multi_draw_indirect" supported="gles2">
++            <require>
++                <command name="glMultiDrawArraysIndirectEXT"/>
++                <command name="glMultiDrawElementsIndirectEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_multisample" supported="gl">
+             <require>
+                 <enum name="GL_MULTISAMPLE_EXT"/>
+@@ -37184,10 +39996,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetPixelTransformParameterfvEXT"/>
+             </require>
+         </extension>
+-        <extension name="GL_EXT_pixel_transform_color_table" supported="gl">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_EXT_pixel_transform_color_table" supported="gl"/>
+         <extension name="GL_EXT_point_parameters" supported="gl">
+             <require>
+                 <enum name="GL_POINT_SIZE_MIN_EXT"/>
+@@ -37206,6 +40015,19 @@ typedef unsigned int GLhandleARB;
+                 <command name="glPolygonOffsetEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_polygon_offset_clamp" supported="gl">
++            <require>
++                <enum name="GL_POLYGON_OFFSET_CLAMP_EXT"/>
++                <command name="glPolygonOffsetClampEXT"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_post_depth_coverage" supported="gl|gles2"/>
++        <extension name="GL_EXT_primitive_bounding_box" supported="gles2">
++            <require>
++                <enum name="GL_PRIMITIVE_BOUNDING_BOX_EXT"/>
++                <command name="glPrimitiveBoundingBoxEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_provoking_vertex" supported="gl">
+             <require>
+                 <enum name="GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT"/>
+@@ -37221,6 +40043,19 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT"/>
+                 <enum name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT"/>
+                 <enum name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT"/>
++                <enum name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG"/>
++                <enum name="GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_raster_multisample" supported="gl|gles2">
++            <require>
++                <enum name="GL_RASTER_MULTISAMPLE_EXT"/>
++                <enum name="GL_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_MAX_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"/>
++                <enum name="GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT"/>
++                <enum name="GL_EFFECTIVE_RASTER_SAMPLES_EXT"/>
++                <command name="glRasterSamplesEXT"/>
+             </require>
+         </extension>
+         <extension name="GL_EXT_read_format_bgra" supported="gles1|gles2">
+@@ -37230,6 +40065,18 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_render_snorm" supported="gles2">
++            <require>
++                <enum name="GL_BYTE"/>
++                <enum name="GL_SHORT"/>
++                <enum name="GL_R8_SNORM"/>
++                <enum name="GL_RG8_SNORM"/>
++                <enum name="GL_RGBA8_SNORM"/>
++                <enum name="GL_R16_SNORM_EXT"/>
++                <enum name="GL_RG16_SNORM_EXT"/>
++                <enum name="GL_RGBA16_SNORM_EXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_rescale_normal" supported="gl">
+             <require>
+                 <enum name="GL_RESCALE_NORMAL_EXT"/>
+@@ -37367,6 +40214,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_shader_image_load_formatted" supported="gl"/>
+         <extension name="GL_EXT_shader_image_load_store" supported="gl">
+             <require>
+                 <enum name="GL_MAX_IMAGE_UNITS_EXT"/>
+@@ -37428,7 +40276,9 @@ typedef unsigned int GLhandleARB;
+                 <command name="glMemoryBarrierEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_shader_implicit_conversions" supported="gles2"/>
+         <extension name="GL_EXT_shader_integer_mix" supported="gl|gles2"/>
++        <extension name="GL_EXT_shader_io_blocks" supported="gles2"/>
+         <extension name="GL_EXT_shader_pixel_local_storage" supported="gles2">
+             <require>
+                 <enum name="GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT"/>
+@@ -37451,6 +40301,29 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_SHARED_TEXTURE_PALETTE_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_sparse_texture" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_SPARSE_EXT"/>
++                <enum name="GL_VIRTUAL_PAGE_SIZE_INDEX_EXT"/>
++                <enum name="GL_NUM_SPARSE_LEVELS_EXT"/>
++                <enum name="GL_NUM_VIRTUAL_PAGE_SIZES_EXT"/>
++                <enum name="GL_VIRTUAL_PAGE_SIZE_X_EXT"/>
++                <enum name="GL_VIRTUAL_PAGE_SIZE_Y_EXT"/>
++                <enum name="GL_VIRTUAL_PAGE_SIZE_Z_EXT"/>
++                <enum name="GL_TEXTURE_2D"/>
++                <enum name="GL_TEXTURE_2D_ARRAY"/>
++                <enum name="GL_TEXTURE_CUBE_MAP"/>
++                <enum name="GL_TEXTURE_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_TEXTURE_3D"/>
++                <enum name="GL_MAX_SPARSE_TEXTURE_SIZE_EXT"/>
++                <enum name="GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT"/>
++                <enum name="GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT"/>
++                <enum name="GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT"/>
++                <command name="glTexPageCommitmentARB"/>
++                <!-- <command name="glTexturePageCommitmentEXT"/> -->
++            </require>
++        </extension>
++        <extension name="GL_EXT_sparse_texture2" supported="gl"/>
+         <extension name="GL_EXT_stencil_clear_tag" supported="gl">
+             <require>
+                 <enum name="GL_STENCIL_TAG_BITS_EXT"/>
+@@ -37477,6 +40350,59 @@ typedef unsigned int GLhandleARB;
+                 <command name="glTexSubImage2DEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_tessellation_point_size" supported="gles2"/>
++        <extension name="GL_EXT_tessellation_shader" supported="gles2">
++            <require>
++                <enum name="GL_PATCHES_EXT"/>
++                <enum name="GL_PATCH_VERTICES_EXT"/>
++                <enum name="GL_TESS_CONTROL_OUTPUT_VERTICES_EXT"/>
++                <enum name="GL_TESS_GEN_MODE_EXT"/>
++                <enum name="GL_TESS_GEN_SPACING_EXT"/>
++                <enum name="GL_TESS_GEN_VERTEX_ORDER_EXT"/>
++                <enum name="GL_TESS_GEN_POINT_MODE_EXT"/>
++                <enum name="GL_TRIANGLES"/>
++                <enum name="GL_ISOLINES_EXT"/>
++                <enum name="GL_QUADS_EXT"/>
++                <enum name="GL_EQUAL"/>
++                <enum name="GL_FRACTIONAL_ODD_EXT"/>
++                <enum name="GL_FRACTIONAL_EVEN_EXT"/>
++                <enum name="GL_CCW"/>
++                <enum name="GL_CW"/>
++                <enum name="GL_MAX_PATCH_VERTICES_EXT"/>
++                <enum name="GL_MAX_TESS_GEN_LEVEL_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_PATCH_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT"/>
++                <enum name="GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT"/>
++                <enum name="GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT"/>
++                <enum name="GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED"/>
++                <enum name="GL_IS_PER_PATCH_EXT"/>
++                <enum name="GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT"/>
++                <enum name="GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT"/>
++                <enum name="GL_TESS_CONTROL_SHADER_EXT"/>
++                <enum name="GL_TESS_EVALUATION_SHADER_EXT"/>
++                <enum name="GL_TESS_CONTROL_SHADER_BIT_EXT"/>
++                <enum name="GL_TESS_EVALUATION_SHADER_BIT_EXT"/>
++                <command name="glPatchParameteriEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_texture" supported="gl">
+             <require>
+                 <enum name="GL_ALPHA4_EXT"/>
+@@ -37550,6 +40476,41 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_MAX_ARRAY_TEXTURE_LAYERS_EXT"/>
+                 <enum name="GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT"/>
+                 <enum name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT"/>
++                <command name="glFramebufferTextureLayerEXT"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_texture_border_clamp" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_BORDER_COLOR_EXT"/>
++                <enum name="GL_CLAMP_TO_BORDER_EXT"/>
++                <command name="glTexParameterIivEXT"/>
++                <command name="glTexParameterIuivEXT"/>
++                <command name="glGetTexParameterIivEXT"/>
++                <command name="glGetTexParameterIuivEXT"/>
++                <command name="glSamplerParameterIivEXT"/>
++                <command name="glSamplerParameterIuivEXT"/>
++                <command name="glGetSamplerParameterIivEXT"/>
++                <command name="glGetSamplerParameterIuivEXT"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_texture_buffer" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_BUFFER_EXT"/>
++                <enum name="GL_TEXTURE_BUFFER_BINDING_EXT"/>
++                <enum name="GL_MAX_TEXTURE_BUFFER_SIZE_EXT"/>
++                <enum name="GL_TEXTURE_BINDING_BUFFER_EXT"/>
++                <enum name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT"/>
++                <enum name="GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT"/>
++                <enum name="GL_SAMPLER_BUFFER_EXT"/>
++                <enum name="GL_INT_SAMPLER_BUFFER_EXT"/>
++                <enum name="GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT"/>
++                <enum name="GL_IMAGE_BUFFER_EXT"/>
++                <enum name="GL_INT_IMAGE_BUFFER_EXT"/>
++                <enum name="GL_UNSIGNED_INT_IMAGE_BUFFER_EXT"/>
++                <enum name="GL_TEXTURE_BUFFER_OFFSET_EXT"/>
++                <enum name="GL_TEXTURE_BUFFER_SIZE_EXT"/>
++                <command name="glTexBufferEXT"/>
++                <command name="glTexBufferRangeEXT"/>
+             </require>
+         </extension>
+         <extension name="GL_EXT_texture_buffer_object" supported="gl">
+@@ -37608,10 +40569,20 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT"/>
+             </require>
+         </extension>
+-        <extension name="GL_EXT_texture_env_add" supported="gl">
++        <extension name="GL_EXT_texture_cube_map_array" supported="gles2">
+             <require>
++                <enum name="GL_TEXTURE_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT"/>
++                <enum name="GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_IMAGE_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT"/>
++                <enum name="GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_texture_env_add" supported="gl"/>
+         <extension name="GL_EXT_texture_env_combine" supported="gl">
+             <require>
+                 <enum name="GL_COMBINE_EXT"/>
+@@ -37649,6 +40620,17 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_texture_filter_minmax" supported="gl|gles2">
++            <require>
++                <enum name="GL_RASTER_MULTISAMPLE_EXT"/>
++                <enum name="GL_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_MAX_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"/>
++                <enum name="GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT"/>
++                <enum name="GL_EFFECTIVE_RASTER_SAMPLES_EXT"/>
++                <command name="glRasterSamplesEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_texture_format_BGRA8888" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_BGRA_EXT"/>
+@@ -37725,6 +40707,18 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_MIRROR_CLAMP_TO_BORDER_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_texture_norm16" supported="gles2">
++            <require>
++                <enum name="GL_R16_EXT"/>
++                <enum name="GL_RG16_EXT"/>
++                <enum name="GL_RGBA16_EXT"/>
++                <enum name="GL_RGB16_EXT"/>
++                <enum name="GL_R16_SNORM_EXT"/>
++                <enum name="GL_RG16_SNORM_EXT"/>
++                <enum name="GL_RGB16_SNORM_EXT"/>
++                <enum name="GL_RGBA16_SNORM_EXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_texture_object" supported="gl">
+             <require>
+                 <enum name="GL_TEXTURE_PRIORITY_EXT"/>
+@@ -37782,6 +40776,16 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_SKIP_DECODE_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_texture_sRGB_R8" supported="gles2">
++            <require>
++                <enum name="GL_SR8_EXT"/>
++            </require>
++        </extension>
++        <extension name="GL_EXT_texture_sRGB_RG8" supported="gles2">
++            <require>
++                <enum name="GL_SRG8_EXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_texture_shared_exponent" supported="gl">
+             <require>
+                 <enum name="GL_RGB9_E5_EXT"/>
+@@ -37867,6 +40871,16 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNSIGNED_INT_2_10_10_10_REV_EXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_texture_view" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_VIEW_MIN_LEVEL_EXT"/>
++                <enum name="GL_TEXTURE_VIEW_NUM_LEVELS_EXT"/>
++                <enum name="GL_TEXTURE_VIEW_MIN_LAYER_EXT"/>
++                <enum name="GL_TEXTURE_VIEW_NUM_LAYERS_EXT"/>
++                <enum name="GL_TEXTURE_IMMUTABLE_LEVELS"/>
++                <command name="glTextureViewEXT"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_timer_query" supported="gl">
+             <require>
+                 <enum name="GL_TIME_ELAPSED_EXT"/>
+@@ -38160,6 +41174,14 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVertexWeightPointerEXT"/>
+             </require>
+         </extension>
++        <extension name="GL_EXT_YUV_target" supported="gles2">
++            <require>
++                <enum name="GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT"/>
++                <enum name="GL_TEXTURE_EXTERNAL_OES"/>
++                <enum name="GL_TEXTURE_BINDING_EXTERNAL_OES"/>
++                <enum name="GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES"/>
++            </require>
++        </extension>
+         <extension name="GL_EXT_x11_sync_object" supported="gl">
+             <require>
+                 <enum name="GL_SYNC_X11_FENCE_EXT"/>
+@@ -38428,25 +41450,41 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetPerfQueryInfoINTEL"/>
+             </require>
+         </extension>
+-        <extension name="GL_KHR_blend_equation_advanced" supported="gles2">
++        <extension name="GL_KHR_blend_equation_advanced" supported="gl|gles2">
+             <require>
+-                <command name="glBlendBarrierKHR"/>                                         
+-                <enum name="GL_BLEND_ADVANCED_COHERENT_KHR"/>                               
+-                <enum name="GL_MULTIPLY_KHR"/>                                              
+-                <enum name="GL_SCREEN_KHR"/>                                                
+-                <enum name="GL_OVERLAY_KHR"/>                                               
+-                <enum name="GL_DARKEN_KHR"/>                                                
+-                <enum name="GL_LIGHTEN_KHR"/>                                               
+-                <enum name="GL_COLORDODGE_KHR"/>                                            
+-                <enum name="GL_COLORBURN_KHR"/>                                             
+-                <enum name="GL_HARDLIGHT_KHR"/>                                             
+-                <enum name="GL_SOFTLIGHT_KHR"/>                                             
+-                <enum name="GL_DIFFERENCE_KHR"/>                                            
+-                <enum name="GL_EXCLUSION_KHR"/>                                             
+-                <enum name="GL_HSL_HUE_KHR"/>                                               
+-                <enum name="GL_HSL_SATURATION_KHR"/>                                        
+-                <enum name="GL_HSL_COLOR_KHR"/>                                             
+-                <enum name="GL_HSL_LUMINOSITY_KHR"/>                                        
++                <command name="glBlendBarrierKHR"/>
++                <enum name="GL_MULTIPLY_KHR"/>
++                <enum name="GL_SCREEN_KHR"/>
++                <enum name="GL_OVERLAY_KHR"/>
++                <enum name="GL_DARKEN_KHR"/>
++                <enum name="GL_LIGHTEN_KHR"/>
++                <enum name="GL_COLORDODGE_KHR"/>
++                <enum name="GL_COLORBURN_KHR"/>
++                <enum name="GL_HARDLIGHT_KHR"/>
++                <enum name="GL_SOFTLIGHT_KHR"/>
++                <enum name="GL_DIFFERENCE_KHR"/>
++                <enum name="GL_EXCLUSION_KHR"/>
++                <enum name="GL_HSL_HUE_KHR"/>
++                <enum name="GL_HSL_SATURATION_KHR"/>
++                <enum name="GL_HSL_COLOR_KHR"/>
++                <enum name="GL_HSL_LUMINOSITY_KHR"/>
++            </require>
++        </extension>
++        <extension name="GL_KHR_blend_equation_advanced_coherent" supported="gl|gles2">
++            <require comment="Otherwise identical to GL_KHR_blend_equation_advanced, just different semantic behavior">
++                <enum name="GL_BLEND_ADVANCED_COHERENT_KHR"/>
++            </require>
++        </extension>
++        <extension name="GL_KHR_context_flush_control" supported="gl|glcore|gles2">
++            <require api="gl" comment="KHR extensions *mandate* suffixes for ES, unlike for GL">
++                <enum name="GL_CONTEXT_RELEASE_BEHAVIOR"/>
++                <enum name="GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH"/>
++                <enum name="GL_NONE"/>
++            </require>
++            <require api="gles2">
++                <enum name="GL_CONTEXT_RELEASE_BEHAVIOR_KHR"/>
++                <enum name="GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR"/>
++                <enum name="GL_NONE"/>
+             </require>
+         </extension>
+         <extension name="GL_KHR_debug" supported="gl|glcore|gles2">
+@@ -38478,6 +41516,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_PROGRAM"/>
+                 <enum name="GL_VERTEX_ARRAY"/>
+                 <enum name="GL_QUERY"/>
++                <enum name="GL_PROGRAM_PIPELINE"/>
+                 <enum name="GL_SAMPLER"/>
+                 <enum name="GL_MAX_LABEL_LENGTH"/>
+                 <enum name="GL_MAX_DEBUG_MESSAGE_LENGTH"/>
+@@ -38530,6 +41569,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_PROGRAM_KHR"/>
+                 <enum name="GL_VERTEX_ARRAY_KHR"/>
+                 <enum name="GL_QUERY_KHR"/>
++                <enum name="GL_PROGRAM_PIPELINE_KHR"/>
+                 <enum name="GL_SAMPLER_KHR"/>
+                 <enum name="GL_MAX_LABEL_LENGTH_KHR"/>
+                 <enum name="GL_MAX_DEBUG_MESSAGE_LENGTH_KHR"/>
+@@ -38554,13 +41594,45 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetObjectPtrLabelKHR"/>
+                 <command name="glGetPointervKHR"/>
+             </require>
+-            <require api="gl" comment="Could benefit from api/profile attributes at enum tag level">
+-                <enum name="GL_PROGRAM_PIPELINE"/>
+-            </require>
+             <require api="gl" profile="compatibility">
+                 <enum name="GL_DISPLAY_LIST"/>
+             </require>
+         </extension>
++        <extension name="GL_KHR_robust_buffer_access_behavior" supported="gl|glcore|gles2"/>
++        <extension name="GL_KHR_robustness" supported="gl|glcore|gles2">
++            <require api="gl" comment="KHR extensions *mandate* suffixes for ES, unlike for GL">
++                <enum name="GL_NO_ERROR"/>
++                <enum name="GL_CONTEXT_ROBUST_ACCESS"/>
++                <enum name="GL_LOSE_CONTEXT_ON_RESET"/>
++                <enum name="GL_GUILTY_CONTEXT_RESET"/>
++                <enum name="GL_INNOCENT_CONTEXT_RESET"/>
++                <enum name="GL_UNKNOWN_CONTEXT_RESET"/>
++                <enum name="GL_RESET_NOTIFICATION_STRATEGY"/>
++                <enum name="GL_NO_RESET_NOTIFICATION"/>
++                <enum name="GL_CONTEXT_LOST"/>
++                <command name="glGetGraphicsResetStatus"/>
++                <command name="glReadnPixels"/>
++                <command name="glGetnUniformfv"/>
++                <command name="glGetnUniformiv"/>
++                <command name="glGetnUniformuiv"/>
++            </require>
++            <require api="gles2">
++                <enum name="GL_NO_ERROR"/>
++                <enum name="GL_CONTEXT_ROBUST_ACCESS_KHR"/>
++                <enum name="GL_LOSE_CONTEXT_ON_RESET_KHR"/>
++                <enum name="GL_GUILTY_CONTEXT_RESET_KHR"/>
++                <enum name="GL_INNOCENT_CONTEXT_RESET_KHR"/>
++                <enum name="GL_UNKNOWN_CONTEXT_RESET_KHR"/>
++                <enum name="GL_RESET_NOTIFICATION_STRATEGY_KHR"/>
++                <enum name="GL_NO_RESET_NOTIFICATION_KHR"/>
++                <enum name="GL_CONTEXT_LOST_KHR"/>
++                <command name="glGetGraphicsResetStatusKHR"/>
++                <command name="glReadnPixelsKHR"/>
++                <command name="glGetnUniformfvKHR"/>
++                <command name="glGetnUniformivKHR"/>
++                <command name="glGetnUniformuivKHR"/>
++            </require>
++        </extension>
+         <extension name="GL_KHR_texture_compression_astc_hdr" supported="gl|glcore|gles2">
+             <require>
+                 <enum name="GL_COMPRESSED_RGBA_ASTC_4x4_KHR"/>
+@@ -38701,7 +41773,13 @@ typedef unsigned int GLhandleARB;
+                 <command name="glMultiDrawElementsIndirectBindlessNV"/>
+             </require>
+         </extension>
+-        <extension name="GL_NV_bindless_texture" supported="gl">
++        <extension name="GL_NV_bindless_multi_draw_indirect_count" supported="gl">
++            <require>
++                <command name="glMultiDrawArraysIndirectBindlessCountNV"/>
++                <command name="glMultiDrawElementsIndirectBindlessCountNV"/>
++            </require>
++        </extension>
++        <extension name="GL_NV_bindless_texture" supported="gl|gles2">
+             <require>
+                 <command name="glGetTextureHandleNV"/>
+                 <command name="glGetTextureSamplerHandleNV"/>
+@@ -38781,13 +41859,53 @@ typedef unsigned int GLhandleARB;
+             </require>
+         </extension>
+         <extension name="GL_NV_blend_square" supported="gl"/>
++        <extension name="GL_NV_command_list" supported="gl">
++            <require>
++                <enum name="GL_TERMINATE_SEQUENCE_COMMAND_NV"/>
++                <enum name="GL_NOP_COMMAND_NV"/>
++                <enum name="GL_DRAW_ELEMENTS_COMMAND_NV"/>
++                <enum name="GL_DRAW_ARRAYS_COMMAND_NV"/>
++                <enum name="GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"/>
++                <enum name="GL_DRAW_ARRAYS_STRIP_COMMAND_NV"/>
++                <enum name="GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"/>
++                <enum name="GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"/>
++                <enum name="GL_ELEMENT_ADDRESS_COMMAND_NV"/>
++                <enum name="GL_ATTRIBUTE_ADDRESS_COMMAND_NV"/>
++                <enum name="GL_UNIFORM_ADDRESS_COMMAND_NV"/>
++                <enum name="GL_BLEND_COLOR_COMMAND_NV"/>
++                <enum name="GL_STENCIL_REF_COMMAND_NV"/>
++                <enum name="GL_LINE_WIDTH_COMMAND_NV"/>
++                <enum name="GL_POLYGON_OFFSET_COMMAND_NV"/>
++                <enum name="GL_ALPHA_REF_COMMAND_NV"/>
++                <enum name="GL_VIEWPORT_COMMAND_NV"/>
++                <enum name="GL_SCISSOR_COMMAND_NV"/>
++                <enum name="GL_FRONT_FACE_COMMAND_NV"/>
++                <command name="glCreateStatesNV"/>
++                <command name="glDeleteStatesNV"/>
++                <command name="glIsStateNV"/>
++                <command name="glStateCaptureNV"/>
++                <command name="glGetCommandHeaderNV"/>
++                <command name="glGetStageIndexNV"/>
++                <command name="glDrawCommandsNV"/>
++                <command name="glDrawCommandsAddressNV"/>
++                <command name="glDrawCommandsStatesNV"/>
++                <command name="glDrawCommandsStatesAddressNV"/>
++                <command name="glCreateCommandListsNV"/>
++                <command name="glDeleteCommandListsNV"/>
++                <command name="glIsCommandListNV"/>
++                <command name="glListDrawCommandsStatesClientNV"/>
++                <command name="glCommandListSegmentsNV"/>
++                <command name="glCompileCommandListNV"/>
++                <command name="glCallCommandListNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_compute_program5" supported="gl">
+             <require>
+                 <enum name="GL_COMPUTE_PROGRAM_NV"/>
+                 <enum name="GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV"/>
+             </require>
+         </extension>
+-        <extension name="GL_NV_conditional_render" supported="gl">
++        <extension name="GL_NV_conditional_render" supported="gl|gles2">
+             <require>
+                 <enum name="GL_QUERY_WAIT_NV"/>
+                 <enum name="GL_QUERY_NO_WAIT_NV"/>
+@@ -38797,6 +41915,15 @@ typedef unsigned int GLhandleARB;
+                 <command name="glEndConditionalRenderNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_conservative_raster" supported="gl|gles2">
++            <require>
++                <enum name="GL_CONSERVATIVE_RASTERIZATION_NV"/>
++                <enum name="GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"/>
++                <enum name="GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"/>
++                <enum name="GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"/>
++                <command name="glSubpixelPrecisionBiasNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_copy_buffer" supported="gles2">
+             <require>
+                 <enum name="GL_COPY_READ_BUFFER_NV"/>
+@@ -38996,6 +42123,11 @@ typedef unsigned int GLhandleARB;
+                 <command name="glSetFenceNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_fill_rectangle" supported="gl|gles2">
++            <require>
++                <enum name="GL_FILL_RECTANGLE_NV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_float_buffer" supported="gl">
+             <require>
+                 <enum name="GL_FLOAT_R_NV"/>
+@@ -39023,6 +42155,13 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_EYE_PLANE"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_fragment_coverage_to_color" supported="gl|gles2">
++            <require>
++                <enum name="GL_FRAGMENT_COVERAGE_TO_COLOR_NV"/>
++                <enum name="GL_FRAGMENT_COVERAGE_COLOR_NV"/>
++                <command name="glFragmentCoverageColorNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_fragment_program" supported="gl">
+             <require>
+                 <enum name="GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV"/>
+@@ -39052,6 +42191,7 @@ typedef unsigned int GLhandleARB;
+         </extension>
+         <extension name="GL_NV_fragment_program4" supported="gl"/>
+         <extension name="GL_NV_fragment_program_option" supported="gl"/>
++        <extension name="GL_NV_fragment_shader_interlock" supported="gl|gles2"/>
+         <extension name="GL_NV_framebuffer_blit" supported="gles2">
+             <require>
+                 <enum name="GL_READ_FRAMEBUFFER_NV"/>
+@@ -39061,6 +42201,28 @@ typedef unsigned int GLhandleARB;
+                 <command name="glBlitFramebufferNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_framebuffer_mixed_samples" supported="gl|gles2">
++            <require>
++                <enum name="GL_RASTER_MULTISAMPLE_EXT"/>
++                <enum name="GL_COVERAGE_MODULATION_TABLE_NV"/>
++                <enum name="GL_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_MAX_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"/>
++                <enum name="GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT"/>
++                <enum name="GL_EFFECTIVE_RASTER_SAMPLES_EXT"/>
++                <enum name="GL_COLOR_SAMPLES_NV"/>
++                <enum name="GL_DEPTH_SAMPLES_NV"/>
++                <enum name="GL_STENCIL_SAMPLES_NV"/>
++                <enum name="GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV"/>
++                <enum name="GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV"/>
++                <enum name="GL_COVERAGE_MODULATION_NV"/>
++                <enum name="GL_COVERAGE_MODULATION_TABLE_SIZE_NV"/>
++                <command name="glRasterSamplesEXT"/>
++                <command name="glCoverageModulationTableNV"/>
++                <command name="glGetCoverageModulationTableNV"/>
++                <command name="glCoverageModulationNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_framebuffer_multisample" supported="gles2">
+             <require>
+                 <enum name="GL_RENDERBUFFER_SAMPLES_NV"/>
+@@ -39103,10 +42265,8 @@ typedef unsigned int GLhandleARB;
+                 <command name="glFramebufferTextureFaceEXT"/>
+             </require>
+         </extension>
+-        <extension name="GL_NV_geometry_shader4" supported="gl">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_NV_geometry_shader4" supported="gl"/>
++        <extension name="GL_NV_geometry_shader_passthrough" supported="gl|gles2"/>
+         <extension name="GL_NV_gpu_program4" supported="gl">
+             <require>
+                 <enum name="GL_MIN_PROGRAM_TEXEL_OFFSET_NV"/>
+@@ -39269,12 +42429,25 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVertexAttribs4hvNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_image_formats" supported="gles2"/>
+         <extension name="GL_NV_instanced_arrays" supported="gles2">
+             <require>
+                 <enum name="GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV"/>
+                 <command name="glVertexAttribDivisorNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_internalformat_sample_query" supported="gl|gles2">
++            <require>
++                <enum name="GL_RENDERBUFFER"/>
++                <enum name="GL_TEXTURE_2D_MULTISAMPLE"/>
++                <enum name="GL_TEXTURE_2D_MULTISAMPLE_ARRAY"/>
++                <enum name="GL_MULTISAMPLES_NV"/>
++                <enum name="GL_SUPERSAMPLE_SCALE_X_NV"/>
++                <enum name="GL_SUPERSAMPLE_SCALE_Y_NV"/>
++                <enum name="GL_CONFORMANT_NV"/>
++                <command name="glGetInternalformatSampleivNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_light_max_exponent" supported="gl">
+             <require>
+                 <enum name="GL_MAX_SHININESS_NV"/>
+@@ -39342,7 +42515,7 @@ typedef unsigned int GLhandleARB;
+             </require>
+         </extension>
+         <extension name="GL_NV_parameter_buffer_object2" supported="gl"/>
+-        <extension name="GL_NV_path_rendering" supported="gl">
++        <extension name="GL_NV_path_rendering" supported="gl|gles2">
+             <require>
+                 <enum name="GL_PATH_FORMAT_SVG_NV"/>
+                 <enum name="GL_PATH_FORMAT_PS_NV"/>
+@@ -39396,13 +42569,11 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_SKIP_MISSING_GLYPH_NV"/>
+                 <enum name="GL_USE_MISSING_GLYPH_NV"/>
+                 <enum name="GL_PATH_ERROR_POSITION_NV"/>
+-                <enum name="GL_PATH_FOG_GEN_MODE_NV"/>
+                 <enum name="GL_ACCUM_ADJACENT_PAIRS_NV"/>
+                 <enum name="GL_ADJACENT_PAIRS_NV"/>
+                 <enum name="GL_FIRST_TO_REST_NV"/>
+                 <enum name="GL_PATH_GEN_MODE_NV"/>
+                 <enum name="GL_PATH_GEN_COEFF_NV"/>
+-                <enum name="GL_PATH_GEN_COLOR_FORMAT_NV"/>
+                 <enum name="GL_PATH_GEN_COMPONENTS_NV"/>
+                 <enum name="GL_PATH_STENCIL_FUNC_NV"/>
+                 <enum name="GL_PATH_STENCIL_REF_NV"/>
+@@ -39471,9 +42642,6 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FONT_UNDERLINE_POSITION_BIT_NV"/>
+                 <enum name="GL_FONT_UNDERLINE_THICKNESS_BIT_NV"/>
+                 <enum name="GL_FONT_HAS_KERNING_BIT_NV"/>
+-                <enum name="GL_PRIMARY_COLOR"/>
+-                <enum name="GL_PRIMARY_COLOR_NV"/>
+-                <enum name="GL_SECONDARY_COLOR_NV"/>
+                 <command name="glGenPathsNV"/>
+                 <command name="glDeletePathsNV"/>
+                 <command name="glIsPathNV"/>
+@@ -39500,9 +42668,6 @@ typedef unsigned int GLhandleARB;
+                 <command name="glStencilFillPathInstancedNV"/>
+                 <command name="glStencilStrokePathInstancedNV"/>
+                 <command name="glPathCoverDepthFuncNV"/>
+-                <command name="glPathColorGenNV"/>
+-                <command name="glPathTexGenNV"/>
+-                <command name="glPathFogGenNV"/>
+                 <command name="glCoverFillPathNV"/>
+                 <command name="glCoverStrokePathNV"/>
+                 <command name="glCoverFillPathInstancedNV"/>
+@@ -39515,15 +42680,80 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetPathMetricsNV"/>
+                 <command name="glGetPathMetricRangeNV"/>
+                 <command name="glGetPathSpacingNV"/>
+-                <command name="glGetPathColorGenivNV"/>
+-                <command name="glGetPathColorGenfvNV"/>
+-                <command name="glGetPathTexGenivNV"/>
+-                <command name="glGetPathTexGenfvNV"/>
+                 <command name="glIsPointInFillPathNV"/>
+                 <command name="glIsPointInStrokePathNV"/>
+                 <command name="glGetPathLengthNV"/>
+                 <command name="glPointAlongPathNV"/>
+             </require>
++            <require comment="API revision 1.2">
++                <enum name="GL_ROUNDED_RECT_NV"/>
++                <enum name="GL_RELATIVE_ROUNDED_RECT_NV"/>
++                <enum name="GL_ROUNDED_RECT2_NV"/>
++                <enum name="GL_RELATIVE_ROUNDED_RECT2_NV"/>
++                <enum name="GL_ROUNDED_RECT4_NV"/>
++                <enum name="GL_RELATIVE_ROUNDED_RECT4_NV"/>
++                <enum name="GL_ROUNDED_RECT8_NV"/>
++                <enum name="GL_RELATIVE_ROUNDED_RECT8_NV"/>
++                <enum name="GL_RELATIVE_RECT_NV"/>
++                <enum name="GL_FONT_GLYPHS_AVAILABLE_NV"/>
++                <enum name="GL_FONT_TARGET_UNAVAILABLE_NV"/>
++                <enum name="GL_FONT_UNAVAILABLE_NV"/>
++                <enum name="GL_FONT_UNINTELLIGIBLE_NV"/>
++                <command name="glMatrixLoad3x2fNV"/>
++                <command name="glMatrixLoad3x3fNV"/>
++                <command name="glMatrixLoadTranspose3x3fNV"/>
++                <command name="glMatrixMult3x2fNV"/>
++                <command name="glMatrixMult3x3fNV"/>
++                <command name="glMatrixMultTranspose3x3fNV"/>
++                <command name="glStencilThenCoverFillPathNV"/>
++                <command name="glStencilThenCoverStrokePathNV"/>
++                <command name="glStencilThenCoverFillPathInstancedNV"/>
++                <command name="glStencilThenCoverStrokePathInstancedNV"/>
++                <command name="glPathGlyphIndexRangeNV"/>
++            </require>
++            <require comment="API revision 1.3">
++                <enum name="GL_CONIC_CURVE_TO_NV"/>
++                <enum name="GL_RELATIVE_CONIC_CURVE_TO_NV"/>
++                <enum name="GL_FONT_NUM_GLYPH_INDICES_BIT_NV"/>
++                <enum name="GL_STANDARD_FONT_FORMAT_NV"/>
++                <command name="glPathGlyphIndexArrayNV"/>
++                <command name="glPathMemoryGlyphIndexArrayNV"/>
++                <command name="glProgramPathFragmentInputGenNV"/>
++                <command name="glGetProgramResourcefvNV"/>
++            </require>
++            <require api="gl" profile="compatibility">
++                <enum name="GL_2_BYTES_NV"/>
++                <enum name="GL_3_BYTES_NV"/>
++                <enum name="GL_4_BYTES_NV"/>
++                <enum name="GL_EYE_LINEAR_NV"/>
++                <enum name="GL_OBJECT_LINEAR_NV"/>
++                <enum name="GL_CONSTANT_NV"/>
++                <enum name="GL_PATH_FOG_GEN_MODE_NV"/>
++                <enum name="GL_PRIMARY_COLOR"/>
++                <enum name="GL_PRIMARY_COLOR_NV"/>
++                <enum name="GL_SECONDARY_COLOR_NV"/>
++                <enum name="GL_PATH_GEN_COLOR_FORMAT_NV"/>
++                <command name="glPathColorGenNV"/>
++                <command name="glPathTexGenNV"/>
++                <command name="glPathFogGenNV"/>
++                <command name="glGetPathColorGenivNV"/>
++                <command name="glGetPathColorGenfvNV"/>
++                <command name="glGetPathTexGenivNV"/>
++                <command name="glGetPathTexGenfvNV"/>
++            </require>
++            <require comment="Other API additions of unknown history">
++                <enum name="GL_PATH_PROJECTION_NV"/>
++                <enum name="GL_PATH_MODELVIEW_NV"/>
++                <enum name="GL_PATH_MODELVIEW_STACK_DEPTH_NV"/>
++                <enum name="GL_PATH_MODELVIEW_MATRIX_NV"/>
++                <enum name="GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV"/>
++                <enum name="GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV"/>
++                <enum name="GL_PATH_PROJECTION_STACK_DEPTH_NV"/>
++                <enum name="GL_PATH_PROJECTION_MATRIX_NV"/>
++                <enum name="GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV"/>
++                <enum name="GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV"/>
++                <enum name="GL_FRAGMENT_INPUT_NV"/>
++            </require>
+         </extension>
+         <extension name="GL_NV_pixel_data_range" supported="gl">
+             <require>
+@@ -39546,6 +42776,17 @@ typedef unsigned int GLhandleARB;
+                 <command name="glPointParameterivNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_polygon_mode" supported="gles2">
++            <require>
++                <enum name="GL_POLYGON_MODE_NV"/>
++                <enum name="GL_POLYGON_OFFSET_POINT_NV"/>
++                <enum name="GL_POLYGON_OFFSET_LINE_NV"/>
++                <enum name="GL_POINT_NV"/>
++                <enum name="GL_LINE_NV"/>
++                <enum name="GL_FILL_NV"/>
++                <command name="glPolygonModeNV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_present_video" supported="gl">
+             <require>
+                 <enum name="GL_FRAME_NV"/>
+@@ -39653,6 +42894,11 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetFinalCombinerInputParameterivNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_path_rendering_shared_edge" supported="gl|gles2">
++            <require>
++                <enum name="GL_SHARED_EDGE_NV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_register_combiners2" supported="gl">
+             <require>
+                 <enum name="GL_PER_STAGE_CONSTANTS_NV"/>
+@@ -39674,8 +42920,26 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_ETC1_SRGB8_NV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_sample_locations" supported="gl|gles2">
++            <require>
++                <enum name="GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV"/>
++                <enum name="GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV"/>
++                <enum name="GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV"/>
++                <enum name="GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV"/>
++                <enum name="GL_SAMPLE_LOCATION_NV"/>
++                <enum name="GL_PROGRAMMABLE_SAMPLE_LOCATION_NV"/>
++                <enum name="GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV"/>
++                <enum name="GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV"/>
++                <command name="glFramebufferSampleLocationsfvNV"/>
++                <command name="glNamedFramebufferSampleLocationsfvNV"/>
++                <command name="glResolveDepthValuesNV"/>
++            </require>
++        </extension>
++        <extension name="GL_NV_sample_mask_override_coverage" supported="gl|gles2"/>
+         <extension name="GL_NV_shader_atomic_counters" supported="gl"/>
+         <extension name="GL_NV_shader_atomic_float" supported="gl"/>
++        <extension name="GL_NV_shader_atomic_fp16_vector" supported="gl"/>
++        <extension name="GL_NV_shader_atomic_int64" supported="gl"/>
+         <extension name="GL_NV_shader_buffer_load" supported="gl">
+             <require>
+                 <enum name="GL_BUFFER_GPU_ADDRESS_NV"/>
+@@ -39704,6 +42968,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_WRITE_ONLY"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_shader_noperspective_interpolation" supported="gles2"/>
+         <extension name="GL_NV_shader_storage_buffer_object" supported="gl"/>
+         <extension name="GL_NV_shader_thread_group" supported="gl">
+             <require>
+@@ -39713,7 +42978,6 @@ typedef unsigned int GLhandleARB;
+             </require>
+         </extension>
+         <extension name="GL_NV_shader_thread_shuffle" supported="gl"/>
+-        <extension name="GL_EXT_shader_image_load_formatted" supported="gl"/>
+         <extension name="GL_NV_shadow_samplers_array" supported="gles2">
+             <require>
+                 <enum name="GL_SAMPLER_2D_ARRAY_SHADOW_NV"/>
+@@ -39787,10 +43051,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glTextureImage3DMultisampleCoverageNV"/>
+             </require>
+         </extension>
+-        <extension name="GL_NV_texture_npot_2D_mipmap" supported="gles2">
+-            <require>
+-            </require>
+-        </extension>
++        <extension name="GL_NV_texture_npot_2D_mipmap" supported="gles2"/>
+         <extension name="GL_NV_texture_rectangle" supported="gl">
+             <require>
+                 <enum name="GL_TEXTURE_RECTANGLE_NV"/>
+@@ -39966,6 +43227,13 @@ typedef unsigned int GLhandleARB;
+                 <command name="glDrawTransformFeedbackNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_uniform_buffer_unified_memory" supported="gl">
++            <require>
++                <enum name="GL_UNIFORM_BUFFER_UNIFIED_NV"/>
++                <enum name="GL_UNIFORM_BUFFER_ADDRESS_NV"/>
++                <enum name="GL_UNIFORM_BUFFER_LENGTH_NV"/>
++            </require>
++        </extension>
+         <extension name="GL_NV_vdpau_interop" supported="gl">
+             <require>
+                 <enum name="GL_SURFACE_STATE_NV"/>
+@@ -40303,6 +43571,31 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVideoCaptureStreamParameterdvNV"/>
+             </require>
+         </extension>
++        <extension name="GL_NV_viewport_array" supported="gles2">
++            <require>
++                <enum name="GL_MAX_VIEWPORTS_NV"/>
++                <enum name="GL_VIEWPORT_SUBPIXEL_BITS_NV"/>
++                <enum name="GL_VIEWPORT_BOUNDS_RANGE_NV"/>
++                <enum name="GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV"/>
++                <enum name="GL_SCISSOR_BOX"/>
++                <enum name="GL_VIEWPORT"/>
++                <enum name="GL_DEPTH_RANGE"/>
++                <enum name="GL_SCISSOR_TEST"/>
++                <command name="glViewportArrayvNV"/>
++                <command name="glViewportIndexedfNV"/>
++                <command name="glViewportIndexedfvNV"/>
++                <command name="glScissorArrayvNV"/>
++                <command name="glScissorIndexedNV"/>
++                <command name="glScissorIndexedvNV"/>
++                <command name="glDepthRangeArrayfvNV"/>
++                <command name="glDepthRangeIndexedfNV"/>
++                <command name="glGetFloati_vNV"/>
++                <command name="glEnableiNV"/>
++                <command name="glDisableiNV"/>
++                <command name="glIsEnablediNV"/>
++            </require>
++        </extension>
++        <extension name="GL_NV_viewport_array2" supported="gl|gles2"/>
+         <extension name="GL_OES_EGL_image" supported="gles1|gles2">
+             <require>
+                 <type name="GLeglImageOES"/>
+@@ -40321,6 +43614,7 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_SAMPLER_EXTERNAL_OES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_EGL_image_external_essl3" supported="gles2"/>
+         <extension name="GL_OES_blend_equation_separate" supported="gles1">
+             <require>
+                 <enum name="GL_BLEND_EQUATION_RGB_OES"/>
+@@ -40348,6 +43642,10 @@ typedef unsigned int GLhandleARB;
+         </extension>
+         <extension name="GL_OES_byte_coordinates" supported="gl|gles1">
+             <require>
++                <type name="GLbyte"/>
++                <enum name="GL_BYTE"/>
++            </require>
++            <require api="gl" comment="Immediate-mode entry points don't exist in ES 1.x">
+                 <command name="glMultiTexCoord1bOES"/>
+                 <command name="glMultiTexCoord1bvOES"/>
+                 <command name="glMultiTexCoord2bOES"/>
+@@ -40372,6 +43670,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glVertex4bvOES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_compressed_ETC1_RGB8_sub_texture" supported="gles1|gles2"/>
+         <extension name="GL_OES_compressed_ETC1_RGB8_texture" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_ETC1_RGB8_OES"/>
+@@ -40391,6 +43690,11 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_PALETTE8_RGB5_A1_OES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_copy_image" supported="gles2">
++            <require>
++                <command name="glCopyImageSubDataOES"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_depth24" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_DEPTH_COMPONENT24_OES"/>
+@@ -40408,6 +43712,54 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNSIGNED_INT"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_draw_buffers_indexed" supported="gles2">
++            <require>
++                <enum name="GL_BLEND_EQUATION_RGB"/>
++                <enum name="GL_BLEND_EQUATION_ALPHA"/>
++                <enum name="GL_BLEND_SRC_RGB"/>
++                <enum name="GL_BLEND_SRC_ALPHA"/>
++                <enum name="GL_BLEND_DST_RGB"/>
++                <enum name="GL_BLEND_DST_ALPHA"/>
++                <enum name="GL_COLOR_WRITEMASK"/>
++                <enum name="GL_BLEND"/>
++                <enum name="GL_FUNC_ADD"/>
++                <enum name="GL_FUNC_SUBTRACT"/>
++                <enum name="GL_FUNC_REVERSE_SUBTRACT"/>
++                <enum name="GL_MIN"/>
++                <enum name="GL_MAX"/>
++                <enum name="GL_ZERO"/>
++                <enum name="GL_ONE"/>
++                <enum name="GL_SRC_COLOR"/>
++                <enum name="GL_ONE_MINUS_SRC_COLOR"/>
++                <enum name="GL_DST_COLOR"/>
++                <enum name="GL_ONE_MINUS_DST_COLOR"/>
++                <enum name="GL_SRC_ALPHA"/>
++                <enum name="GL_ONE_MINUS_SRC_ALPHA"/>
++                <enum name="GL_DST_ALPHA"/>
++                <enum name="GL_ONE_MINUS_DST_ALPHA"/>
++                <enum name="GL_CONSTANT_COLOR"/>
++                <enum name="GL_ONE_MINUS_CONSTANT_COLOR"/>
++                <enum name="GL_CONSTANT_ALPHA"/>
++                <enum name="GL_ONE_MINUS_CONSTANT_ALPHA"/>
++                <enum name="GL_SRC_ALPHA_SATURATE"/>
++                <command name="glEnableiOES"/>
++                <command name="glDisableiOES"/>
++                <command name="glBlendEquationiOES"/>
++                <command name="glBlendEquationSeparateiOES"/>
++                <command name="glBlendFunciOES"/>
++                <command name="glBlendFuncSeparateiOES"/>
++                <command name="glColorMaskiOES"/>
++                <command name="glIsEnablediOES"/>
++            </require>
++        </extension>
++        <extension name="GL_OES_draw_elements_base_vertex" supported="gles2">
++            <require>
++                <command name="glDrawElementsBaseVertexOES"/>
++                <command name="glDrawRangeElementsBaseVertexOES" comment="Supported only if OpenGL ES 3.0 is supported"/>
++                <command name="glDrawElementsInstancedBaseVertexOES" comment="Supported only if OpenGL ES 3.0 is supported"/>
++                <command name="glMultiDrawElementsBaseVertexOES" comment="Supported only if GL_EXT_multi_draw_arrays is supported"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_draw_texture" supported="gles1">
+             <require>
+                 <enum name="GL_TEXTURE_CROP_RECT_OES"/>
+@@ -40460,7 +43812,6 @@ typedef unsigned int GLhandleARB;
+                 <command name="glPointSizexOES"/>
+                 <command name="glPolygonOffsetxOES"/>
+                 <command name="glRotatexOES"/>
+-                <command name="glSampleCoverageOES"/>
+                 <command name="glScalexOES"/>
+                 <command name="glTexEnvxOES"/>
+                 <command name="glTexEnvxvOES"/>
+@@ -40601,6 +43952,45 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGenerateMipmapOES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_geometry_shader" supported="gles2">
++            <require>
++                <enum name="GL_GEOMETRY_SHADER_OES"/>
++                <enum name="GL_GEOMETRY_SHADER_BIT_OES"/>
++                <enum name="GL_GEOMETRY_LINKED_VERTICES_OUT_OES"/>
++                <enum name="GL_GEOMETRY_LINKED_INPUT_TYPE_OES"/>
++                <enum name="GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES"/>
++                <enum name="GL_GEOMETRY_SHADER_INVOCATIONS_OES"/>
++                <enum name="GL_LAYER_PROVOKING_VERTEX_OES"/>
++                <enum name="GL_LINES_ADJACENCY_OES"/>
++                <enum name="GL_LINE_STRIP_ADJACENCY_OES"/>
++                <enum name="GL_TRIANGLES_ADJACENCY_OES"/>
++                <enum name="GL_TRIANGLE_STRIP_ADJACENCY_OES"/>
++                <enum name="GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES"/>
++                <enum name="GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES"/>
++                <enum name="GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES"/>
++                <enum name="GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES"/>
++                <enum name="GL_FIRST_VERTEX_CONVENTION_OES"/>
++                <enum name="GL_LAST_VERTEX_CONVENTION_OES"/>
++                <enum name="GL_UNDEFINED_VERTEX_OES"/>
++                <enum name="GL_PRIMITIVES_GENERATED_OES"/>
++                <enum name="GL_FRAMEBUFFER_DEFAULT_LAYERS_OES"/>
++                <enum name="GL_MAX_FRAMEBUFFER_LAYERS_OES"/>
++                <enum name="GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES"/>
++                <enum name="GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES"/>
++                <enum name="GL_REFERENCED_BY_GEOMETRY_SHADER_OES"/>
++                <command name="glFramebufferTextureOES"/>
++            </require>
++        </extension>
++        <extension name="GL_OES_geometry_point_size" supported="gles2"/>
+         <extension name="GL_OES_get_program_binary" supported="gles2">
+             <require>
+                 <enum name="GL_PROGRAM_BINARY_LENGTH_OES"/>
+@@ -40610,6 +44000,7 @@ typedef unsigned int GLhandleARB;
+                 <command name="glProgramBinaryOES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_gpu_shader5" supported="gles2"/>
+         <extension name="GL_OES_mapbuffer" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_WRITE_ONLY_OES"/>
+@@ -40675,6 +44066,12 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_COORD_REPLACE_OES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_primitive_bounding_box" supported="gles2">
++            <require>
++                <enum name="GL_PRIMITIVE_BOUNDING_BOX_OES"/>
++                <command name="glPrimitiveBoundingBoxOES"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_query_matrix" supported="gl|gles1">
+             <require>
+                 <command name="glQueryMatrixxOES"/>
+@@ -40713,22 +44110,19 @@ typedef unsigned int GLhandleARB;
+         </extension>
+         <extension name="GL_OES_sample_shading" supported="gles2">
+             <require>
+-                <command name="glMinSampleShadingOES"/>                                     
+-                <enum name="GL_SAMPLE_SHADING_OES"/>                                        
+-                <enum name="GL_MIN_SAMPLE_SHADING_VALUE_OES"/>                              
++                <command name="glMinSampleShadingOES"/>
++                <enum name="GL_SAMPLE_SHADING_OES"/>
++                <enum name="GL_MIN_SAMPLE_SHADING_VALUE_OES"/>
+             </require>
+         </extension>
+-        <extension name="GL_OES_sample_variables" supported="gles2">
+-            <require/>
+-        </extension>
+-        <extension name="GL_OES_shader_image_atomic" supported="gles2">
+-            <require/>
+-        </extension>
++        <extension name="GL_OES_sample_variables" supported="gles2"/>
++        <extension name="GL_OES_shader_image_atomic" supported="gles2"/>
++        <extension name="GL_OES_shader_io_blocks" supported="gles2"/>
+         <extension name="GL_OES_shader_multisample_interpolation" supported="gles2">
+             <require>
+-                <enum name="GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES"/>                     
+-                <enum name="GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES"/>                     
+-                <enum name="GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES"/>                    
++                <enum name="GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES"/>
++                <enum name="GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES"/>
++                <enum name="GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES"/>
+             </require>
+         </extension>
+         <extension name="GL_OES_single_precision" supported="gl|gles1">
+@@ -40772,6 +44166,59 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FRAMEBUFFER_UNDEFINED_OES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_tessellation_shader" supported="gles2">
++            <require>
++                <enum name="GL_PATCHES_OES"/>
++                <enum name="GL_PATCH_VERTICES_OES"/>
++                <enum name="GL_TESS_CONTROL_OUTPUT_VERTICES_OES"/>
++                <enum name="GL_TESS_GEN_MODE_OES"/>
++                <enum name="GL_TESS_GEN_SPACING_OES"/>
++                <enum name="GL_TESS_GEN_VERTEX_ORDER_OES"/>
++                <enum name="GL_TESS_GEN_POINT_MODE_OES"/>
++                <enum name="GL_TRIANGLES"/>
++                <enum name="GL_ISOLINES_OES"/>
++                <enum name="GL_QUADS_OES"/>
++                <enum name="GL_EQUAL"/>
++                <enum name="GL_FRACTIONAL_ODD_OES"/>
++                <enum name="GL_FRACTIONAL_EVEN_OES"/>
++                <enum name="GL_CCW"/>
++                <enum name="GL_CW"/>
++                <enum name="GL_MAX_PATCH_VERTICES_OES"/>
++                <enum name="GL_MAX_TESS_GEN_LEVEL_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_PATCH_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES"/>
++                <enum name="GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES"/>
++                <enum name="GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES"/>
++                <enum name="GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES"/>
++                <enum name="GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES"/>
++                <enum name="GL_IS_PER_PATCH_OES"/>
++                <enum name="GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES"/>
++                <enum name="GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES"/>
++                <enum name="GL_TESS_CONTROL_SHADER_OES"/>
++                <enum name="GL_TESS_EVALUATION_SHADER_OES"/>
++                <enum name="GL_TESS_CONTROL_SHADER_BIT_OES"/>
++                <enum name="GL_TESS_EVALUATION_SHADER_BIT_OES"/>
++                <command name="glPatchParameteriOES"/>
++            </require>
++        </extension>
++        <extension name="GL_OES_tessellation_point_size" supported="gles2"/>
+         <extension name="GL_OES_texture_3D" supported="gles2">
+             <require>
+                 <enum name="GL_TEXTURE_WRAP_R_OES"/>
+@@ -40788,6 +44235,40 @@ typedef unsigned int GLhandleARB;
+                 <command name="glFramebufferTexture3DOES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_texture_border_clamp" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_BORDER_COLOR_OES"/>
++                <enum name="GL_CLAMP_TO_BORDER_OES"/>
++                <command name="glTexParameterIivOES"/>
++                <command name="glTexParameterIuivOES"/>
++                <command name="glGetTexParameterIivOES"/>
++                <command name="glGetTexParameterIuivOES"/>
++                <command name="glSamplerParameterIivOES"/>
++                <command name="glSamplerParameterIuivOES"/>
++                <command name="glGetSamplerParameterIivOES"/>
++                <command name="glGetSamplerParameterIuivOES"/>
++            </require>
++        </extension>
++        <extension name="GL_OES_texture_buffer" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_BUFFER_OES"/>
++                <enum name="GL_TEXTURE_BUFFER_BINDING_OES"/>
++                <enum name="GL_MAX_TEXTURE_BUFFER_SIZE_OES"/>
++                <enum name="GL_TEXTURE_BINDING_BUFFER_OES"/>
++                <enum name="GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES"/>
++                <enum name="GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES"/>
++                <enum name="GL_SAMPLER_BUFFER_OES"/>
++                <enum name="GL_INT_SAMPLER_BUFFER_OES"/>
++                <enum name="GL_UNSIGNED_INT_SAMPLER_BUFFER_OES"/>
++                <enum name="GL_IMAGE_BUFFER_OES"/>
++                <enum name="GL_INT_IMAGE_BUFFER_OES"/>
++                <enum name="GL_UNSIGNED_INT_IMAGE_BUFFER_OES"/>
++                <enum name="GL_TEXTURE_BUFFER_OFFSET_OES"/>
++                <enum name="GL_TEXTURE_BUFFER_SIZE_OES"/>
++                <command name="glTexBufferOES"/>
++                <command name="glTexBufferRangeOES"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_texture_compression_astc" supported="gles2" comment="API is identical to GL_KHR_texture_compression_astc_hdr extension">
+             <require>
+                 <enum name="GL_COMPRESSED_RGBA_ASTC_4x4_KHR"/>
+@@ -40866,6 +44347,19 @@ typedef unsigned int GLhandleARB;
+                 <command name="glGetTexGenxvOES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_texture_cube_map_array" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_SAMPLER_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES"/>
++                <enum name="GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_IMAGE_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_INT_IMAGE_CUBE_MAP_ARRAY_OES"/>
++                <enum name="GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_texture_env_crossbar" supported="gles1"/>
+         <extension name="GL_OES_texture_float" supported="gles2">
+             <require>
+@@ -40887,8 +44381,8 @@ typedef unsigned int GLhandleARB;
+         <extension name="GL_OES_texture_npot" supported="gles2"/>
+         <extension name="GL_OES_texture_stencil8" supported="gles2">
+             <require>
+-                <enum name="GL_STENCIL_INDEX_OES"/>                                         
+-                <enum name="GL_STENCIL_INDEX8_OES"/>                                        
++                <enum name="GL_STENCIL_INDEX_OES"/>
++                <enum name="GL_STENCIL_INDEX8_OES"/>
+             </require>
+         </extension>
+         <extension name="GL_OES_texture_storage_multisample_2d_array" supported="gles2">
+@@ -40901,6 +44395,16 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES"/>
+             </require>
+         </extension>
++        <extension name="GL_OES_texture_view" supported="gles2">
++            <require>
++                <enum name="GL_TEXTURE_VIEW_MIN_LEVEL_OES"/>
++                <enum name="GL_TEXTURE_VIEW_NUM_LEVELS_OES"/>
++                <enum name="GL_TEXTURE_VIEW_MIN_LAYER_OES"/>
++                <enum name="GL_TEXTURE_VIEW_NUM_LAYERS_OES"/>
++                <enum name="GL_TEXTURE_IMMUTABLE_LEVELS"/>
++                <command name="glTextureViewOES"/>
++            </require>
++        </extension>
+         <extension name="GL_OES_vertex_array_object" supported="gles1|gles2">
+             <require>
+                 <enum name="GL_VERTEX_ARRAY_BINDING_OES"/>
+@@ -40943,6 +44447,15 @@ typedef unsigned int GLhandleARB;
+                 <enum name="GL_FORMAT_SUBSAMPLE_244_244_OML"/>
+             </require>
+         </extension>
++        <extension name="GL_OVR_multiview" supported="gl|gles2">
++            <require>
++                <enum name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR"/>
++                <enum name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR"/>
++                <enum name="GL_MAX_VIEWS_OVR"/>
++                <command name="glFramebufferTextureMultiviewOVR"/>
++            </require>
++        </extension>
++        <extension name="GL_OVR_multiview2" supported="gl|gles2"/>
+         <extension name="GL_PGI_misc_hints" supported="gl">
+             <require>
+                 <enum name="GL_PREFER_DOUBLEBUFFER_HINT_PGI"/>
+diff --git a/registry/glx.xml b/registry/glx.xml
+index 224f893..025e9f9 100644
+--- a/registry/glx.xml
++++ b/registry/glx.xml
+@@ -84,11 +84,14 @@ typedef unsigned __int64 uint64_t;
+         <type name="Status"/>
+         <type name="Window"/>
+         <type name="XVisualInfo"/>
++        <type name="GLbitfield"/>
+         <type name="GLboolean"/>
+         <type name="GLenum"/>
+         <type name="GLfloat"/>
+         <type name="GLint"/>
++        <type name="GLintptr"/>
+         <type name="GLsizei"/>
++        <type name="GLsizeiptr"/>
+         <type name="GLubyte"/>
+         <type name="GLuint"/>
+         <type name="DMbuffer"/>
+@@ -331,6 +334,7 @@ typedef unsigned __int64 uint64_t;
+     <enums namespace="GLX" start="0x0000" end="0x2FFF" vendor="ARB"           comment="Miscellaneous OpenGL 1.0/1.1 enums. Most parts of this range are unused and should remain unused."/>
+ 
+     <enums namespace="GLX" group="SpecialNumbers"  vendor="ARB" comment="Tokens whose numeric value is intrinsically meaningful">
++        <enum value="0"             name="GLX_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB"/>
+         <enum value="0xFFFFFFFF"    name="GLX_DONT_CARE"                            comment="For ChooseFBConfig attributes"/>
+     </enums>
+ 
+@@ -385,7 +389,9 @@ typedef unsigned __int64 uint64_t;
+             <!-- 0x2095 collides with WGL_ERROR_INVALID_VERSION_ARB! -->
+         <enum value="0x2095"        name="GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB"/>
+             <!-- 0x2096 used for WGL_ERROR_INVALID_PROFILE_ARB -->
+-            <unused start="0x2097" end="0x209F"/>
++        <enum value="0x2097"        name="GLX_CONTEXT_RELEASE_BEHAVIOR_ARB"/>
++        <enum value="0x2098"        name="GLX_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB"/>
++            <unused start="0x2099" end="0x209F"/>
+     </enums>
+ 
+     <enums namespace="GLX" start="0x20A0" end="0x219F" vendor="NV" comment="Shared with WGL">
+@@ -677,6 +683,20 @@ typedef unsigned __int64 uint64_t;
+             <param>int <name>iVideoBuffer</name></param>
+         </command>
+         <command>
++            <proto>void <name>glXBlitContextFramebufferAMD</name></proto>
++            <param><ptype>GLXContext</ptype> <name>dstCtx</name></param>
++            <param><ptype>GLint</ptype> <name>srcX0</name></param>
++            <param><ptype>GLint</ptype> <name>srcY0</name></param>
++            <param><ptype>GLint</ptype> <name>srcX1</name></param>
++            <param><ptype>GLint</ptype> <name>srcY1</name></param>
++            <param><ptype>GLint</ptype> <name>dstX0</name></param>
++            <param><ptype>GLint</ptype> <name>dstY0</name></param>
++            <param><ptype>GLint</ptype> <name>dstX1</name></param>
++            <param><ptype>GLint</ptype> <name>dstY1</name></param>
++            <param><ptype>GLbitfield</ptype> <name>mask</name></param>
++            <param><ptype>GLenum</ptype> <name>filter</name></param>
++        </command>
++        <command>
+             <proto>int <name>glXChannelRectSGIX</name></proto>
+             <param><ptype>Display</ptype> *<name>display</name></param>
+             <param>int <name>screen</name></param>
+@@ -714,6 +734,28 @@ typedef unsigned __int64 uint64_t;
+             <param>int *<name>attribList</name></param>
+         </command>
+         <command>
++            <proto>void <name>glXCopyBufferSubDataNV</name></proto>
++            <param><ptype>Display</ptype> *<name>dpy</name></param>
++            <param><ptype>GLXContext</ptype> <name>readCtx</name></param>
++            <param><ptype>GLXContext</ptype> <name>writeCtx</name></param>
++            <param><ptype>GLenum</ptype> <name>readTarget</name></param>
++            <param><ptype>GLenum</ptype> <name>writeTarget</name></param>
++            <param><ptype>GLintptr</ptype> <name>readOffset</name></param>
++            <param><ptype>GLintptr</ptype> <name>writeOffset</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++        </command>
++        <command>
++            <proto>void <name>glXNamedCopyBufferSubDataNV</name></proto>
++            <param><ptype>Display</ptype> *<name>dpy</name></param>
++            <param><ptype>GLXContext</ptype> <name>readCtx</name></param>
++            <param><ptype>GLXContext</ptype> <name>writeCtx</name></param>
++            <param><ptype>GLuint</ptype> <name>readBuffer</name></param>
++            <param><ptype>GLuint</ptype> <name>writeBuffer</name></param>
++            <param><ptype>GLintptr</ptype> <name>readOffset</name></param>
++            <param><ptype>GLintptr</ptype> <name>writeOffset</name></param>
++            <param><ptype>GLsizeiptr</ptype> <name>size</name></param>
++        </command>
++        <command>
+             <proto>void <name>glXCopyContext</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXContext</ptype> <name>src</name></param>
+@@ -751,6 +793,17 @@ typedef unsigned __int64 uint64_t;
+             <param>int <name>height</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLXContext</ptype> <name>glXCreateAssociatedContextAMD</name></proto>
++            <param>unsigned int <name>id</name></param>
++            <param><ptype>GLXContext</ptype> <name>share_list</name></param>
++        </command>
++        <command>
++            <proto><ptype>GLXContext</ptype> <name>glXCreateAssociatedContextAttribsAMD</name></proto>
++            <param>unsigned int <name>id</name></param>
++            <param><ptype>GLXContext</ptype> <name>share_context</name></param>
++            <param>const int *<name>attribList</name></param>
++        </command>
++        <command>
+             <proto><ptype>GLXContext</ptype> <name>glXCreateContextAttribsARB</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXFBConfig</ptype> <name>config</name></param>
+@@ -850,6 +903,10 @@ typedef unsigned __int64 uint64_t;
+             <param><ptype>GLfloat</ptype> <name>seconds</name></param>
+         </command>
+         <command>
++            <proto><ptype>Bool</ptype> <name>glXDeleteAssociatedContextAMD</name></proto>
++            <param><ptype>GLXContext</ptype> <name>ctx</name></param>
++        </command>
++        <command>
+             <proto>void <name>glXDestroyContext</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXContext</ptype> <name>ctx</name></param>
+@@ -896,11 +953,21 @@ typedef unsigned __int64 uint64_t;
+             <param>int *<name>nelements</name></param>
+         </command>
+         <command>
++            <proto>unsigned int *<name>glXEnumerateVideoDevicesNV</name></proto>
++            <param><ptype>Display</ptype> *<name>dpy</name></param>
++            <param>int <name>screen</name></param>
++            <param>int *<name>nelements</name></param>
++        </command>
++        <command>
+             <proto>void <name>glXFreeContextEXT</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXContext</ptype> <name>context</name></param>
+         </command>
+         <command>
++            <proto>unsigned int <name>glXGetAGPOffsetMESA</name></proto>
++            <param>const void *<name>pointer</name></param>
++        </command>
++        <command>
+             <proto>const char *<name>glXGetClientString</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param>int <name>name</name></param>
+@@ -913,10 +980,17 @@ typedef unsigned __int64 uint64_t;
+             <param>int *<name>value</name></param>
+         </command>
+         <command>
++            <proto>unsigned int <name>glXGetContextGPUIDAMD</name></proto>
++            <param><ptype>GLXContext</ptype> <name>ctx</name></param>
++        </command>
++        <command>
+             <proto><ptype>GLXContextID</ptype> <name>glXGetContextIDEXT</name></proto>
+             <param>const <ptype>GLXContext</ptype> <name>context</name></param>
+         </command>
+         <command>
++            <proto><ptype>GLXContext</ptype> <name>glXGetCurrentAssociatedContextAMD</name></proto>
++        </command>
++        <command>
+             <proto><ptype>GLXContext</ptype> <name>glXGetCurrentContext</name></proto>
+         </command>
+         <command>
+@@ -960,6 +1034,19 @@ typedef unsigned __int64 uint64_t;
+             <param>int *<name>nelements</name></param>
+         </command>
+         <command>
++            <proto>unsigned int <name>glXGetGPUIDsAMD</name></proto>
++            <param>unsigned int <name>maxCount</name></param>
++            <param>unsigned int *<name>ids</name></param>
++        </command>
++        <command>
++            <proto>int <name>glXGetGPUInfoAMD</name></proto>
++            <param>unsigned int <name>id</name></param>
++            <param>int <name>property</name></param>
++            <param><ptype>GLenum</ptype> <name>dataType</name></param>
++            <param>unsigned int <name>size</name></param>
++            <param>void *<name>data</name></param>
++        </command>
++        <command>
+             <proto><ptype>Bool</ptype> <name>glXGetMscRateOML</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXDrawable</ptype> <name>drawable</name></param>
+@@ -1074,6 +1161,10 @@ typedef unsigned __int64 uint64_t;
+             <param><ptype>GLXVideoCaptureDeviceNV</ptype> <name>device</name></param>
+         </command>
+         <command>
++            <proto><ptype>Bool</ptype> <name>glXMakeAssociatedContextCurrentAMD</name></proto>
++            <param><ptype>GLXContext</ptype> <name>ctx</name></param>
++        </command>
++        <command>
+             <proto><ptype>Bool</ptype> <name>glXMakeContextCurrent</name></proto>
+             <param><ptype>Display</ptype> *<name>dpy</name></param>
+             <param><ptype>GLXDrawable</ptype> <name>draw</name></param>
+@@ -1367,16 +1458,6 @@ typedef unsigned __int64 uint64_t;
+         <command>
+             <proto>void <name>glXWaitX</name></proto>
+         </command>
+-        <command>
+-            <proto>unsigned int *<name>glXEnumerateVideoDevicesNV</name></proto>
+-            <param><ptype>Display</ptype> *<name>dpy</name></param>
+-            <param>int <name>screen</name></param>
+-            <param>int *<name>nelements</name></param>
+-        </command>
+-        <command>
+-            <proto>unsigned int <name>glXGetAGPOffsetMESA</name></proto>
+-            <param>const void *<name>pointer</name></param>
+-        </command>
+     </commands>
+ 
+     <!-- SECTION: GLX API interface definitions. -->
+@@ -1559,6 +1640,22 @@ typedef unsigned __int64 uint64_t;
+                 <enum name="GLX_GPU_NUM_SIMD_AMD"/>
+                 <enum name="GLX_GPU_NUM_RB_AMD"/>
+                 <enum name="GLX_GPU_NUM_SPI_AMD"/>
++                <command name="glXGetGPUIDsAMD"/>
++                <command name="glXGetGPUInfoAMD"/>
++                <command name="glXGetContextGPUIDAMD"/>
++                <command name="glXCreateAssociatedContextAMD"/>
++                <command name="glXCreateAssociatedContextAttribsAMD"/>
++                <command name="glXDeleteAssociatedContextAMD"/>
++                <command name="glXMakeAssociatedContextCurrentAMD"/>
++                <command name="glXGetCurrentAssociatedContextAMD"/>
++                <command name="glXBlitContextFramebufferAMD"/>
++            </require>
++        </extension>
++        <extension name="GLX_ARB_context_flush_control" supported="glx">
++            <require>
++                <enum name="GLX_CONTEXT_RELEASE_BEHAVIOR_ARB"/>
++                <enum name="GLX_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB"/>
++                <enum name="GLX_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB"/>
+             </require>
+         </extension>
+         <extension name="GLX_ARB_create_context" supported="glx">
+@@ -1803,6 +1900,12 @@ typedef unsigned __int64 uint64_t;
+                 <command name="glXSet3DfxModeMESA"/>
+             </require>
+         </extension>
++        <extension name="GLX_NV_copy_buffer" supported="glx">
++            <require>
++                <command name="glXCopyBufferSubDataNV"/>
++                <command name="glXNamedCopyBufferSubDataNV"/>
++            </require>
++        </extension>
+         <extension name="GLX_NV_copy_image" supported="glx">
+             <require>
+                 <command name="glXCopyImageSubDataNV"/>
+@@ -1853,7 +1956,7 @@ typedef unsigned __int64 uint64_t;
+                 <command name="glXReleaseVideoCaptureDeviceNV"/>
+             </require>
+         </extension>
+-        <extension name="GLX_NV_video_output" supported="glx">
++        <extension name="GLX_NV_video_out" supported="glx">
+             <require>
+                 <enum name="GLX_VIDEO_OUT_COLOR_NV"/>
+                 <enum name="GLX_VIDEO_OUT_ALPHA_NV"/>
+diff --git a/registry/wgl.xml b/registry/wgl.xml
+index 102185a..20ecd59 100644
+--- a/registry/wgl.xml
++++ b/registry/wgl.xml
+@@ -2,7 +2,7 @@
+ <registry>
+     <!--
+     Copyright (c) 2013-2014 The Khronos Group Inc.
+-    
++
+     Permission is hereby granted, free of charge, to any person obtaining a
+     copy of this software and/or associated documentation files (the
+     "Materials"), to deal in the Materials without restriction, including
+@@ -10,10 +10,10 @@
+     distribute, sublicense, and/or sell copies of the Materials, and to
+     permit persons to whom the Materials are furnished to do so, subject to
+     the following conditions:
+-    
++
+     The above copyright notice and this permission notice shall be included
+     in all copies or substantial portions of the Materials.
+-    
++
+     THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+@@ -168,6 +168,7 @@
+          extensions and API versions). -->
+ 
+     <enums namespace="WGL" group="SpecialNumbers" vendor="MS">
++        <enum value="0"           name="WGL_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB"/>
+         <enum value="0"           name="WGL_FONT_LINES"/>
+         <enum value="1"           name="WGL_FONT_POLYGONS"/>
+     </enums>
+@@ -326,11 +327,11 @@
+             <unused start="0x2059" end="0x205F"/>
+     </enums>
+ 
+-    <enums namespace="WGL" start="0x2060" end="0x206F" vendor="3Dfx">
++    <enums namespace="WGL" start="0x2060" end="0x206F" vendor="3DFX">
+             <unused start="0x2060" end="0x206F" comment="Could be reclaimed"/>
+     </enums>
+ 
+-    <enums namespace="WGL" start="0x2070" end="0x209F" vendor="ARB">
++    <enums namespace="WGL" start="0x2070" end="0x209F" vendor="ARB" comment="Shared with GLX; synchronize create_context enums">
+         <enum value="0x2060"        name="WGL_SAMPLE_BUFFERS_3DFX"/>
+         <enum value="0x2061"        name="WGL_SAMPLES_3DFX"/>
+         <enum value="0x2070"        name="WGL_BIND_TO_TEXTURE_RGB_ARB"/>
+@@ -372,7 +373,9 @@
+         <enum value="0x2094"        name="WGL_CONTEXT_FLAGS_ARB"/>
+         <enum value="0x2095"        name="ERROR_INVALID_VERSION_ARB"/>
+         <enum value="0x2096"        name="ERROR_INVALID_PROFILE_ARB"/>
+-            <unused start="0x2097" end="0x209F"/>
++        <enum value="0x2097"        name="WGL_CONTEXT_RELEASE_BEHAVIOR_ARB"/>
++        <enum value="0x2098"        name="WGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB"/>
++            <unused start="0x2099" end="0x209F"/>
+     </enums>
+ 
+     <enums namespace="WGL" start="0x20A0" end="0x219F" vendor="NV" comment="shared with GLX">
+@@ -1373,6 +1376,44 @@
+ 
+     <!-- SECTION: WGL extension interface definitions -->
+     <extensions>
++        <extension name="WGL_3DFX_multisample" supported="wgl">
++            <require>
++                <enum name="WGL_SAMPLE_BUFFERS_3DFX"/>
++                <enum name="WGL_SAMPLES_3DFX"/>
++            </require>
++        </extension>
++        <extension name="WGL_3DL_stereo_control" supported="wgl">
++            <require>
++                <enum name="WGL_STEREO_EMITTER_ENABLE_3DL"/>
++                <enum name="WGL_STEREO_EMITTER_DISABLE_3DL"/>
++                <enum name="WGL_STEREO_POLARITY_NORMAL_3DL"/>
++                <enum name="WGL_STEREO_POLARITY_INVERT_3DL"/>
++                <command name="wglSetStereoEmitterState3DL"/>
++            </require>
++        </extension>
++        <extension name="WGL_AMD_gpu_association" supported="wgl">
++            <require>
++                <enum name="WGL_GPU_VENDOR_AMD"/>
++                <enum name="WGL_GPU_RENDERER_STRING_AMD"/>
++                <enum name="WGL_GPU_OPENGL_VERSION_STRING_AMD"/>
++                <enum name="WGL_GPU_FASTEST_TARGET_GPUS_AMD"/>
++                <enum name="WGL_GPU_RAM_AMD"/>
++                <enum name="WGL_GPU_CLOCK_AMD"/>
++                <enum name="WGL_GPU_NUM_PIPES_AMD"/>
++                <enum name="WGL_GPU_NUM_SIMD_AMD"/>
++                <enum name="WGL_GPU_NUM_RB_AMD"/>
++                <enum name="WGL_GPU_NUM_SPI_AMD"/>
++                <command name="wglGetGPUIDsAMD"/>
++                <command name="wglGetGPUInfoAMD"/>
++                <command name="wglGetContextGPUIDAMD"/>
++                <command name="wglCreateAssociatedContextAMD"/>
++                <command name="wglCreateAssociatedContextAttribsAMD"/>
++                <command name="wglDeleteAssociatedContextAMD"/>
++                <command name="wglMakeAssociatedContextCurrentAMD"/>
++                <command name="wglGetCurrentAssociatedContextAMD"/>
++                <command name="wglBlitContextFramebufferAMD"/>
++            </require>
++        </extension>
+         <extension name="WGL_ARB_buffer_region" supported="wgl">
+             <require>
+                 <enum name="WGL_FRONT_COLOR_BUFFER_BIT_ARB"/>
+@@ -1385,15 +1426,80 @@
+                 <command name="wglRestoreBufferRegionARB"/>
+             </require>
+         </extension>
++        <extension name="WGL_ARB_context_flush_control" supported="wgl">
++            <require>
++                <enum name="WGL_CONTEXT_RELEASE_BEHAVIOR_ARB"/>
++                <enum name="WGL_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB"/>
++                <enum name="WGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_create_context" supported="wgl">
++            <require>
++                <enum name="WGL_CONTEXT_DEBUG_BIT_ARB"/>
++                <enum name="WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB"/>
++                <enum name="WGL_CONTEXT_MAJOR_VERSION_ARB"/>
++                <enum name="WGL_CONTEXT_MINOR_VERSION_ARB"/>
++                <enum name="WGL_CONTEXT_LAYER_PLANE_ARB"/>
++                <enum name="WGL_CONTEXT_FLAGS_ARB"/>
++                <enum name="ERROR_INVALID_VERSION_ARB"/>
++                <command name="wglCreateContextAttribsARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_create_context_profile" supported="wgl">
++            <require>
++                <enum name="WGL_CONTEXT_PROFILE_MASK_ARB"/>
++                <enum name="WGL_CONTEXT_CORE_PROFILE_BIT_ARB"/>
++                <enum name="WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB"/>
++                <enum name="ERROR_INVALID_PROFILE_ARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_create_context_robustness" supported="wgl">
++            <require>
++                <enum name="WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB"/>
++                <enum name="WGL_LOSE_CONTEXT_ON_RESET_ARB"/>
++                <enum name="WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB"/>
++                <enum name="WGL_NO_RESET_NOTIFICATION_ARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_extensions_string" supported="wgl">
++            <require>
++                <command name="wglGetExtensionsStringARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_framebuffer_sRGB" supported="wgl">
++            <require>
++                <enum name="WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB"/>
++            </require>
++        </extension>
++        <extension name="WGL_ARB_make_current_read" supported="wgl">
++            <require>
++                <enum name="ERROR_INVALID_PIXEL_TYPE_ARB"/>
++                <enum name="ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB"/>
++                <command name="wglMakeContextCurrentARB"/>
++                <command name="wglGetCurrentReadDCARB"/>
++            </require>
++        </extension>
+         <extension name="WGL_ARB_multisample" supported="wgl">
+             <require>
+                 <enum name="WGL_SAMPLE_BUFFERS_ARB"/>
+                 <enum name="WGL_SAMPLES_ARB"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_extensions_string" supported="wgl">
++        <extension name="WGL_ARB_pbuffer" supported="wgl">
+             <require>
+-                <command name="wglGetExtensionsStringARB"/>
++                <enum name="WGL_DRAW_TO_PBUFFER_ARB"/>
++                <enum name="WGL_MAX_PBUFFER_PIXELS_ARB"/>
++                <enum name="WGL_MAX_PBUFFER_WIDTH_ARB"/>
++                <enum name="WGL_MAX_PBUFFER_HEIGHT_ARB"/>
++                <enum name="WGL_PBUFFER_LARGEST_ARB"/>
++                <enum name="WGL_PBUFFER_WIDTH_ARB"/>
++                <enum name="WGL_PBUFFER_HEIGHT_ARB"/>
++                <enum name="WGL_PBUFFER_LOST_ARB"/>
++                <command name="wglCreatePbufferARB"/>
++                <command name="wglGetPbufferDCARB"/>
++                <command name="wglReleasePbufferDCARB"/>
++                <command name="wglDestroyPbufferARB"/>
++                <command name="wglQueryPbufferARB"/>
+             </require>
+         </extension>
+         <extension name="WGL_ARB_pixel_format" supported="wgl">
+@@ -1452,29 +1558,9 @@
+                 <command name="wglChoosePixelFormatARB"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_make_current_read" supported="wgl">
+-            <require>
+-                <enum name="ERROR_INVALID_PIXEL_TYPE_ARB"/>
+-                <enum name="ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB"/>
+-                <command name="wglMakeContextCurrentARB"/>
+-                <command name="wglGetCurrentReadDCARB"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_ARB_pbuffer" supported="wgl">
++        <extension name="WGL_ARB_pixel_format_float" supported="wgl">
+             <require>
+-                <enum name="WGL_DRAW_TO_PBUFFER_ARB"/>
+-                <enum name="WGL_MAX_PBUFFER_PIXELS_ARB"/>
+-                <enum name="WGL_MAX_PBUFFER_WIDTH_ARB"/>
+-                <enum name="WGL_MAX_PBUFFER_HEIGHT_ARB"/>
+-                <enum name="WGL_PBUFFER_LARGEST_ARB"/>
+-                <enum name="WGL_PBUFFER_WIDTH_ARB"/>
+-                <enum name="WGL_PBUFFER_HEIGHT_ARB"/>
+-                <enum name="WGL_PBUFFER_LOST_ARB"/>
+-                <command name="wglCreatePbufferARB"/>
+-                <command name="wglGetPbufferDCARB"/>
+-                <command name="wglReleasePbufferDCARB"/>
+-                <command name="wglDestroyPbufferARB"/>
+-                <command name="wglQueryPbufferARB"/>
++                <enum name="WGL_TYPE_RGBA_FLOAT_ARB"/>
+             </require>
+         </extension>
+         <extension name="WGL_ARB_render_texture" supported="wgl">
+@@ -1517,52 +1603,34 @@
+                 <command name="wglSetPbufferAttribARB"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_pixel_format_float" supported="wgl">
+-            <require>
+-                <enum name="WGL_TYPE_RGBA_FLOAT_ARB"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_ARB_framebuffer_sRGB" supported="wgl">
++        <extension name="WGL_ARB_robustness_application_isolation" supported="wgl">
+             <require>
+-                <enum name="WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB"/>
++                <enum name="WGL_CONTEXT_RESET_ISOLATION_BIT_ARB"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_create_context" supported="wgl">
++        <extension name="WGL_ARB_robustness_share_group_isolation" supported="wgl">
+             <require>
+-                <enum name="WGL_CONTEXT_DEBUG_BIT_ARB"/>
+-                <enum name="WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB"/>
+-                <enum name="WGL_CONTEXT_MAJOR_VERSION_ARB"/>
+-                <enum name="WGL_CONTEXT_MINOR_VERSION_ARB"/>
+-                <enum name="WGL_CONTEXT_LAYER_PLANE_ARB"/>
+-                <enum name="WGL_CONTEXT_FLAGS_ARB"/>
+-                <enum name="ERROR_INVALID_VERSION_ARB"/>
+-                <command name="wglCreateContextAttribsARB"/>
++                <enum name="WGL_CONTEXT_RESET_ISOLATION_BIT_ARB"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_create_context_profile" supported="wgl">
++        <extension name="WGL_ATI_pixel_format_float" supported="wgl">
+             <require>
+-                <enum name="WGL_CONTEXT_PROFILE_MASK_ARB"/>
+-                <enum name="WGL_CONTEXT_CORE_PROFILE_BIT_ARB"/>
+-                <enum name="WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB"/>
+-                <enum name="ERROR_INVALID_PROFILE_ARB"/>
++                <enum name="WGL_TYPE_RGBA_FLOAT_ATI"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_create_context_robustness" supported="wgl">
++        <extension name="WGL_EXT_create_context_es_profile" supported="wgl">
+             <require>
+-                <enum name="WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB"/>
+-                <enum name="WGL_LOSE_CONTEXT_ON_RESET_ARB"/>
+-                <enum name="WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB"/>
+-                <enum name="WGL_NO_RESET_NOTIFICATION_ARB"/>
++                <enum name="WGL_CONTEXT_ES_PROFILE_BIT_EXT"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_robustness_application_isolation" supported="wgl">
++        <extension name="WGL_EXT_create_context_es2_profile" supported="wgl">
+             <require>
+-                <enum name="WGL_CONTEXT_RESET_ISOLATION_BIT_ARB"/>
++                <enum name="WGL_CONTEXT_ES2_PROFILE_BIT_EXT"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ARB_robustness_share_group_isolation" supported="wgl">
++        <extension name="WGL_EXT_depth_float" supported="wgl">
+             <require>
+-                <enum name="WGL_CONTEXT_RESET_ISOLATION_BIT_ARB"/>
++                <enum name="WGL_DEPTH_FLOAT_EXT"/>
+             </require>
+         </extension>
+         <extension name="WGL_EXT_display_color_table" supported="wgl">
+@@ -1578,6 +1646,11 @@
+                 <command name="wglGetExtensionsStringEXT"/>
+             </require>
+         </extension>
++        <extension name="WGL_EXT_framebuffer_sRGB" supported="wgl">
++            <require>
++                <enum name="WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT"/>
++            </require>
++        </extension>
+         <extension name="WGL_EXT_make_current_read" supported="wgl">
+             <require>
+                 <enum name="ERROR_INVALID_PIXEL_TYPE_EXT"/>
+@@ -1585,6 +1658,12 @@
+                 <command name="wglGetCurrentReadDCEXT"/>
+             </require>
+         </extension>
++        <extension name="WGL_EXT_multisample" supported="wgl">
++            <require>
++                <enum name="WGL_SAMPLE_BUFFERS_EXT"/>
++                <enum name="WGL_SAMPLES_EXT"/>
++            </require>
++        </extension>
+         <extension name="WGL_EXT_pbuffer" supported="wgl">
+             <require>
+                 <enum name="WGL_DRAW_TO_PBUFFER_EXT"/>
+@@ -1655,43 +1734,19 @@
+                 <command name="wglChoosePixelFormatEXT"/>
+             </require>
+         </extension>
+-        <extension name="WGL_EXT_swap_control" supported="wgl">
+-            <require>
+-                <command name="wglSwapIntervalEXT"/>
+-                <command name="wglGetSwapIntervalEXT"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_EXT_depth_float" supported="wgl">
+-            <require>
+-                <enum name="WGL_DEPTH_FLOAT_EXT"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_NV_vertex_array_range" supported="wgl">
+-            <require>
+-                <command name="wglAllocateMemoryNV"/>
+-                <command name="wglFreeMemoryNV"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_3DFX_multisample" supported="wgl">
++        <extension name="WGL_EXT_pixel_format_packed_float" supported="wgl">
+             <require>
+-                <enum name="WGL_SAMPLE_BUFFERS_3DFX"/>
+-                <enum name="WGL_SAMPLES_3DFX"/>
++                <enum name="WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT"/>
+             </require>
+         </extension>
+-        <extension name="WGL_EXT_multisample" supported="wgl">
++        <extension name="WGL_EXT_swap_control" supported="wgl">
+             <require>
+-                <enum name="WGL_SAMPLE_BUFFERS_EXT"/>
+-                <enum name="WGL_SAMPLES_EXT"/>
++                <command name="wglSwapIntervalEXT"/>
++                <command name="wglGetSwapIntervalEXT"/>
+             </require>
+         </extension>
+-        <extension name="WGL_OML_sync_control" supported="wgl">
++        <extension name="WGL_EXT_swap_control_tear" supported="wgl">
+             <require>
+-                <command name="wglGetSyncValuesOML"/>
+-                <command name="wglGetMscRateOML"/>
+-                <command name="wglSwapBuffersMscOML"/>
+-                <command name="wglSwapLayerBuffersMscOML"/>
+-                <command name="wglWaitForMscOML"/>
+-                <command name="wglWaitForSbcOML"/>
+             </require>
+         </extension>
+         <extension name="WGL_I3D_digital_video_control" supported="wgl">
+@@ -1765,9 +1820,33 @@
+                 <command name="wglQueryFrameTrackingI3D"/>
+             </require>
+         </extension>
+-        <extension name="WGL_ATI_pixel_format_float" supported="wgl">
++        <extension name="WGL_NV_copy_image" supported="wgl">
++            <require>
++                <command name="wglCopyImageSubDataNV"/>
++            </require>
++        </extension>
++        <extension name="WGL_NV_delay_before_swap" supported="wgl">
++            <require>
++                <command name="wglDelayBeforeSwapNV"/>
++            </require>
++        </extension>
++        <extension name="WGL_NV_DX_interop" supported="wgl">
++            <require>
++                <enum name="WGL_ACCESS_READ_ONLY_NV"/>
++                <enum name="WGL_ACCESS_READ_WRITE_NV"/>
++                <enum name="WGL_ACCESS_WRITE_DISCARD_NV"/>
++                <command name="wglDXSetResourceShareHandleNV"/>
++                <command name="wglDXOpenDeviceNV"/>
++                <command name="wglDXCloseDeviceNV"/>
++                <command name="wglDXRegisterObjectNV"/>
++                <command name="wglDXUnregisterObjectNV"/>
++                <command name="wglDXObjectAccessNV"/>
++                <command name="wglDXLockObjectsNV"/>
++                <command name="wglDXUnlockObjectsNV"/>
++            </require>
++        </extension>
++        <extension name="WGL_NV_DX_interop2" supported="wgl">
+             <require>
+-                <enum name="WGL_TYPE_RGBA_FLOAT_ATI"/>
+             </require>
+         </extension>
+         <extension name="WGL_NV_float_buffer" supported="wgl">
+@@ -1783,23 +1862,21 @@
+                 <enum name="WGL_TEXTURE_FLOAT_RGBA_NV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_3DL_stereo_control" supported="wgl">
+-            <require>
+-                <enum name="WGL_STEREO_EMITTER_ENABLE_3DL"/>
+-                <enum name="WGL_STEREO_EMITTER_DISABLE_3DL"/>
+-                <enum name="WGL_STEREO_POLARITY_NORMAL_3DL"/>
+-                <enum name="WGL_STEREO_POLARITY_INVERT_3DL"/>
+-                <command name="wglSetStereoEmitterState3DL"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_EXT_pixel_format_packed_float" supported="wgl">
++        <extension name="WGL_NV_gpu_affinity" supported="wgl">
+             <require>
+-                <enum name="WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT"/>
++                <enum name="ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV"/>
++                <enum name="ERROR_MISSING_AFFINITY_MASK_NV"/>
++                <command name="wglEnumGpusNV"/>
++                <command name="wglEnumGpuDevicesNV"/>
++                <command name="wglCreateAffinityDCNV"/>
++                <command name="wglEnumGpusFromAffinityDCNV"/>
++                <command name="wglDeleteDCNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_EXT_framebuffer_sRGB" supported="wgl">
++        <extension name="WGL_NV_multisample_coverage" supported="wgl">
+             <require>
+-                <enum name="WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT"/>
++                <enum name="WGL_COVERAGE_SAMPLES_NV"/>
++                <enum name="WGL_COLOR_SAMPLES_NV"/>
+             </require>
+         </extension>
+         <extension name="WGL_NV_present_video" supported="wgl">
+@@ -1810,29 +1887,6 @@
+                 <command name="wglQueryCurrentContextNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_NV_video_output" supported="wgl">
+-            <require>
+-                <enum name="WGL_BIND_TO_VIDEO_RGB_NV"/>
+-                <enum name="WGL_BIND_TO_VIDEO_RGBA_NV"/>
+-                <enum name="WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV"/>
+-                <enum name="WGL_VIDEO_OUT_COLOR_NV"/>
+-                <enum name="WGL_VIDEO_OUT_ALPHA_NV"/>
+-                <enum name="WGL_VIDEO_OUT_DEPTH_NV"/>
+-                <enum name="WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV"/>
+-                <enum name="WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV"/>
+-                <enum name="WGL_VIDEO_OUT_FRAME"/>
+-                <enum name="WGL_VIDEO_OUT_FIELD_1"/>
+-                <enum name="WGL_VIDEO_OUT_FIELD_2"/>
+-                <enum name="WGL_VIDEO_OUT_STACKED_FIELDS_1_2"/>
+-                <enum name="WGL_VIDEO_OUT_STACKED_FIELDS_2_1"/>
+-                <command name="wglGetVideoDeviceNV"/>
+-                <command name="wglReleaseVideoDeviceNV"/>
+-                <command name="wglBindVideoImageNV"/>
+-                <command name="wglReleaseVideoImageNV"/>
+-                <command name="wglSendPbufferToVideoNV"/>
+-                <command name="wglGetVideoInfoNV"/>
+-            </require>
+-        </extension>
+         <extension name="WGL_NV_render_depth_texture" supported="wgl">
+             <require>
+                 <enum name="WGL_BIND_TO_TEXTURE_DEPTH_NV"/>
+@@ -1859,40 +1913,6 @@
+                 <command name="wglResetFrameCountNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_NV_gpu_affinity" supported="wgl">
+-            <require>
+-                <enum name="ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV"/>
+-                <enum name="ERROR_MISSING_AFFINITY_MASK_NV"/>
+-                <command name="wglEnumGpusNV"/>
+-                <command name="wglEnumGpuDevicesNV"/>
+-                <command name="wglCreateAffinityDCNV"/>
+-                <command name="wglEnumGpusFromAffinityDCNV"/>
+-                <command name="wglDeleteDCNV"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_AMD_gpu_association" supported="wgl">
+-            <require>
+-                <enum name="WGL_GPU_VENDOR_AMD"/>
+-                <enum name="WGL_GPU_RENDERER_STRING_AMD"/>
+-                <enum name="WGL_GPU_OPENGL_VERSION_STRING_AMD"/>
+-                <enum name="WGL_GPU_FASTEST_TARGET_GPUS_AMD"/>
+-                <enum name="WGL_GPU_RAM_AMD"/>
+-                <enum name="WGL_GPU_CLOCK_AMD"/>
+-                <enum name="WGL_GPU_NUM_PIPES_AMD"/>
+-                <enum name="WGL_GPU_NUM_SIMD_AMD"/>
+-                <enum name="WGL_GPU_NUM_RB_AMD"/>
+-                <enum name="WGL_GPU_NUM_SPI_AMD"/>
+-                <command name="wglGetGPUIDsAMD"/>
+-                <command name="wglGetGPUInfoAMD"/>
+-                <command name="wglGetContextGPUIDAMD"/>
+-                <command name="wglCreateAssociatedContextAMD"/>
+-                <command name="wglCreateAssociatedContextAttribsAMD"/>
+-                <command name="wglDeleteAssociatedContextAMD"/>
+-                <command name="wglMakeAssociatedContextCurrentAMD"/>
+-                <command name="wglGetCurrentAssociatedContextAMD"/>
+-                <command name="wglBlitContextFramebufferAMD"/>
+-            </require>
+-        </extension>
+         <extension name="WGL_NV_video_capture" supported="wgl">
+             <require>
+                 <enum name="WGL_UNIQUE_ID_NV"/>
+@@ -1904,53 +1924,43 @@
+                 <command name="wglReleaseVideoCaptureDeviceNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_NV_copy_image" supported="wgl">
+-            <require>
+-                <command name="wglCopyImageSubDataNV"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_NV_multisample_coverage" supported="wgl">
+-            <require>
+-                <enum name="WGL_COVERAGE_SAMPLES_NV"/>
+-                <enum name="WGL_COLOR_SAMPLES_NV"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_EXT_create_context_es_profile" supported="wgl">
+-            <require>
+-                <enum name="WGL_CONTEXT_ES_PROFILE_BIT_EXT"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_EXT_create_context_es2_profile" supported="wgl">
+-            <require>
+-                <enum name="WGL_CONTEXT_ES2_PROFILE_BIT_EXT"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_NV_DX_interop" supported="wgl">
+-            <require>
+-                <enum name="WGL_ACCESS_READ_ONLY_NV"/>
+-                <enum name="WGL_ACCESS_READ_WRITE_NV"/>
+-                <enum name="WGL_ACCESS_WRITE_DISCARD_NV"/>
+-                <command name="wglDXSetResourceShareHandleNV"/>
+-                <command name="wglDXOpenDeviceNV"/>
+-                <command name="wglDXCloseDeviceNV"/>
+-                <command name="wglDXRegisterObjectNV"/>
+-                <command name="wglDXUnregisterObjectNV"/>
+-                <command name="wglDXObjectAccessNV"/>
+-                <command name="wglDXLockObjectsNV"/>
+-                <command name="wglDXUnlockObjectsNV"/>
+-            </require>
+-        </extension>
+-        <extension name="WGL_NV_DX_interop2" supported="wgl">
++        <extension name="WGL_NV_video_output" supported="wgl">
+             <require>
++                <enum name="WGL_BIND_TO_VIDEO_RGB_NV"/>
++                <enum name="WGL_BIND_TO_VIDEO_RGBA_NV"/>
++                <enum name="WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV"/>
++                <enum name="WGL_VIDEO_OUT_COLOR_NV"/>
++                <enum name="WGL_VIDEO_OUT_ALPHA_NV"/>
++                <enum name="WGL_VIDEO_OUT_DEPTH_NV"/>
++                <enum name="WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV"/>
++                <enum name="WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV"/>
++                <enum name="WGL_VIDEO_OUT_FRAME"/>
++                <enum name="WGL_VIDEO_OUT_FIELD_1"/>
++                <enum name="WGL_VIDEO_OUT_FIELD_2"/>
++                <enum name="WGL_VIDEO_OUT_STACKED_FIELDS_1_2"/>
++                <enum name="WGL_VIDEO_OUT_STACKED_FIELDS_2_1"/>
++                <command name="wglGetVideoDeviceNV"/>
++                <command name="wglReleaseVideoDeviceNV"/>
++                <command name="wglBindVideoImageNV"/>
++                <command name="wglReleaseVideoImageNV"/>
++                <command name="wglSendPbufferToVideoNV"/>
++                <command name="wglGetVideoInfoNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_EXT_swap_control_tear" supported="wgl">
++        <extension name="WGL_NV_vertex_array_range" supported="wgl">
+             <require>
++                <command name="wglAllocateMemoryNV"/>
++                <command name="wglFreeMemoryNV"/>
+             </require>
+         </extension>
+-        <extension name="WGL_NV_delay_before_swap" supported="wgl">
++        <extension name="WGL_OML_sync_control" supported="wgl">
+             <require>
+-                <command name="wglDelayBeforeSwapNV"/>
++                <command name="wglGetSyncValuesOML"/>
++                <command name="wglGetMscRateOML"/>
++                <command name="wglSwapBuffersMscOML"/>
++                <command name="wglSwapLayerBuffersMscOML"/>
++                <command name="wglWaitForMscOML"/>
++                <command name="wglWaitForSbcOML"/>
+             </require>
+         </extension>
+     </extensions>
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/libepoxy.git/commit/?h=master&id=db1b7c0a3ae99a1ff58eca1a79722edd7a9c2713


More information about the scm-commits mailing list