Replaces #287, since I can't update @rbiermann's branch in-place in their repository.

@dgkoch @pdaniell-nv I suggest adding the KHR extension to this branch.

Unfortunately, the changes in #287 directly updated the headers rather than adding the new interfaces to gl.xml / wgl.xml. As a result these headers are incomplete. If you can attempt to add the interfaces for the new extensions introduced in #287 that would be great. If not I'll attempt to do it, but I can't guarantee I'll have time by Sunday evening, with the Vulkan update taking up my time.
diff --git a/api/GL/glcorearb.h b/api/GL/glcorearb.h
index b43ac30..cf6fca8 100755
--- a/api/GL/glcorearb.h
+++ b/api/GL/glcorearb.h
@@ -4744,6 +4744,11 @@
 #endif
 #endif /* GL_INTEL_performance_query */
 
+#ifndef GL_MESA_framebuffer_flip_y
+#define GL_MESA_framebuffer_flip_y 1
+#define GL_FRAMEBUFFER_FLIP_Y_MESA        0x8BBB
+#endif /* GL_MESA_framebuffer_flip_y */
+
 #ifndef GL_NV_bindless_multi_draw_indirect
 #define GL_NV_bindless_multi_draw_indirect 1
 typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC) (GLenum mode, const void *indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount);
diff --git a/api/GL/glext.h b/api/GL/glext.h
index 60f204f..c74cc66 100644
--- a/api/GL/glext.h
+++ b/api/GL/glext.h
@@ -51,7 +51,7 @@
 #define GLAPI extern
 #endif
 
-#define GL_GLEXT_VERSION 20190524
+#define GL_GLEXT_VERSION 20190727
 
 #include <KHR/khrplatform.h>
 
@@ -9259,6 +9259,11 @@
 #define GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E
 #endif /* GL_MESAX_texture_stack */
 
+#ifndef GL_MESA_framebuffer_flip_y
+#define GL_MESA_framebuffer_flip_y 1
+#define GL_FRAMEBUFFER_FLIP_Y_MESA        0x8BBB
+#endif /* GL_MESA_framebuffer_flip_y */
+
 #ifndef GL_MESA_pack_invert
 #define GL_MESA_pack_invert 1
 #define GL_PACK_INVERT_MESA               0x8758
@@ -9372,6 +9377,10 @@
 #define GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B
 #endif /* GL_NVX_gpu_memory_info */
 
+#ifndef GL_NVX_gpu_multicast2
+#define GL_NVX_gpu_multicast2 1
+#endif /* GL_NVX_gpu_multicast2 */
+
 #ifndef GL_NVX_linked_gpu_multicast
 #define GL_NVX_linked_gpu_multicast 1
 #define GL_LGPU_SEPARATE_STORAGE_BIT_NVX  0x0800
@@ -9386,6 +9395,10 @@
 #endif
 #endif /* GL_NVX_linked_gpu_multicast */
 
+#ifndef GL_NVX_progress_fence
+#define GL_NVX_progress_fence 1
+#endif /* GL_NVX_progress_fence */
+
 #ifndef GL_NV_alpha_to_coverage_dither_control
 #define GL_NV_alpha_to_coverage_dither_control 1
 #define GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV 0x934D
@@ -9998,40 +10011,6 @@
 #endif
 #endif /* GL_NV_gpu_multicast */
 
-/* NVX_gpu_multicast2 */
-#ifndef GL_NVX_gpu_multicast2
-#define GL_NVX_gpu_multicast2 1
-#define GL_UPLOAD_GPU_MASK_NV             0x954A
-typedef void (GLAPIENTRYP PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask);
-typedef void (GLAPIENTRYP PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v);
-typedef void (GLAPIENTRYP PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff);
-typedef void (GLAPIENTRYP PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint *v);
-typedef void (GLAPIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValues, GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValues);
-typedef void (GLAPIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValues, GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLuint srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLuint dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValues);
-#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void GLAPIENTRY glUploadGpuMaskNVX(GLbitfield mask);
-GLAPI void GLAPIENTRY glMulticastViewportArrayvNVX(GLuint gpu, GLuint first, GLsizei count, const GLfloat *v);
-GLAPI void GLAPIENTRY glMulticastViewportPositionWScaleNVX(GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff);
-GLAPI void GLAPIENTRY glMulticastScissorArrayvNVX(GLuint gpu, GLuint first, GLsizei count, const GLint *v);
-GLAPI void GLAPIENTRY glAsyncCopyBufferSubDataNVX(GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValues, GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValues);
-GLAPI void GLAPIENTRY glAsyncCopyImageSubDataNVX(GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValues, GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLuint srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLuint dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValues);
-#endif
-#endif /* GL_NVX_gpu_multicast2 */
-
-#ifndef GL_NVX_progress_fence
-#define GL_NVX_progress_fence 1
-typedef GLuint(GLAPIENTRYP PFNGLCREATEPROGRESSFENCENVXPROC) (void);
-typedef void (GLAPIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei semaphoreCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-typedef void (GLAPIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-typedef void (GLAPIENTRYP PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-#ifdef GL_GLEXT_PROTOTYPES
-GLAPI GLuint GLAPIENTRY glCreateProgressFenceNVX(void);
-GLAPI void GLAPIENTRY glSignalSemaphoreui64NVX(GLuint signalGpu, GLsizei semaphoreCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-GLAPI void GLAPIENTRY glWaitSemaphoreui64NVX(GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-GLAPI void GLAPIENTRY glClientWaitSemaphoreui64NVX(GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
-#endif
-#endif /* GL_NVX_progress_fence */
-
 #ifndef GL_NV_gpu_program4
 #define GL_NV_gpu_program4 1
 #define GL_MIN_PROGRAM_TEXEL_OFFSET_NV    0x8904
diff --git a/api/GL/glxext.h b/api/GL/glxext.h
index f250ccc..2f1c717 100755
--- a/api/GL/glxext.h
+++ b/api/GL/glxext.h
@@ -34,7 +34,7 @@
 **   https://github.com/KhronosGroup/OpenGL-Registry
 */
 
-#define GLX_GLXEXT_VERSION 20190524
+#define GLX_GLXEXT_VERSION 20190605
 
 /* Generated C header for:
  * API: glx
diff --git a/api/GL/wgl.h b/api/GL/wgl.h
index da62e1b..f89224e 100644
--- a/api/GL/wgl.h
+++ b/api/GL/wgl.h
@@ -39,7 +39,7 @@
 #include <windows.h>
 #endif
 
-/* Generated on date 20190524 */
+/* Generated on date 20190605 */
 
 /* Generated C header for:
  * API: wgl
diff --git a/api/GL/wglext.h b/api/GL/wglext.h
index 2dc9b01..75010f3 100755
--- a/api/GL/wglext.h
+++ b/api/GL/wglext.h
@@ -39,7 +39,7 @@
 #include <windows.h>
 #endif
 
-#define WGL_WGLEXT_VERSION 20190524
+#define WGL_WGLEXT_VERSION 20190605
 
 /* Generated C header for:
  * API: wgl
diff --git a/api/GLES/gl.h b/api/GLES/gl.h
index 0d9022d..bd02215 100644
--- a/api/GLES/gl.h
+++ b/api/GLES/gl.h
@@ -36,7 +36,7 @@
 
 #include <GLES/glplatform.h>
 
-/* Generated on date 20190524 */
+/* Generated on date 20190727 */
 
 /* Generated C header for:
  * API: gles1
diff --git a/api/GLES/glext.h b/api/GLES/glext.h
index 808daad..e637349 100644
--- a/api/GLES/glext.h
+++ b/api/GLES/glext.h
@@ -38,7 +38,7 @@
 #define GL_APIENTRYP GL_APIENTRY*
 #endif
 
-/* Generated on date 20190524 */
+/* Generated on date 20190727 */
 
 /* Generated C header for:
  * API: gles1
diff --git a/api/GLES2/gl2.h b/api/GLES2/gl2.h
index 7407957..fa3213b 100644
--- a/api/GLES2/gl2.h
+++ b/api/GLES2/gl2.h
@@ -44,7 +44,7 @@
 #define GL_GLES_PROTOTYPES 1
 #endif
 
-/* Generated on date 20190524 */
+/* Generated on date 20190727 */
 
 /* Generated C header for:
  * API: gles2
diff --git a/api/GLES2/gl2ext.h b/api/GLES2/gl2ext.h
index 7305a16..b72f4ff 100644
--- a/api/GLES2/gl2ext.h
+++ b/api/GLES2/gl2ext.h
@@ -38,7 +38,7 @@
 #define GL_APIENTRYP GL_APIENTRY*
 #endif
 
-/* Generated on date 20190524 */
+/* Generated on date 20190727 */
 
 /* Generated C header for:
  * API: gles2
diff --git a/api/GLES3/gl3.h b/api/GLES3/gl3.h
index 70b33a7..475c50b 100644
--- a/api/GLES3/gl3.h
+++ b/api/GLES3/gl3.h
@@ -44,7 +44,7 @@
 #define GL_GLES_PROTOTYPES 1
 #endif
 
-/* Generated on date 20190524 */
+/* Generated on date 20190727 */
 
 /* Generated C header for:
  * API: gles2
diff --git a/extensions/MESA/MESA_framebuffer_flip_y.txt b/extensions/MESA/MESA_framebuffer_flip_y.txt
index d160232..0866203 100644
--- a/extensions/MESA/MESA_framebuffer_flip_y.txt
+++ b/extensions/MESA/MESA_framebuffer_flip_y.txt
@@ -15,6 +15,7 @@
     Fritz Koenig, Google
     Kristian Høgsberg, Google
     Chad Versace, Google
+    Heinrich Fink, DAQRI
 
 Status
 
@@ -22,15 +23,16 @@
 
 Version
 
-    Version 1, June 7, 2018
+    Version 2, June 4, 2019
 
 Number
 
+    OpenGL Extension #540
     OpenGL ES Extension #302
 
 Dependencies
 
-    OpenGL ES 3.1 is required, for FramebufferParameteri.
+    OpenGL ES 3.1 or OpenGL 4.3 is required, for FramebufferParameteri.
 
 Overview
 
@@ -79,5 +81,8 @@
 
 Revision History
 
+    Version 2, June, 2019
+        Enable extension for OpenGL 4.3 and beyond
+
     Version 1, June, 2018
         Initial draft (Fritz Koenig)
diff --git a/extensions/NVX/NVX_gpu_multicast2.txt b/extensions/NVX/NVX_gpu_multicast2.txt
index 901c6a5..4d63eec 100644
--- a/extensions/NVX/NVX_gpu_multicast2.txt
+++ b/extensions/NVX/NVX_gpu_multicast2.txt
@@ -27,7 +27,7 @@
 
 Number
 
-    OpenGL Extension #540
+    OpenGL Extension #543
 
 Dependencies
 
diff --git a/extensions/glext.php b/extensions/glext.php
index 5f8b8ae..dbdfc6f 100644
--- a/extensions/glext.php
+++ b/extensions/glext.php
@@ -1017,10 +1017,12 @@
 </li>
 <li value=539><a href="extensions/EXT/EXT_texture_shadow_lod.txt">GL_EXT_texture_shadow_lod</a>
 </li>
-<li value=540><a href="extensions/NVX/NVX_gpu_multicast2.txt">GL_NVX_gpu_multicast2</a>
+<li value=540><a href="extensions/MESA/MESA_framebuffer_flip_y.txt">GL_MESA_framebuffer_flip_y</a>
 </li>
 <li value=541><a href="extensions/NVX/NVX_progress_fence.txt">GL_NVX_progress_fence</a>
 </li>
 <li value=542><a href="extensions/NV/WGL_NV_multigpu_context.txt">WGL_NV_multigpu_context</a>
 </li>
+<li value=543><a href="extensions/NVX/NVX_gpu_multicast2.txt">GL_NVX_gpu_multicast2</a>
+</li>
 </ol>
diff --git a/extensions/registry.py b/extensions/registry.py
index be6bb9e..b603b7c 100644
--- a/extensions/registry.py
+++ b/extensions/registry.py
@@ -2967,6 +2967,7 @@
         'url' : 'extensions/MESA/GLX_MESA_copy_sub_buffer.txt',
     },
     'GL_MESA_framebuffer_flip_y' : {
+        'number' : 540,
         'esnumber' : 302,
         'flags' : { 'public' },
         'supporters' : { 'MESA' },
@@ -3422,7 +3423,7 @@
         'url' : 'extensions/NV/NV_gpu_multicast.txt',
     },
     'GL_NVX_gpu_multicast2' : {
-        'number' : 540,
+        'number' : 543,
         'flags' : { 'public' },
         'supporters' : { 'NVIDIA' },
         'url' : 'extensions/NVX/NVX_gpu_multicast2.txt',
diff --git a/xml/gl.xml b/xml/gl.xml
index 7052565..a0a873e 100644
--- a/xml/gl.xml
+++ b/xml/gl.xml
@@ -832,6 +832,22 @@
             <enum name="GL_COLOR_ATTACHMENT13"/>
             <enum name="GL_COLOR_ATTACHMENT14"/>
             <enum name="GL_COLOR_ATTACHMENT15"/>
+            <enum name="GL_COLOR_ATTACHMENT16"/>
+            <enum name="GL_COLOR_ATTACHMENT17"/>
+            <enum name="GL_COLOR_ATTACHMENT18"/>
+            <enum name="GL_COLOR_ATTACHMENT19"/>
+            <enum name="GL_COLOR_ATTACHMENT20"/>
+            <enum name="GL_COLOR_ATTACHMENT21"/>
+            <enum name="GL_COLOR_ATTACHMENT22"/>
+            <enum name="GL_COLOR_ATTACHMENT23"/>
+            <enum name="GL_COLOR_ATTACHMENT24"/>
+            <enum name="GL_COLOR_ATTACHMENT25"/>
+            <enum name="GL_COLOR_ATTACHMENT26"/>
+            <enum name="GL_COLOR_ATTACHMENT27"/>
+            <enum name="GL_COLOR_ATTACHMENT28"/>
+            <enum name="GL_COLOR_ATTACHMENT29"/>
+            <enum name="GL_COLOR_ATTACHMENT30"/>
+            <enum name="GL_COLOR_ATTACHMENT31"/>
         </group>
 
         <group name="DrawElementsType">
@@ -2286,6 +2302,7 @@
             <enum name="GL_RGB16F_EXT"/>
             <enum name="GL_RGB16_SNORM"/>
             <enum name="GL_RGB16_SNORM_EXT"/>
+            <enum name="GL_RGB32F"/>
             <enum name="GL_RGB8I"/>
             <enum name="GL_RGB16I"/>
             <enum name="GL_RGB32I"/>
@@ -3324,6 +3341,20 @@
             <enum name="GL_UNIFORM_BUFFER"/>
         </group>
 
+        <group name="CopyImageSubDataTarget">
+            <enum name="GL_RENDERBUFFER"/>
+            <enum name="GL_TEXTURE_1D"/>
+            <enum name="GL_TEXTURE_2D"/>
+            <enum name="GL_TEXTURE_3D"/>
+            <enum name="GL_TEXTURE_RECTANGLE"/>
+            <enum name="GL_TEXTURE_CUBE_MAP"/>
+            <enum name="GL_TEXTURE_CUBE_MAP_ARRAY"/>
+            <enum name="GL_TEXTURE_1D_ARRAY"/>
+            <enum name="GL_TEXTURE_2D_ARRAY"/>
+            <enum name="GL_TEXTURE_2D_MULTISAMPLE"/>
+            <enum name="GL_TEXTURE_2D_MULTISAMPLE_ARRAY"/>
+        </group>
+
         <group name="ShaderType">
             <enum name="GL_COMPUTE_SHADER"/>
             <enum name="GL_VERTEX_SHADER"/>
@@ -3694,12 +3725,12 @@
             <enum name="GL_SAMPLER_2D_SHADOW"/>
             <enum name="GL_SAMPLER_2D_RECT"/>
             <enum name="GL_SAMPLER_2D_RECT_SHADOW"/>
-            <enum name="GL_FLOAT_MAT_2X3"/>
-            <enum name="GL_FLOAT_MAT_2X4"/>
-            <enum name="GL_FLOAT_MAT_3X2"/>
-            <enum name="GL_FLOAT_MAT_3X4"/>
-            <enum name="GL_FLOAT_MAT_4X2"/>
-            <enum name="GL_FLOAT_MAT_4X3"/>
+            <enum name="GL_FLOAT_MAT2X3"/>
+            <enum name="GL_FLOAT_MAT2X4"/>
+            <enum name="GL_FLOAT_MAT3X2"/>
+            <enum name="GL_FLOAT_MAT3X4"/>
+            <enum name="GL_FLOAT_MAT4X2"/>
+            <enum name="GL_FLOAT_MAT4X3"/>
             <enum name="GL_SAMPLER_1D_ARRAY"/>
             <enum name="GL_SAMPLER_2D_ARRAY"/>
             <enum name="GL_SAMPLER_BUFFER"/>
@@ -3725,22 +3756,22 @@
             <enum name="GL_UNSIGNED_INT_SAMPLER_1D_ARRAY"/>
             <enum name="GL_UNSIGNED_INT_SAMPLER_2D_ARRAY"/>
             <enum name="GL_UNSIGNED_INT_SAMPLER_BUFFER"/>
-            <enum name="GL_DOUBLE_MAT_2"/>
-            <enum name="GL_DOUBLE_MAT_3"/>
-            <enum name="GL_DOUBLE_MAT_4"/>
-            <enum name="GL_DOUBLE_MAT_2x3"/>
-            <enum name="GL_DOUBLE_MAT_2x4"/>
-            <enum name="GL_DOUBLE_MAT_3x2"/>
-            <enum name="GL_DOUBLE_MAT_3x4"/>
-            <enum name="GL_DOUBLE_MAT_4x2"/>
-            <enum name="GL_DOUBLE_MAT_4x3"/>
+            <enum name="GL_DOUBLE_MAT2"/>
+            <enum name="GL_DOUBLE_MAT3"/>
+            <enum name="GL_DOUBLE_MAT4"/>
+            <enum name="GL_DOUBLE_MAT2x3"/>
+            <enum name="GL_DOUBLE_MAT2x4"/>
+            <enum name="GL_DOUBLE_MAT3x2"/>
+            <enum name="GL_DOUBLE_MAT3x4"/>
+            <enum name="GL_DOUBLE_MAT4x2"/>
+            <enum name="GL_DOUBLE_MAT4x3"/>
             <enum name="GL_DOUBLE_VEC2"/>
             <enum name="GL_DOUBLE_VEC3"/>
             <enum name="GL_DOUBLE_VEC4"/>
-            <enum name="GL_SAMPLER_CUBEMAP_ARRAY"/>
-            <enum name="GL_SAMPLER_CUBEMAP_ARRAY_SHADOW"/>
-            <enum name="GL_INT_SAMPLER_CUBEMAP_ARRAY"/>
-            <enum name="GL_UNSIGNED_INT_SAMPLER_CUBEMAP_ARRAY"/>
+            <enum name="GL_SAMPLER_CUBE_MAP_ARRAY"/>
+            <enum name="GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW"/>
+            <enum name="GL_INT_SAMPLER_CUBE_MAP_ARRAY"/>
+            <enum name="GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY"/>
             <enum name="GL_SAMPLER_2D_MULTISAMPLE"/>
             <enum name="GL_INT_SAMPLER_2D_MULTISAMPLE"/>
             <enum name="GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE"/>
@@ -13792,13 +13823,13 @@
         <command>
             <proto>void <name>glCopyImageSubData</name></proto>
             <param><ptype>GLuint</ptype> <name>srcName</name></param>
-            <param group="CopyBufferSubDataTarget"><ptype>GLenum</ptype> <name>srcTarget</name></param>
+            <param group="CopyImageSubDataTarget"><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 group="CopyBufferSubDataTarget"><ptype>GLenum</ptype> <name>dstTarget</name></param>
+            <param group="CopyImageSubDataTarget"><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>
@@ -46935,7 +46966,7 @@
                 <enum name="GL_TEXTURE_2D_STACK_BINDING_MESAX"/>
             </require>
         </extension>
-        <extension name="GL_MESA_framebuffer_flip_y" supported="gles2">
+        <extension name="GL_MESA_framebuffer_flip_y" supported="gl|glcore|gles2">
             <require>
                 <enum name="GL_FRAMEBUFFER_FLIP_Y_MESA"/>
             </require>
@@ -47794,15 +47825,15 @@
             </require>
         </extension>
         <extension name="GL_NVX_gpu_multicast2" supported="gl">
-			<require>
-			  <enum name="GL_UPLOAD_GPU_MASK_NV"/>
-			  <command name="glUploadGpuMaskNVX"/>
-			  <command name="glMulticastViewportArrayvNVX"/>
-			  <command name="glMulticastViewportPositionWScaleNVX"/>
-			  <command name="glMulticastScissorArrayvNVX"/>
-			  <command name="glAsyncCopyBufferSubDataNVX"/>
-			  <command name="glAsyncCopyImageSubDataNVX"/>
-			</require>
+            <require>
+                <enum name="GL_UPLOAD_GPU_MASK_NV"/>
+                <command name="glUploadGpuMaskNVX"/>
+                <command name="glMulticastViewportArrayvNVX"/>
+                <command name="glMulticastViewportPositionWScaleNVX"/>
+                <command name="glMulticastScissorArrayvNVX"/>
+                <command name="glAsyncCopyBufferSubDataNVX"/>
+                <command name="glAsyncCopyImageSubDataNVX"/>
+            </require>
         </extension>
         <extension name="GL_NVX_progress_fence" supported="gl">
             <require>
diff --git a/xml/reg.pyc b/xml/reg.pyc
deleted file mode 100644
index 66073ec..0000000
--- a/xml/reg.pyc
+++ /dev/null
Binary files differ
diff --git a/xml/wgl.xml b/xml/wgl.xml
index ab018e4..4d94a36 100644
--- a/xml/wgl.xml
+++ b/xml/wgl.xml
@@ -1985,7 +1985,7 @@
                 <command name="wglWaitForSbcOML"/>
             </require>
         </extension>
-	        <extension name="WGL_NV_multigpu_context" supported="wgl">
+        <extension name="WGL_NV_multigpu_context" supported="wgl">
             <require>
                 <enum name="WGL_CONTEXT_MULTIGPU_ATTRIB_NV"/>
                 <enum name="WGL_CONTEXT_MULTIGPU_ATTRIB_SINGLE_NV"/>