diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+3.2.5.0
+-------
+* Updated OpenGL registry to 97558118d.
+
 3.2.4.0
 -------
 * Updated OpenGL registry to r33312.
diff --git a/OpenGLRaw.cabal b/OpenGLRaw.cabal
--- a/OpenGLRaw.cabal
+++ b/OpenGLRaw.cabal
@@ -1,5 +1,5 @@
 name: OpenGLRaw
-version: 3.2.4.0
+version: 3.2.5.0
 synopsis: A raw binding for the OpenGL graphics system
 description:
   OpenGLRaw is a raw Haskell binding for the OpenGL 4.5 graphics system and
@@ -30,15 +30,15 @@
 tested-with:
   GHC == 7.8.4
   GHC == 7.10.3
-  GHC == 8.0.1
+  GHC == 8.0.2
   GHC == 8.1
 cabal-version: >= 1.10
 extra-source-files:
   CHANGELOG.md
   README.md
   RegistryProcessor/LICENSE
-  RegistryProcessor/OpenGL-Registry/gl.xml
-  RegistryProcessor/OpenGL-Registry/registry.rnc
+  RegistryProcessor/OpenGL-Registry/xml/gl.xml
+  RegistryProcessor/OpenGL-Registry/xml/registry.rnc
   RegistryProcessor/RegistryProcessor.cabal
   RegistryProcessor/Setup.hs
   RegistryProcessor/src/DeclarationParser.hs
@@ -74,6 +74,7 @@
     Graphics.GL.AMD.DebugOutput
     Graphics.GL.AMD.DepthClampSeparate
     Graphics.GL.AMD.DrawBuffersBlend
+    Graphics.GL.AMD.FramebufferSamplePositions
     Graphics.GL.AMD.GPUShaderHalfFloat
     Graphics.GL.AMD.GPUShaderInt64
     Graphics.GL.AMD.InterleavedElements
@@ -151,6 +152,7 @@
     Graphics.GL.ARB.GeometryShader4
     Graphics.GL.ARB.GetProgramBinary
     Graphics.GL.ARB.GetTextureSubImage
+    Graphics.GL.ARB.GlSpirv
     Graphics.GL.ARB.HalfFloatPixel
     Graphics.GL.ARB.HalfFloatVertex
     Graphics.GL.ARB.ImagingCompatibility
@@ -306,6 +308,7 @@
     Graphics.GL.EXT.DrawBuffers2
     Graphics.GL.EXT.DrawInstanced
     Graphics.GL.EXT.DrawRangeElements
+    Graphics.GL.EXT.ExternalBuffer
     Graphics.GL.EXT.FogCoord
     Graphics.GL.EXT.FourTwoTwoPixels
     Graphics.GL.EXT.FramebufferBlit
@@ -321,6 +324,9 @@
     Graphics.GL.EXT.IndexFunc
     Graphics.GL.EXT.IndexMaterial
     Graphics.GL.EXT.LightTexture
+    Graphics.GL.EXT.MemoryObject
+    Graphics.GL.EXT.MemoryObjectFd
+    Graphics.GL.EXT.MemoryObjectWin32
     Graphics.GL.EXT.MultiDrawArrays
     Graphics.GL.EXT.Multisample
     Graphics.GL.EXT.PackedDepthStencil
@@ -336,6 +342,9 @@
     Graphics.GL.EXT.RasterMultisample
     Graphics.GL.EXT.RescaleNormal
     Graphics.GL.EXT.SecondaryColor
+    Graphics.GL.EXT.Semaphore
+    Graphics.GL.EXT.SemaphoreFd
+    Graphics.GL.EXT.SemaphoreWin32
     Graphics.GL.EXT.SeparateShaderObjects
     Graphics.GL.EXT.SeparateSpecularColor
     Graphics.GL.EXT.ShaderImageLoadStore
@@ -373,6 +382,7 @@
     Graphics.GL.EXT.VertexAttrib64Bit
     Graphics.GL.EXT.VertexShader
     Graphics.GL.EXT.VertexWeighting
+    Graphics.GL.EXT.Win32KeyedMutex
     Graphics.GL.EXT.WindowRectangles
     Graphics.GL.EXT.X11SyncObject
     Graphics.GL.Functions
@@ -421,6 +431,7 @@
     Graphics.GL.MESAX
     Graphics.GL.MESAX.TextureStack
     Graphics.GL.NV
+    Graphics.GL.NV.AlphaToCoverageDitherControl
     Graphics.GL.NV.BindlessMultiDrawIndirect
     Graphics.GL.NV.BindlessMultiDrawIndirectCount
     Graphics.GL.NV.BindlessTexture
@@ -439,6 +450,7 @@
     Graphics.GL.NV.DepthBufferFloat
     Graphics.GL.NV.DepthClamp
     Graphics.GL.NV.DrawTexture
+    Graphics.GL.NV.DrawVulkanImage
     Graphics.GL.NV.Evaluators
     Graphics.GL.NV.ExplicitMultisample
     Graphics.GL.NV.Fence
@@ -450,6 +462,7 @@
     Graphics.GL.NV.FragmentProgram2
     Graphics.GL.NV.FramebufferMixedSamples
     Graphics.GL.NV.FramebufferMultisampleCoverage
+    Graphics.GL.NV.GPUMulticast
     Graphics.GL.NV.GPUProgram4
     Graphics.GL.NV.GPUProgram5
     Graphics.GL.NV.GPUShader5
@@ -504,6 +517,7 @@
     Graphics.GL.NVX
     Graphics.GL.NVX.ConditionalRender
     Graphics.GL.NVX.GPUMemoryInfo
+    Graphics.GL.NVX.LinkedGPUMulticast
     Graphics.GL.OES
     Graphics.GL.OES.ByteCoordinates
     Graphics.GL.OES.CompressedPalettedTexture
@@ -642,6 +656,7 @@
     Graphics.GL.Functions.F30
     Graphics.GL.Functions.F31
     Graphics.GL.Functions.F32
+    Graphics.GL.Functions.F33
   c-sources:
     cbits/HsOpenGLRaw.c
   hs-source-dirs: src
diff --git a/RegistryProcessor/OpenGL-Registry/gl.xml b/RegistryProcessor/OpenGL-Registry/gl.xml
deleted file mode 100644
# file too large to diff: RegistryProcessor/OpenGL-Registry/gl.xml
diff --git a/RegistryProcessor/OpenGL-Registry/registry.rnc b/RegistryProcessor/OpenGL-Registry/registry.rnc
deleted file mode 100644
--- a/RegistryProcessor/OpenGL-Registry/registry.rnc
+++ /dev/null
@@ -1,288 +0,0 @@
-# Copyright (c) 2013-2016 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
-# without limitation the rights to use, copy, modify, merge, publish,
-# 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.
-# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-# MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-
-# Relax NG schema for Khronos Registry XML
-# See http://www.opengl.org/registry/
-#
-# Last modified 2013/06/14
-# This definition is subject to change (mostly in the form of additions)
-
-namespace xsd = "http://www.w3.org/2001/XMLSchema-datatypes"
-
-# Toplevel is a <registry> tag.
-# May be led by an optional <comment> tag containing e.g. copyrights.
-start = element registry {
-    (
-        element comment { text } ? |
-        Types      * |
-        Groups     * |
-        Enums      * |
-        Commands   * |
-        Feature    * |
-        Extensions *
-    ) *
-}
-
-# <types> defines a group of types
-Types = element types {
-    Type *
-}
-
-# <type> defines a single type. It is usually a C typedef but
-# may contain arbitrary C code.
-#   name - name of this type, if not present in the <name> tag
-#   api - matches a <feature> api attribute, if present
-#   requires - name of another type definition required by this one
-#   type - "group", if present, indicating a group of values in the
-#       corresponding <enums> definition.
-#   comment - unused
-#   <apientry /> - substitutes for an APIENTRY-style macro on output
-#   <name> - contains typename
-Type = element type {
-    attribute api { text } ? ,
-    attribute requires { text } ? ,
-    attribute name { TypeName } ? ,
-    attribute type { text } ? ,
-    Comment ? ,
-    text ,
-    element apientry { text } ? ,
-    text ,
-    element name { TypeName } ? ,
-    text
-}
-
-# <groups> defines a group of enum groups
-Groups = element groups {
-    Group *
-}
-
-# <group> defines a single enum group. Enums may
-# be in multiple groups.
-#   name - group name
-#   comment - unused
-#   <enum name=""> - members of the group
-
-Group = element group {
-    Name ,
-    Comment ? ,
-    element enum { Name } *
-}
-
-# <enums> defines a group of enumerants
-#   namespace - identifies a numeric namespace
-#   group - identifies a functional subset of the namespace - same as <group name="">
-#   start, end - beginning and end of a numeric range in the namespace
-#   vendor - owner of the numeric range
-#   type - "bitmask", if present
-#   comment - unused
-Enums = element enums {
-    attribute namespace { text } ? ,
-    attribute group { text } ? ,
-    attribute type { text } ? ,
-    attribute start { Integer } ? ,
-    attribute end { Integer } ? ,
-    Vendor ? ,
-    Comment ? ,
-    (Enum | Unused) *
-}
-# <enum> defines a single enumerant
-#   value - integer (including hex) value of the enumerant
-#   api - matches a <feature> api attribute, if present
-#   type - "u" (unsigned), "ull" (uint64), or integer if not present
-#   name - enumerant name
-#   alias - another enumerant this is semantically identical to
-#   comment - unused
-Enum = element enum {
-    (
-        attribute value { Integer } &
-        attribute api { text } ? &
-        attribute type { TypeSuffix } ? &
-        attribute name { text } &
-        attribute alias { text } ? &
-        Comment ?
-    )
-}
-# <unused> defines a range of enumerants not currently being used
-#   start, end - beginning and end of an unused numeric range
-#   vendor - unused
-#   comment - unused
-Unused = element unused {
-    attribute start { Integer } ,
-    attribute end { Integer } ? ,
-    Vendor ? ,
-    Comment ?
-}
-# <commands> defines a group of commands
-#   namespace - identifies a function namespace
-Commands = element commands {
-    attribute namespace { text } ? ,
-    Command *
-}
-# <command> defines a single command
-#   <proto> is the C function prototype, including the return type
-#   <param> are function parameters, in order
-#     <ptype> is a <type> name, if present
-#     <name> is the function / parameter name
-# The textual contents of <proto> and <param> should be legal C
-# for those parts of a function declaration.
-#   <alias> - denotes function aliasing
-#     name - name of aliased function
-#   <vecequiv> - denotes scalar / vector function equivalence
-#     name - name of corresponding vector form, e.g. (glColor3f -> glColor3fv)
-#   <glx> - information about GLX protocol
-#     type - "render", "single", or "vendor" for GLXRender, GLXSingle, GLXVendorPrivate{WithReply}
-#     opcode - numeric opcode of specified type for this function
-#     name - if present, protocol name (defaults to command name)
-#     comment - unused
-Command = element command {
-    Comment ? ,
-    element proto {
-        attribute group { text } ? ,
-        text ,
-        element ptype { TypeName } ? ,
-        text ,
-        element name { text } ,
-        text
-    } ,
-    element param {
-        attribute group { text } ? ,
-        attribute len { text } ? ,
-        text ,
-        element ptype { TypeName } ? ,
-        text ,
-        element name { text } ,
-        text
-    } * ,
-    (
-        element alias {
-            Name
-        } ? &
-        element vecequiv {
-            Name
-        } ? &
-        element glx {
-            attribute type { text } ,
-            attribute opcode { xsd:integer } ,
-            Name ? ,
-            Comment ?
-        } *
-    )
-}
-# Each <feature> defines the interface of an API version (e.g. OpenGL 1.2)
-#   api - API tag (e.g. 'gl', 'gles2', etc. - used internally, not
-#     neccessarily an actual API name
-#   name - version name (C preprocessor name, e.g. GL_VERSION_4_2)
-#   number - version number, e.g. 4.2
-#   protect - additional #ifdef symbol to place around the feature
-#   <require> / <remove> contains features to require or remove in
-#                        this version
-#     profile - only require/remove when generated profile matches
-#     comment - unused
-Feature = element feature {
-    attribute api { text } ,
-    Name ,
-    attribute number { xsd:float } ,
-    attribute protect { text } ?,
-    Comment ? ,
-    (
-        element require {
-            ProfileName ? ,
-            Comment ? ,
-            InterfaceElement *
-        } |
-        element remove {
-            ProfileName ? ,
-            Comment ? ,
-            InterfaceElement *
-        }
-    ) *
-}
-Extensions = element extensions {
-    Extension *
-}
-# Defines the interface of an API <extension>. Like a <feature>
-# tag, but with a slightly different api attribute.
-#   api - regexp pattern matching one or more API tags, indicating
-#     which APIs the extension is known to work with. The only
-#     syntax supported is <name>{|<name>}* and each name must
-#     exactly match an API being generated (implicit ^$ surrounding).
-# In addition, <require> / <remove> tags also support an
-# api attribute:
-#     api - only require/remove these features for the matching API.
-#       Not a regular expression.
-Extension = element extension {
-    Name ,
-    attribute protect { text } ?,
-    attribute supported { StringGroup } ? ,
-    Comment ? ,
-    (
-        element require {
-            attribute api { text } ? ,
-            ProfileName ? ,
-            Comment ? ,
-            InterfaceElement *
-        } |
-        element remove {
-            attribute api { text } ? ,
-            ProfileName ? ,
-            Comment ? ,
-            InterfaceElement *
-        }
-    ) *
-}
-# Contents of a <require> / <remove> tag, defining a group
-# of features to require or remove.
-#   <type> / <enum> / <command> all have attributes
-#     name - feature name which must match
-InterfaceElement =
-    element type {
-        Name ,
-        Comment ?
-    } |
-    element enum {
-        Name ,
-        Comment ?
-    } |
-    element command {
-        Name ,
-        Comment ?
-    }
-
-# Integers are allowed to be either decimal or C-hex (0x[0-9A-F]+), but
-# XML Schema types don't seem to support hex notation, so we use this
-# as a placeholder.
-Integer = text
-
-# TypeName is an argument/return value C type name
-TypeName = text
-
-# TypeSuffix is a C numeric type suffix, e.g. 'u' or 'ull'
-TypeSuffix = text
-
-# StringGroup is a regular expression with an implicit
-#   '^(' and ')$' bracketing it.
-StringGroup = text
-
-# Repeatedly used attributes
-ProfileName = attribute profile { text }
-Vendor = attribute vendor { text }
-Comment = attribute comment { text }
-Name = attribute name { text }
diff --git a/RegistryProcessor/OpenGL-Registry/xml/gl.xml b/RegistryProcessor/OpenGL-Registry/xml/gl.xml
new file mode 100644
# file too large to diff: RegistryProcessor/OpenGL-Registry/xml/gl.xml
diff --git a/RegistryProcessor/OpenGL-Registry/xml/registry.rnc b/RegistryProcessor/OpenGL-Registry/xml/registry.rnc
new file mode 100644
--- /dev/null
+++ b/RegistryProcessor/OpenGL-Registry/xml/registry.rnc
@@ -0,0 +1,281 @@
+# Copyright (c) 2013-2017 The Khronos Group Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Relax NG schema for Khronos Registry XML
+# See https://github.com/KhronosGroup/OpenGL-Registry
+#
+# Last modified 2013/06/14
+# This definition is subject to change (mostly in the form of additions)
+
+namespace xsd = "http://www.w3.org/2001/XMLSchema-datatypes"
+
+# Toplevel is a <registry> tag.
+# May be led by an optional <comment> tag containing e.g. copyrights.
+start = element registry {
+    (
+        element comment { text } ? |
+        Types      * |
+        Groups     * |
+        Enums      * |
+        Commands   * |
+        Feature    * |
+        Extensions *
+    ) *
+}
+
+# <types> defines a group of types
+Types = element types {
+    Type *
+}
+
+# <type> defines a single type. It is usually a C typedef but
+# may contain arbitrary C code.
+#   name - name of this type, if not present in the <name> tag
+#   api - matches a <feature> api attribute, if present
+#   requires - name of another type definition required by this one
+#   type - "group", if present, indicating a group of values in the
+#       corresponding <enums> definition.
+#   comment - unused
+#   <apientry /> - substitutes for an APIENTRY-style macro on output
+#   <name> - contains typename
+Type = element type {
+    attribute api { text } ? ,
+    attribute requires { text } ? ,
+    attribute name { TypeName } ? ,
+    attribute type { text } ? ,
+    Comment ? ,
+    text ,
+    element apientry { text } ? ,
+    text ,
+    element name { TypeName } ? ,
+    text
+}
+
+# <groups> defines a group of enum groups
+Groups = element groups {
+    Group *
+}
+
+# <group> defines a single enum group. Enums may
+# be in multiple groups.
+#   name - group name
+#   comment - unused
+#   <enum name=""> - members of the group
+
+Group = element group {
+    Name ,
+    Comment ? ,
+    element enum { Name } *
+}
+
+# <enums> defines a group of enumerants
+#   namespace - identifies a numeric namespace
+#   group - identifies a functional subset of the namespace - same as <group name="">
+#   start, end - beginning and end of a numeric range in the namespace
+#   vendor - owner of the numeric range
+#   type - "bitmask", if present
+#   comment - unused
+Enums = element enums {
+    attribute namespace { text } ? ,
+    attribute group { text } ? ,
+    attribute type { text } ? ,
+    attribute start { Integer } ? ,
+    attribute end { Integer } ? ,
+    Vendor ? ,
+    Comment ? ,
+    (Enum | Unused) *
+}
+# <enum> defines a single enumerant
+#   value - integer (including hex) value of the enumerant
+#   api - matches a <feature> api attribute, if present
+#   type - "u" (unsigned), "ull" (uint64), or integer if not present
+#   name - enumerant name
+#   alias - another enumerant this is semantically identical to
+#   comment - unused
+Enum = element enum {
+    (
+        attribute value { Integer } &
+        attribute api { text } ? &
+        attribute type { TypeSuffix } ? &
+        attribute name { text } &
+        attribute alias { text } ? &
+        Comment ?
+    )
+}
+# <unused> defines a range of enumerants not currently being used
+#   start, end - beginning and end of an unused numeric range
+#   vendor - unused
+#   comment - unused
+Unused = element unused {
+    attribute start { Integer } ,
+    attribute end { Integer } ? ,
+    Vendor ? ,
+    Comment ?
+}
+# <commands> defines a group of commands
+#   namespace - identifies a function namespace
+Commands = element commands {
+    attribute namespace { text } ? ,
+    Command *
+}
+# <command> defines a single command
+#   <proto> is the C function prototype, including the return type
+#   <param> are function parameters, in order
+#     <ptype> is a <type> name, if present
+#     <name> is the function / parameter name
+# The textual contents of <proto> and <param> should be legal C
+# for those parts of a function declaration.
+#   <alias> - denotes function aliasing
+#     name - name of aliased function
+#   <vecequiv> - denotes scalar / vector function equivalence
+#     name - name of corresponding vector form, e.g. (glColor3f -> glColor3fv)
+#   <glx> - information about GLX protocol
+#     type - "render", "single", or "vendor" for GLXRender, GLXSingle, GLXVendorPrivate{WithReply}
+#     opcode - numeric opcode of specified type for this function
+#     name - if present, protocol name (defaults to command name)
+#     comment - unused
+Command = element command {
+    Comment ? ,
+    element proto {
+        attribute group { text } ? ,
+        text ,
+        element ptype { TypeName } ? ,
+        text ,
+        element name { text } ,
+        text
+    } ,
+    element param {
+        attribute group { text } ? ,
+        attribute len { text } ? ,
+        text ,
+        element ptype { TypeName } ? ,
+        text ,
+        element name { text } ,
+        text
+    } * ,
+    (
+        element alias {
+            Name
+        } ? &
+        element vecequiv {
+            Name
+        } ? &
+        element glx {
+            attribute type { text } ,
+            attribute opcode { xsd:integer } ,
+            Name ? ,
+            Comment ?
+        } *
+    )
+}
+# Each <feature> defines the interface of an API version (e.g. OpenGL 1.2)
+#   api - API tag (e.g. 'gl', 'gles2', etc. - used internally, not
+#     neccessarily an actual API name
+#   name - version name (C preprocessor name, e.g. GL_VERSION_4_2)
+#   number - version number, e.g. 4.2
+#   protect - additional #ifdef symbol to place around the feature
+#   <require> / <remove> contains features to require or remove in
+#                        this version
+#     profile - only require/remove when generated profile matches
+#     comment - unused
+Feature = element feature {
+    attribute api { text } ,
+    Name ,
+    attribute number { xsd:float } ,
+    attribute protect { text } ?,
+    Comment ? ,
+    (
+        element require {
+            ProfileName ? ,
+            Comment ? ,
+            InterfaceElement *
+        } |
+        element remove {
+            ProfileName ? ,
+            Comment ? ,
+            InterfaceElement *
+        }
+    ) *
+}
+Extensions = element extensions {
+    Extension *
+}
+# Defines the interface of an API <extension>. Like a <feature>
+# tag, but with a slightly different api attribute.
+#   api - regexp pattern matching one or more API tags, indicating
+#     which APIs the extension is known to work with. The only
+#     syntax supported is <name>{|<name>}* and each name must
+#     exactly match an API being generated (implicit ^$ surrounding).
+# In addition, <require> / <remove> tags also support an
+# api attribute:
+#     api - only require/remove these features for the matching API.
+#       Not a regular expression.
+Extension = element extension {
+    Name ,
+    attribute protect { text } ?,
+    attribute supported { StringGroup } ? ,
+    Comment ? ,
+    (
+        element require {
+            attribute api { text } ? ,
+            ProfileName ? ,
+            Comment ? ,
+            InterfaceElement *
+        } |
+        element remove {
+            attribute api { text } ? ,
+            ProfileName ? ,
+            Comment ? ,
+            InterfaceElement *
+        }
+    ) *
+}
+# Contents of a <require> / <remove> tag, defining a group
+# of features to require or remove.
+#   <type> / <enum> / <command> all have attributes
+#     name - feature name which must match
+InterfaceElement =
+    element type {
+        Name ,
+        Comment ?
+    } |
+    element enum {
+        Name ,
+        Comment ?
+    } |
+    element command {
+        Name ,
+        Comment ?
+    }
+
+# Integers are allowed to be either decimal or C-hex (0x[0-9A-F]+), but
+# XML Schema types don't seem to support hex notation, so we use this
+# as a placeholder.
+Integer = text
+
+# TypeName is an argument/return value C type name
+TypeName = text
+
+# TypeSuffix is a C numeric type suffix, e.g. 'u' or 'ull'
+TypeSuffix = text
+
+# StringGroup is a regular expression with an implicit
+#   '^(' and ')$' bracketing it.
+StringGroup = text
+
+# Repeatedly used attributes
+ProfileName = attribute profile { text }
+Vendor = attribute vendor { text }
+Comment = attribute comment { text }
+Name = attribute name { text }
diff --git a/RegistryProcessor/RegistryProcessor.cabal b/RegistryProcessor/RegistryProcessor.cabal
--- a/RegistryProcessor/RegistryProcessor.cabal
+++ b/RegistryProcessor/RegistryProcessor.cabal
@@ -20,7 +20,7 @@
     base       >= 4   && < 5,
     containers >= 0.3 && < 0.6,
     hxt        >= 9.3 && < 9.4,
-    directory  >= 1.0 && < 1.3,
+    directory  >= 1.0 && < 1.4,
     filepath   >= 1.0 && < 1.5,
     pretty     >= 1.1 && < 1.2
   hs-source-dirs: src
diff --git a/src/Graphics/GL/AMD.hs b/src/Graphics/GL/AMD.hs
--- a/src/Graphics/GL/AMD.hs
+++ b/src/Graphics/GL/AMD.hs
@@ -17,6 +17,7 @@
   module Graphics.GL.AMD.DebugOutput,
   module Graphics.GL.AMD.DepthClampSeparate,
   module Graphics.GL.AMD.DrawBuffersBlend,
+  module Graphics.GL.AMD.FramebufferSamplePositions,
   module Graphics.GL.AMD.GPUShaderHalfFloat,
   module Graphics.GL.AMD.GPUShaderInt64,
   module Graphics.GL.AMD.InterleavedElements,
@@ -38,6 +39,7 @@
 import Graphics.GL.AMD.DebugOutput
 import Graphics.GL.AMD.DepthClampSeparate
 import Graphics.GL.AMD.DrawBuffersBlend
+import Graphics.GL.AMD.FramebufferSamplePositions
 import Graphics.GL.AMD.GPUShaderHalfFloat
 import Graphics.GL.AMD.GPUShaderInt64
 import Graphics.GL.AMD.InterleavedElements
diff --git a/src/Graphics/GL/AMD/FramebufferSamplePositions.hs b/src/Graphics/GL/AMD/FramebufferSamplePositions.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/AMD/FramebufferSamplePositions.hs
@@ -0,0 +1,32 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.AMD.FramebufferSamplePositions
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.AMD.FramebufferSamplePositions (
+  -- * Extension Support
+  glGetAMDFramebufferSamplePositions,
+  gl_AMD_framebuffer_sample_positions,
+  -- * Enums
+  pattern GL_ALL_PIXELS_AMD,
+  pattern GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD,
+  pattern GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD,
+  pattern GL_SUBSAMPLE_DISTANCE_AMD,
+  -- * Functions
+  glFramebufferSamplePositionsfvAMD,
+  glGetFramebufferParameterfvAMD,
+  glGetNamedFramebufferParameterfvAMD,
+  glNamedFramebufferSamplePositionsfvAMD
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/ARB.hs b/src/Graphics/GL/ARB.hs
--- a/src/Graphics/GL/ARB.hs
+++ b/src/Graphics/GL/ARB.hs
@@ -57,6 +57,7 @@
   module Graphics.GL.ARB.GeometryShader4,
   module Graphics.GL.ARB.GetProgramBinary,
   module Graphics.GL.ARB.GetTextureSubImage,
+  module Graphics.GL.ARB.GlSpirv,
   module Graphics.GL.ARB.HalfFloatPixel,
   module Graphics.GL.ARB.HalfFloatVertex,
   module Graphics.GL.ARB.ImagingCompatibility,
@@ -197,6 +198,7 @@
 import Graphics.GL.ARB.GeometryShader4
 import Graphics.GL.ARB.GetProgramBinary
 import Graphics.GL.ARB.GetTextureSubImage
+import Graphics.GL.ARB.GlSpirv
 import Graphics.GL.ARB.HalfFloatPixel
 import Graphics.GL.ARB.HalfFloatVertex
 import Graphics.GL.ARB.ImagingCompatibility
diff --git a/src/Graphics/GL/ARB/GlSpirv.hs b/src/Graphics/GL/ARB/GlSpirv.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/ARB/GlSpirv.hs
@@ -0,0 +1,27 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.ARB.GlSpirv
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.ARB.GlSpirv (
+  -- * Extension Support
+  glGetARBGlSpirv,
+  gl_ARB_gl_spirv,
+  -- * Enums
+  pattern GL_SHADER_BINARY_FORMAT_SPIR_V_ARB,
+  pattern GL_SPIR_V_BINARY_ARB,
+  -- * Functions
+  glSpecializeShaderARB
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/ARB/SeparateShaderObjects.hs b/src/Graphics/GL/ARB/SeparateShaderObjects.hs
--- a/src/Graphics/GL/ARB/SeparateShaderObjects.hs
+++ b/src/Graphics/GL/ARB/SeparateShaderObjects.hs
@@ -34,6 +34,7 @@
   glGetProgramPipelineInfoLog,
   glGetProgramPipelineiv,
   glIsProgramPipeline,
+  glProgramParameteri,
   glProgramUniform1d,
   glProgramUniform1dv,
   glProgramUniform1f,
diff --git a/src/Graphics/GL/EXT.hs b/src/Graphics/GL/EXT.hs
--- a/src/Graphics/GL/EXT.hs
+++ b/src/Graphics/GL/EXT.hs
@@ -36,6 +36,7 @@
   module Graphics.GL.EXT.DrawBuffers2,
   module Graphics.GL.EXT.DrawInstanced,
   module Graphics.GL.EXT.DrawRangeElements,
+  module Graphics.GL.EXT.ExternalBuffer,
   module Graphics.GL.EXT.FogCoord,
   module Graphics.GL.EXT.FourTwoTwoPixels,
   module Graphics.GL.EXT.FramebufferBlit,
@@ -51,6 +52,9 @@
   module Graphics.GL.EXT.IndexFunc,
   module Graphics.GL.EXT.IndexMaterial,
   module Graphics.GL.EXT.LightTexture,
+  module Graphics.GL.EXT.MemoryObject,
+  module Graphics.GL.EXT.MemoryObjectFd,
+  module Graphics.GL.EXT.MemoryObjectWin32,
   module Graphics.GL.EXT.MultiDrawArrays,
   module Graphics.GL.EXT.Multisample,
   module Graphics.GL.EXT.PackedDepthStencil,
@@ -66,6 +70,9 @@
   module Graphics.GL.EXT.RasterMultisample,
   module Graphics.GL.EXT.RescaleNormal,
   module Graphics.GL.EXT.SecondaryColor,
+  module Graphics.GL.EXT.Semaphore,
+  module Graphics.GL.EXT.SemaphoreFd,
+  module Graphics.GL.EXT.SemaphoreWin32,
   module Graphics.GL.EXT.SeparateShaderObjects,
   module Graphics.GL.EXT.SeparateSpecularColor,
   module Graphics.GL.EXT.ShaderImageLoadStore,
@@ -103,6 +110,7 @@
   module Graphics.GL.EXT.VertexAttrib64Bit,
   module Graphics.GL.EXT.VertexShader,
   module Graphics.GL.EXT.VertexWeighting,
+  module Graphics.GL.EXT.Win32KeyedMutex,
   module Graphics.GL.EXT.WindowRectangles,
   module Graphics.GL.EXT.X11SyncObject
 ) where
@@ -130,6 +138,7 @@
 import Graphics.GL.EXT.DrawBuffers2
 import Graphics.GL.EXT.DrawInstanced
 import Graphics.GL.EXT.DrawRangeElements
+import Graphics.GL.EXT.ExternalBuffer
 import Graphics.GL.EXT.FogCoord
 import Graphics.GL.EXT.FourTwoTwoPixels
 import Graphics.GL.EXT.FramebufferBlit
@@ -145,6 +154,9 @@
 import Graphics.GL.EXT.IndexFunc
 import Graphics.GL.EXT.IndexMaterial
 import Graphics.GL.EXT.LightTexture
+import Graphics.GL.EXT.MemoryObject
+import Graphics.GL.EXT.MemoryObjectFd
+import Graphics.GL.EXT.MemoryObjectWin32
 import Graphics.GL.EXT.MultiDrawArrays
 import Graphics.GL.EXT.Multisample
 import Graphics.GL.EXT.PackedDepthStencil
@@ -160,6 +172,9 @@
 import Graphics.GL.EXT.RasterMultisample
 import Graphics.GL.EXT.RescaleNormal
 import Graphics.GL.EXT.SecondaryColor
+import Graphics.GL.EXT.Semaphore
+import Graphics.GL.EXT.SemaphoreFd
+import Graphics.GL.EXT.SemaphoreWin32
 import Graphics.GL.EXT.SeparateShaderObjects
 import Graphics.GL.EXT.SeparateSpecularColor
 import Graphics.GL.EXT.ShaderImageLoadStore
@@ -197,5 +212,6 @@
 import Graphics.GL.EXT.VertexAttrib64Bit
 import Graphics.GL.EXT.VertexShader
 import Graphics.GL.EXT.VertexWeighting
+import Graphics.GL.EXT.Win32KeyedMutex
 import Graphics.GL.EXT.WindowRectangles
 import Graphics.GL.EXT.X11SyncObject
diff --git a/src/Graphics/GL/EXT/ExternalBuffer.hs b/src/Graphics/GL/EXT/ExternalBuffer.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/ExternalBuffer.hs
@@ -0,0 +1,23 @@
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.ExternalBuffer
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.ExternalBuffer (
+  -- * Extension Support
+  glGetEXTExternalBuffer,
+  gl_EXT_external_buffer,
+  -- * Functions
+  glBufferStorageExternalEXT,
+  glNamedBufferStorageExternalEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/MemoryObject.hs b/src/Graphics/GL/EXT/MemoryObject.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/MemoryObject.hs
@@ -0,0 +1,54 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.MemoryObject
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.MemoryObject (
+  -- * Extension Support
+  glGetEXTMemoryObject,
+  gl_EXT_memory_object,
+  -- * Enums
+  pattern GL_DEDICATED_MEMORY_OBJECT_EXT,
+  pattern GL_DEVICE_UUID_EXT,
+  pattern GL_DRIVER_UUID_EXT,
+  pattern GL_LINEAR_TILING_EXT,
+  pattern GL_NUM_DEVICE_UUIDS_EXT,
+  pattern GL_NUM_TILING_TYPES_EXT,
+  pattern GL_OPTIMAL_TILING_EXT,
+  pattern GL_PROTECTED_MEMORY_OBJECT_EXT,
+  pattern GL_TEXTURE_TILING_EXT,
+  pattern GL_TILING_TYPES_EXT,
+  pattern GL_UUID_SIZE_EXT,
+  -- * Functions
+  glBufferStorageMemEXT,
+  glCreateMemoryObjectsEXT,
+  glDeleteMemoryObjectsEXT,
+  glGetMemoryObjectParameterivEXT,
+  glGetUnsignedBytei_vEXT,
+  glGetUnsignedBytevEXT,
+  glIsMemoryObjectEXT,
+  glMemoryObjectParameterivEXT,
+  glNamedBufferStorageMemEXT,
+  glTexStorageMem1DEXT,
+  glTexStorageMem2DEXT,
+  glTexStorageMem2DMultisampleEXT,
+  glTexStorageMem3DEXT,
+  glTexStorageMem3DMultisampleEXT,
+  glTextureStorageMem1DEXT,
+  glTextureStorageMem2DEXT,
+  glTextureStorageMem2DMultisampleEXT,
+  glTextureStorageMem3DEXT,
+  glTextureStorageMem3DMultisampleEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/MemoryObjectFd.hs b/src/Graphics/GL/EXT/MemoryObjectFd.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/MemoryObjectFd.hs
@@ -0,0 +1,26 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.MemoryObjectFd
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.MemoryObjectFd (
+  -- * Extension Support
+  glGetEXTMemoryObjectFd,
+  gl_EXT_memory_object_fd,
+  -- * Enums
+  pattern GL_HANDLE_TYPE_OPAQUE_FD_EXT,
+  -- * Functions
+  glImportMemoryFdEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/MemoryObjectWin32.hs b/src/Graphics/GL/EXT/MemoryObjectWin32.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/MemoryObjectWin32.hs
@@ -0,0 +1,35 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.MemoryObjectWin32
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.MemoryObjectWin32 (
+  -- * Extension Support
+  glGetEXTMemoryObjectWin32,
+  gl_EXT_memory_object_win32,
+  -- * Enums
+  pattern GL_DEVICE_LUID_EXT,
+  pattern GL_DEVICE_NODE_MASK_EXT,
+  pattern GL_HANDLE_TYPE_D3D11_IMAGE_EXT,
+  pattern GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT,
+  pattern GL_HANDLE_TYPE_D3D12_RESOURCE_EXT,
+  pattern GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT,
+  pattern GL_HANDLE_TYPE_OPAQUE_WIN32_EXT,
+  pattern GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT,
+  pattern GL_LUID_SIZE_EXT,
+  -- * Functions
+  glImportMemoryWin32HandleEXT,
+  glImportMemoryWin32NameEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/Semaphore.hs b/src/Graphics/GL/EXT/Semaphore.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/Semaphore.hs
@@ -0,0 +1,44 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.Semaphore
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.Semaphore (
+  -- * Extension Support
+  glGetEXTSemaphore,
+  gl_EXT_semaphore,
+  -- * Enums
+  pattern GL_DEVICE_UUID_EXT,
+  pattern GL_DRIVER_UUID_EXT,
+  pattern GL_LAYOUT_COLOR_ATTACHMENT_EXT,
+  pattern GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT,
+  pattern GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT,
+  pattern GL_LAYOUT_GENERAL_EXT,
+  pattern GL_LAYOUT_SHADER_READ_ONLY_EXT,
+  pattern GL_LAYOUT_TRANSFER_DST_EXT,
+  pattern GL_LAYOUT_TRANSFER_SRC_EXT,
+  pattern GL_NUM_DEVICE_UUIDS_EXT,
+  pattern GL_UUID_SIZE_EXT,
+  -- * Functions
+  glDeleteSemaphoresEXT,
+  glGenSemaphoresEXT,
+  glGetSemaphoreParameterui64vEXT,
+  glGetUnsignedBytei_vEXT,
+  glGetUnsignedBytevEXT,
+  glIsSemaphoreEXT,
+  glSemaphoreParameterui64vEXT,
+  glSignalSemaphoreEXT,
+  glWaitSemaphoreEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/SemaphoreFd.hs b/src/Graphics/GL/EXT/SemaphoreFd.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/SemaphoreFd.hs
@@ -0,0 +1,26 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.SemaphoreFd
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.SemaphoreFd (
+  -- * Extension Support
+  glGetEXTSemaphoreFd,
+  gl_EXT_semaphore_fd,
+  -- * Enums
+  pattern GL_HANDLE_TYPE_OPAQUE_FD_EXT,
+  -- * Functions
+  glImportSemaphoreFdEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/SemaphoreWin32.hs b/src/Graphics/GL/EXT/SemaphoreWin32.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/SemaphoreWin32.hs
@@ -0,0 +1,33 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.SemaphoreWin32
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.SemaphoreWin32 (
+  -- * Extension Support
+  glGetEXTSemaphoreWin32,
+  gl_EXT_semaphore_win32,
+  -- * Enums
+  pattern GL_D3D12_FENCE_VALUE_EXT,
+  pattern GL_DEVICE_LUID_EXT,
+  pattern GL_DEVICE_NODE_MASK_EXT,
+  pattern GL_HANDLE_TYPE_D3D12_FENCE_EXT,
+  pattern GL_HANDLE_TYPE_OPAQUE_WIN32_EXT,
+  pattern GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT,
+  pattern GL_LUID_SIZE_EXT,
+  -- * Functions
+  glImportSemaphoreWin32HandleEXT,
+  glImportSemaphoreWin32NameEXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/EXT/Win32KeyedMutex.hs b/src/Graphics/GL/EXT/Win32KeyedMutex.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/EXT/Win32KeyedMutex.hs
@@ -0,0 +1,23 @@
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.EXT.Win32KeyedMutex
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.EXT.Win32KeyedMutex (
+  -- * Extension Support
+  glGetEXTWin32KeyedMutex,
+  gl_EXT_win32_keyed_mutex,
+  -- * Functions
+  glAcquireKeyedMutexWin32EXT,
+  glReleaseKeyedMutexWin32EXT
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/ExtensionPredicates.hs b/src/Graphics/GL/ExtensionPredicates.hs
--- a/src/Graphics/GL/ExtensionPredicates.hs
+++ b/src/Graphics/GL/ExtensionPredicates.hs
@@ -96,6 +96,17 @@
 gl_AMD_draw_buffers_blend = member "GL_AMD_draw_buffers_blend" extensions
 {-# NOINLINE gl_AMD_draw_buffers_blend #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/AMD/framebuffer_sample_positions.txt AMD_framebuffer_sample_positions> extension supported?
+glGetAMDFramebufferSamplePositions :: MonadIO m => m Bool
+glGetAMDFramebufferSamplePositions = getExtensions >>= (return . member "GL_AMD_framebuffer_sample_positions")
+
+-- | Is the <https://www.opengl.org/registry/specs/AMD/framebuffer_sample_positions.txt AMD_framebuffer_sample_positions> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetAMDFramebufferSamplePositions' in those cases instead.
+gl_AMD_framebuffer_sample_positions :: Bool
+gl_AMD_framebuffer_sample_positions = member "GL_AMD_framebuffer_sample_positions" extensions
+{-# NOINLINE gl_AMD_framebuffer_sample_positions #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/AMD/gpu_shader_half_float.txt AMD_gpu_shader_half_float> extension supported?
 glGetAMDGPUShaderHalfFloat :: MonadIO m => m Bool
 glGetAMDGPUShaderHalfFloat = getExtensions >>= (return . member "GL_AMD_gpu_shader_half_float")
@@ -877,6 +888,17 @@
 gl_ARB_get_texture_sub_image = member "GL_ARB_get_texture_sub_image" extensions
 {-# NOINLINE gl_ARB_get_texture_sub_image #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/ARB/gl_spirv.txt ARB_gl_spirv> extension supported?
+glGetARBGlSpirv :: MonadIO m => m Bool
+glGetARBGlSpirv = getExtensions >>= (return . member "GL_ARB_gl_spirv")
+
+-- | Is the <https://www.opengl.org/registry/specs/ARB/gl_spirv.txt ARB_gl_spirv> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetARBGlSpirv' in those cases instead.
+gl_ARB_gl_spirv :: Bool
+gl_ARB_gl_spirv = member "GL_ARB_gl_spirv" extensions
+{-# NOINLINE gl_ARB_gl_spirv #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/ARB/gpu_shader5.txt ARB_gpu_shader5> extension supported?
 glGetARBGPUShader5 :: MonadIO m => m Bool
 glGetARBGPUShader5 = getExtensions >>= (return . member "GL_ARB_gpu_shader5")
@@ -2351,6 +2373,17 @@
 gl_EXT_draw_range_elements = member "GL_EXT_draw_range_elements" extensions
 {-# NOINLINE gl_EXT_draw_range_elements #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/EXT/external_buffer.txt EXT_external_buffer> extension supported?
+glGetEXTExternalBuffer :: MonadIO m => m Bool
+glGetEXTExternalBuffer = getExtensions >>= (return . member "GL_EXT_external_buffer")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/external_buffer.txt EXT_external_buffer> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTExternalBuffer' in those cases instead.
+gl_EXT_external_buffer :: Bool
+gl_EXT_external_buffer = member "GL_EXT_external_buffer" extensions
+{-# NOINLINE gl_EXT_external_buffer #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/EXT/fog_coord.txt EXT_fog_coord> extension supported?
 glGetEXTFogCoord :: MonadIO m => m Bool
 glGetEXTFogCoord = getExtensions >>= (return . member "GL_EXT_fog_coord")
@@ -2505,6 +2538,39 @@
 gl_EXT_light_texture = member "GL_EXT_light_texture" extensions
 {-# NOINLINE gl_EXT_light_texture #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object.txt EXT_memory_object> extension supported?
+glGetEXTMemoryObject :: MonadIO m => m Bool
+glGetEXTMemoryObject = getExtensions >>= (return . member "GL_EXT_memory_object")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object.txt EXT_memory_object> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTMemoryObject' in those cases instead.
+gl_EXT_memory_object :: Bool
+gl_EXT_memory_object = member "GL_EXT_memory_object" extensions
+{-# NOINLINE gl_EXT_memory_object #-}
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object_fd.txt EXT_memory_object_fd> extension supported?
+glGetEXTMemoryObjectFd :: MonadIO m => m Bool
+glGetEXTMemoryObjectFd = getExtensions >>= (return . member "GL_EXT_memory_object_fd")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object_fd.txt EXT_memory_object_fd> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTMemoryObjectFd' in those cases instead.
+gl_EXT_memory_object_fd :: Bool
+gl_EXT_memory_object_fd = member "GL_EXT_memory_object_fd" extensions
+{-# NOINLINE gl_EXT_memory_object_fd #-}
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object_win32.txt EXT_memory_object_win32> extension supported?
+glGetEXTMemoryObjectWin32 :: MonadIO m => m Bool
+glGetEXTMemoryObjectWin32 = getExtensions >>= (return . member "GL_EXT_memory_object_win32")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/memory_object_win32.txt EXT_memory_object_win32> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTMemoryObjectWin32' in those cases instead.
+gl_EXT_memory_object_win32 :: Bool
+gl_EXT_memory_object_win32 = member "GL_EXT_memory_object_win32" extensions
+{-# NOINLINE gl_EXT_memory_object_win32 #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/EXT/multi_draw_arrays.txt EXT_multi_draw_arrays> extension supported?
 glGetEXTMultiDrawArrays :: MonadIO m => m Bool
 glGetEXTMultiDrawArrays = getExtensions >>= (return . member "GL_EXT_multi_draw_arrays")
@@ -2670,6 +2736,39 @@
 gl_EXT_secondary_color = member "GL_EXT_secondary_color" extensions
 {-# NOINLINE gl_EXT_secondary_color #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore.txt EXT_semaphore> extension supported?
+glGetEXTSemaphore :: MonadIO m => m Bool
+glGetEXTSemaphore = getExtensions >>= (return . member "GL_EXT_semaphore")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore.txt EXT_semaphore> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTSemaphore' in those cases instead.
+gl_EXT_semaphore :: Bool
+gl_EXT_semaphore = member "GL_EXT_semaphore" extensions
+{-# NOINLINE gl_EXT_semaphore #-}
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore_fd.txt EXT_semaphore_fd> extension supported?
+glGetEXTSemaphoreFd :: MonadIO m => m Bool
+glGetEXTSemaphoreFd = getExtensions >>= (return . member "GL_EXT_semaphore_fd")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore_fd.txt EXT_semaphore_fd> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTSemaphoreFd' in those cases instead.
+gl_EXT_semaphore_fd :: Bool
+gl_EXT_semaphore_fd = member "GL_EXT_semaphore_fd" extensions
+{-# NOINLINE gl_EXT_semaphore_fd #-}
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore_win32.txt EXT_semaphore_win32> extension supported?
+glGetEXTSemaphoreWin32 :: MonadIO m => m Bool
+glGetEXTSemaphoreWin32 = getExtensions >>= (return . member "GL_EXT_semaphore_win32")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/semaphore_win32.txt EXT_semaphore_win32> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTSemaphoreWin32' in those cases instead.
+gl_EXT_semaphore_win32 :: Bool
+gl_EXT_semaphore_win32 = member "GL_EXT_semaphore_win32" extensions
+{-# NOINLINE gl_EXT_semaphore_win32 #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/EXT/separate_shader_objects.txt EXT_separate_shader_objects> extension supported?
 glGetEXTSeparateShaderObjects :: MonadIO m => m Bool
 glGetEXTSeparateShaderObjects = getExtensions >>= (return . member "GL_EXT_separate_shader_objects")
@@ -3077,6 +3176,17 @@
 gl_EXT_vertex_weighting = member "GL_EXT_vertex_weighting" extensions
 {-# NOINLINE gl_EXT_vertex_weighting #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/EXT/win32_keyed_mutex.txt EXT_win32_keyed_mutex> extension supported?
+glGetEXTWin32KeyedMutex :: MonadIO m => m Bool
+glGetEXTWin32KeyedMutex = getExtensions >>= (return . member "GL_EXT_win32_keyed_mutex")
+
+-- | Is the <https://www.opengl.org/registry/specs/EXT/win32_keyed_mutex.txt EXT_win32_keyed_mutex> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetEXTWin32KeyedMutex' in those cases instead.
+gl_EXT_win32_keyed_mutex :: Bool
+gl_EXT_win32_keyed_mutex = member "GL_EXT_win32_keyed_mutex" extensions
+{-# NOINLINE gl_EXT_win32_keyed_mutex #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/EXT/window_rectangles.txt EXT_window_rectangles> extension supported?
 glGetEXTWindowRectangles :: MonadIO m => m Bool
 glGetEXTWindowRectangles = getExtensions >>= (return . member "GL_EXT_window_rectangles")
@@ -3462,6 +3572,17 @@
 gl_MESAX_texture_stack = member "GL_MESAX_texture_stack" extensions
 {-# NOINLINE gl_MESAX_texture_stack #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/NV/alpha_to_coverage_dither_control.txt NV_alpha_to_coverage_dither_control> extension supported?
+glGetNVAlphaToCoverageDitherControl :: MonadIO m => m Bool
+glGetNVAlphaToCoverageDitherControl = getExtensions >>= (return . member "GL_NV_alpha_to_coverage_dither_control")
+
+-- | Is the <https://www.opengl.org/registry/specs/NV/alpha_to_coverage_dither_control.txt NV_alpha_to_coverage_dither_control> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetNVAlphaToCoverageDitherControl' in those cases instead.
+gl_NV_alpha_to_coverage_dither_control :: Bool
+gl_NV_alpha_to_coverage_dither_control = member "GL_NV_alpha_to_coverage_dither_control" extensions
+{-# NOINLINE gl_NV_alpha_to_coverage_dither_control #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/NV/bindless_multi_draw_indirect.txt NV_bindless_multi_draw_indirect> extension supported?
 glGetNVBindlessMultiDrawIndirect :: MonadIO m => m Bool
 glGetNVBindlessMultiDrawIndirect = getExtensions >>= (return . member "GL_NV_bindless_multi_draw_indirect")
@@ -3660,6 +3781,17 @@
 gl_NV_draw_texture = member "GL_NV_draw_texture" extensions
 {-# NOINLINE gl_NV_draw_texture #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/NV/draw_vulkan_image.txt NV_draw_vulkan_image> extension supported?
+glGetNVDrawVulkanImage :: MonadIO m => m Bool
+glGetNVDrawVulkanImage = getExtensions >>= (return . member "GL_NV_draw_vulkan_image")
+
+-- | Is the <https://www.opengl.org/registry/specs/NV/draw_vulkan_image.txt NV_draw_vulkan_image> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetNVDrawVulkanImage' in those cases instead.
+gl_NV_draw_vulkan_image :: Bool
+gl_NV_draw_vulkan_image = member "GL_NV_draw_vulkan_image" extensions
+{-# NOINLINE gl_NV_draw_vulkan_image #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/NV/evaluators.txt NV_evaluators> extension supported?
 glGetNVEvaluators :: MonadIO m => m Bool
 glGetNVEvaluators = getExtensions >>= (return . member "GL_NV_evaluators")
@@ -3792,6 +3924,17 @@
 gl_NV_geometry_program4 = member "GL_NV_geometry_program4" extensions
 {-# NOINLINE gl_NV_geometry_program4 #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/NV/gpu_multicast.txt NV_gpu_multicast> extension supported?
+glGetNVGPUMulticast :: MonadIO m => m Bool
+glGetNVGPUMulticast = getExtensions >>= (return . member "GL_NV_gpu_multicast")
+
+-- | Is the <https://www.opengl.org/registry/specs/NV/gpu_multicast.txt NV_gpu_multicast> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetNVGPUMulticast' in those cases instead.
+gl_NV_gpu_multicast :: Bool
+gl_NV_gpu_multicast = member "GL_NV_gpu_multicast" extensions
+{-# NOINLINE gl_NV_gpu_multicast #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/NV/gpu_program4.txt NV_gpu_program4> extension supported?
 glGetNVGPUProgram4 :: MonadIO m => m Bool
 glGetNVGPUProgram4 = getExtensions >>= (return . member "GL_NV_gpu_program4")
@@ -4352,6 +4495,17 @@
 gl_NVX_gpu_memory_info :: Bool
 gl_NVX_gpu_memory_info = member "GL_NVX_gpu_memory_info" extensions
 {-# NOINLINE gl_NVX_gpu_memory_info #-}
+
+-- | Is the <https://www.opengl.org/registry/specs/NVX/linked_gpu_multicast.txt NVX_linked_gpu_multicast> extension supported?
+glGetNVXLinkedGPUMulticast :: MonadIO m => m Bool
+glGetNVXLinkedGPUMulticast = getExtensions >>= (return . member "GL_NVX_linked_gpu_multicast")
+
+-- | Is the <https://www.opengl.org/registry/specs/NVX/linked_gpu_multicast.txt NVX_linked_gpu_multicast> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetNVXLinkedGPUMulticast' in those cases instead.
+gl_NVX_linked_gpu_multicast :: Bool
+gl_NVX_linked_gpu_multicast = member "GL_NVX_linked_gpu_multicast" extensions
+{-# NOINLINE gl_NVX_linked_gpu_multicast #-}
 
 -- | Is the <https://www.opengl.org/registry/specs/OES/OES_byte_coordinates.txt OES_byte_coordinates> extension supported?
 glGetOESByteCoordinates :: MonadIO m => m Bool
diff --git a/src/Graphics/GL/Foreign.hs b/src/Graphics/GL/Foreign.hs
--- a/src/Graphics/GL/Foreign.hs
+++ b/src/Graphics/GL/Foreign.hs
@@ -30,3567 +30,3699 @@
   where throwIfNullFunPtr :: String -> IO (FunPtr a) -> IO (FunPtr a)
         throwIfNullFunPtr = throwIf (== nullFunPtr) . const
 
-foreign import CALLCONV "dynamic" dyn202
-  :: FunPtr (GLDEBUGPROC -> Ptr a -> IO ())
-  ->         GLDEBUGPROC -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn203
-  :: FunPtr (GLDEBUGPROCAMD -> Ptr a -> IO ())
-  ->         GLDEBUGPROCAMD -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn204
-  :: FunPtr (GLDEBUGPROCARB -> Ptr a -> IO ())
-  ->         GLDEBUGPROCARB -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn205
-  :: FunPtr (GLDEBUGPROCKHR -> Ptr a -> IO ())
-  ->         GLDEBUGPROCKHR -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn382
-  :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn381
-  :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn69
-  :: FunPtr (GLbitfield -> IO ())
-  ->         GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn123
-  :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
-  ->         GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn191
-  :: FunPtr (GLboolean -> IO ())
-  ->         GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn108
-  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
-  ->         GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn36
-  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-  ->         GLbyte -> GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn725
-  :: FunPtr (GLbyte -> GLbyte -> IO ())
-  ->         GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn464
-  :: FunPtr (GLbyte -> IO ())
-  ->         GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn216
-  :: FunPtr (GLclampd -> GLclampd -> IO ())
-  ->         GLclampd -> GLclampd -> IO ()
-
-foreign import CALLCONV "dynamic" dyn699
-  :: FunPtr (GLclampf -> GLboolean -> IO ())
-  ->         GLclampf -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn223
-  :: FunPtr (GLclampf -> GLclampf -> IO ())
-  ->         GLclampf -> GLclampf -> IO ()
-
-foreign import CALLCONV "dynamic" dyn80
-  :: FunPtr (GLclampf -> IO ())
-  ->         GLclampf -> IO ()
-
-foreign import CALLCONV "dynamic" dyn698
-  :: FunPtr (GLclampx -> GLboolean -> IO ())
-  ->         GLclampx -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn296
-  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn109
-  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn38
-  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn217
-  :: FunPtr (GLdouble -> GLdouble -> IO ())
-  ->         GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn78
-  :: FunPtr (GLdouble -> IO ())
-  ->         GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn276
-  :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
-  ->         GLenum -> GLbitfield -> IO GLsync
-
-foreign import CALLCONV "dynamic" dyn450
-  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn338
-  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn559
-  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
-  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn554
-  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
-  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn548
-  :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
-  ->         GLenum -> GLbyte -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn541
-  :: FunPtr (GLenum -> GLbyte -> IO ())
-  ->         GLenum -> GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn9
-  :: FunPtr (GLenum -> GLclampf -> IO ())
-  ->         GLenum -> GLclampf -> IO ()
-
-foreign import CALLCONV "dynamic" dyn518
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn522
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn524
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn210
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn498
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn495
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn549
-  :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn543
-  :: FunPtr (GLenum -> GLdouble -> IO ())
-  ->         GLenum -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn258
-  :: FunPtr (GLenum -> GLeglImageOES -> IO ())
-  ->         GLenum -> GLeglImageOES -> IO ()
-
-foreign import CALLCONV "dynamic" dyn526
-  :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
-  ->         GLenum -> GLenum -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn732
-  :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
-  ->         GLenum -> GLenum -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn566
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn135
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn134
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn53
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn319
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn320
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn70
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn564
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn565
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn349
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn348
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn206
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn456
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ()
-
-foreign import CALLCONV "dynamic" dyn448
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn288
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn290
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn289
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn287
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn283
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn300
-  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
-  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn717
-  :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn31
-  :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
-  ->         GLenum -> GLenum -> GLenum -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn356
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn321
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn322
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn360
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn318
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn405
-  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
-  ->         GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ()
-
-foreign import CALLCONV "dynamic" dyn162
-  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-  ->         GLenum -> GLenum -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn161
-  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn357
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn169
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn170
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn139
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn140
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn141
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn358
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn359
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn173
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn172
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn572
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn144
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn171
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn571
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn143
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn570
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn142
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn567
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn568
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn569
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn167
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn166
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn716
-  :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
-  ->         GLenum -> GLenum -> GLint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn62
-  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn611
-  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn324
-  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLint -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn537
-  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn164
-  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn71
-  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn131
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn347
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn160
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn706
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ()
-
-foreign import CALLCONV "dynamic" dyn745
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn681
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn451
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn452
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn453
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn207
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn633
-  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn208
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn291
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn293
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn295
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn292
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn294
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn286
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn724
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn209
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn336
-  :: FunPtr (GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn29
-  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-  ->         GLenum -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn51
-  :: FunPtr (GLenum -> GLenum -> IO ())
-  ->         GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn501
-  :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
-  ->         GLenum -> GLenum -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn28
-  :: FunPtr (GLenum -> GLenum -> IO GLuint)
-  ->         GLenum -> GLenum -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn317
-  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
-  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn355
-  :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn163
-  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn132
-  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn133
-  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn406
-  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn315
-  :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn415
-  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn316
-  :: FunPtr (GLenum -> GLenum -> Ptr GLuint64EXT -> IO ())
-  ->         GLenum -> GLenum -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn536
-  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn535
-  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn534
-  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn242
-  :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn562
-  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn558
-  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn500
-  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn497
-  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn553
-  :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn1
-  :: FunPtr (GLenum -> GLfixed -> IO ())
-  ->         GLenum -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn523
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn525
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn211
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn499
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn496
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn550
-  :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn0
-  :: FunPtr (GLenum -> GLfloat -> IO ())
-  ->         GLenum -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn560
-  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn555
-  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn551
-  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLenum -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn544
-  :: FunPtr (GLenum -> GLhalfNV -> IO ())
-  ->         GLenum -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn457
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn411
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn176
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn177
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn145
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn146
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn738
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn147
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn741
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn13
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn563
-  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn414
-  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ())
-  ->         GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn412
-  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn413
-  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn72
-  :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLfloat -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn180
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn748
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn179
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn742
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn272
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn150
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn178
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn265
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn747
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn149
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn556
-  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn746
-  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn148
-  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn733
-  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn734
-  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn737
-  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn264
-  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn232
-  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
-  ->         GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn231
-  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn229
-  :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn449
-  :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn607
-  :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
-  ->         GLenum -> GLint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn55
-  :: FunPtr (GLenum -> GLint -> IO ())
-  ->         GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn280
-  :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-  ->         GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn595
-  :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
-  ->         GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn392
-  :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
-  ->         GLenum -> GLint -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn73
-  :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn74
-  :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
-  ->         GLenum -> GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn75
-  :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn325
-  :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
-  ->         GLenum -> GLint -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn469
-  :: FunPtr (GLenum -> GLintptr -> GLbitfield -> IO GLsync)
-  ->         GLenum -> GLintptr -> GLbitfield -> IO GLsync
-
-foreign import CALLCONV "dynamic" dyn531
-  :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn502
-  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-  ->         GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn61
-  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
-  ->         GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn278
-  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLenum -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn64
-  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-  ->         GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn65
-  :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
-  ->         GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn561
-  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn557
-  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn552
-  :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-  ->         GLenum -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn546
-  :: FunPtr (GLenum -> GLshort -> IO ())
-  ->         GLenum -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn468
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn735
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn739
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn744
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn682
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn743
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn241
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn246
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn245
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn244
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn243
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn383
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn240
-  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn165
-  :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn130
-  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn683
-  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn736
-  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn740
-  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn470
-  :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn239
-  :: FunPtr (GLenum -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn200
-  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
-  ->         GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn684
-  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
-  ->         GLenum -> GLsizei -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn475
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn226
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn225
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn890
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn197
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn454
-  :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
-  ->         GLenum -> GLsizei -> Ptr GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn46
-  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn63
-  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
-  ->         GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn59
-  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
-  ->         GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn60
-  :: FunPtr (GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ())
-  ->         GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn625
-  :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn777
-  :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn354
-  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn503
-  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn671
-  :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn598
-  :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
-  ->         GLenum -> GLuint -> GLenum -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn397
-  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn352
-  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn353
-  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn626
-  :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn627
-  :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn257
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn486
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn631
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn284
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn628
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn373
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn491
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn22
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn23
-  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
-  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn248
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn21
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn20
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn251
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn250
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn249
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn624
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn622
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn623
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn122
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn8
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn121
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn7
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn120
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn6
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn710
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn709
-  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn17
-  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn285
-  :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn538
-  :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn58
-  :: FunPtr (GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ())
-  ->         GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn16
-  :: FunPtr (GLenum -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn409
-  :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
-  ->         GLenum -> GLuint -> IO (Ptr GLubyte)
-
-foreign import CALLCONV "dynamic" dyn479
-  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
-  ->         GLenum -> GLuint -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn323
-  :: FunPtr (GLenum -> GLuint -> IO GLuint)
-  ->         GLenum -> GLuint -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn393
-  :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
-  ->         GLenum -> GLuint -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn313
-  :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn331
-  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn267
-  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn344
-  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn342
-  :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn236
-  :: FunPtr (GLenum -> GLuint -> Ptr GLintptr -> Ptr GLsizei -> GLuint -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLintptr -> Ptr GLsizei -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn214
-  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn345
-  :: FunPtr (GLenum -> GLuint -> Ptr GLuint64EXT -> IO ())
-  ->         GLenum -> GLuint -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn4
-  :: FunPtr (GLenum -> IO ())
-  ->         GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn408
-  :: FunPtr (GLenum -> IO (Ptr GLubyte))
-  ->         GLenum -> IO (Ptr GLubyte)
-
-foreign import CALLCONV "dynamic" dyn478
-  :: FunPtr (GLenum -> IO GLboolean)
-  ->         GLenum -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn67
-  :: FunPtr (GLenum -> IO GLenum)
-  ->         GLenum -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn198
-  :: FunPtr (GLenum -> IO GLhandleARB)
-  ->         GLenum -> IO GLhandleARB
-
-foreign import CALLCONV "dynamic" dyn680
-  :: FunPtr (GLenum -> IO GLint)
-  ->         GLenum -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn30
-  :: FunPtr (GLenum -> IO GLuint)
-  ->         GLenum -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn407
-  :: FunPtr (GLenum -> IO GLushort)
-  ->         GLenum -> IO GLushort
-
-foreign import CALLCONV "dynamic" dyn268
-  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
-  ->         GLenum -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn314
-  :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
-  ->         GLenum -> Ptr GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn542
-  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-  ->         GLenum -> Ptr GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn199
-  :: FunPtr (GLenum -> Ptr GLchar -> IO GLuint)
-  ->         GLenum -> Ptr GLchar -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn93
-  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-  ->         GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn95
-  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-  ->         GLenum -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn94
-  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-  ->         GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn545
-  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
-  ->         GLenum -> Ptr GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn136
-  :: FunPtr (GLenum -> Ptr GLint -> IO ())
-  ->         GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn527
-  :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn343
-  :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
-  ->         GLenum -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn547
-  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-  ->         GLenum -> Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn532
-  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
-  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn533
-  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn125
-  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-  ->         GLenum -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn235
-  :: FunPtr (GLenum -> Ptr GLuint64 -> Ptr GLsizei -> GLuint -> IO ())
-  ->         GLenum -> Ptr GLuint64 -> Ptr GLsizei -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn346
-  :: FunPtr (GLenum -> Ptr GLuint64EXT -> IO ())
-  ->         GLenum -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn391
-  :: FunPtr (GLenum -> Ptr GLushort -> IO ())
-  ->         GLenum -> Ptr GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn603
-  :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
-  ->         GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn530
-  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn529
-  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn528
-  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn230
-  :: FunPtr (GLenum -> Ptr a -> IO ())
-  ->         GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn297
-  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn256
-  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn50
-  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn106
-  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn224
-  :: FunPtr (GLfixed -> GLfixed -> IO ())
-  ->         GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn81
-  :: FunPtr (GLfixed -> IO ())
-  ->         GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn697
-  :: FunPtr (GLfloat -> GLboolean -> IO ())
-  ->         GLfloat -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn731
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn726
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn110
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn616
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn96
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn252
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn49
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn40
-  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn728
-  :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn222
-  :: FunPtr (GLfloat -> GLfloat -> IO ())
-  ->         GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn79
-  :: FunPtr (GLfloat -> IO ())
-  ->         GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn112
-  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn98
-  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn730
-  :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn281
-  :: FunPtr (GLhalfNV -> IO ())
-  ->         GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn374
-  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLhandleARB -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn375
-  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLint -> IO ())
-  ->         GLhandleARB -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn14
-  :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
-  ->         GLhandleARB -> GLhandleARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn434
-  :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLhandleARB -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn438
-  :: FunPtr (GLhandleARB -> GLint -> Ptr GLint -> IO ())
-  ->         GLhandleARB -> GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn711
-  :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
-  ->         GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn340
-  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
-  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn309
-  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ())
-  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn303
-  :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
-  ->         GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn19
-  :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
-  ->         GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn137
-  :: FunPtr (GLhandleARB -> IO ())
-  ->         GLhandleARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn312
-  :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
-  ->         GLhandleARB -> Ptr GLcharARB -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn810
-  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn803
-  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn507
-  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
-  ->         GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn504
-  :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
-  ->         GLint -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn783
-  :: FunPtr (GLint -> GLdouble -> IO ())
-  ->         GLint -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn128
-  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn127
-  :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
-  ->         GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn119
-  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
-  ->         GLint -> GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn126
-  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn129
-  :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
-  ->         GLint -> GLenum -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn509
-  :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-  ->         GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn506
-  :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
-  ->         GLint -> GLfixed -> GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn811
-  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn804
-  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn508
-  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
-  ->         GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn505
-  :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
-  ->         GLint -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn785
-  :: FunPtr (GLint -> GLfloat -> IO ())
-  ->         GLint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn56
-  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
-  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn253
-  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn76
-  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn42
-  :: FunPtr (GLint -> GLint -> GLint -> IO ())
-  ->         GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn675
-  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn674
-  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn175
-  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
-  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn701
-  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn266
-  :: FunPtr (GLint -> GLint -> IO ())
-  ->         GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn812
-  :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
-  ->         GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn805
-  :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
-  ->         GLint -> GLint64 -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn798
-  :: FunPtr (GLint -> GLint64 -> GLint64 -> IO ())
-  ->         GLint -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn787
-  :: FunPtr (GLint -> GLint64 -> IO ())
-  ->         GLint -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn813
-  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn806
-  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn799
-  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLint -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn788
-  :: FunPtr (GLint -> GLint64EXT -> IO ())
-  ->         GLint -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn817
-  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn818
-  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn492
-  :: FunPtr (GLint -> GLsizei -> IO ())
-  ->         GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn784
-  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn786
-  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn791
-  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn789
-  :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn790
-  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn797
-  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn795
-  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn796
-  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn814
-  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn807
-  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn800
-  :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
-  ->         GLint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn792
-  :: FunPtr (GLint -> GLuint -> IO ())
-  ->         GLint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn815
-  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn808
-  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn801
-  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLint -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn793
-  :: FunPtr (GLint -> GLuint64 -> IO ())
-  ->         GLint -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn816
-  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn809
-  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn802
-  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLint -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn794
-  :: FunPtr (GLint -> GLuint64EXT -> IO ())
-  ->         GLint -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn487
-  :: FunPtr (GLint -> GLushort -> IO ())
-  ->         GLint -> GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn12
-  :: FunPtr (GLint -> IO ())
-  ->         GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn262
-  :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
-  ->         GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn885
-  :: FunPtr (GLint -> Ptr GLbyte -> IO ())
-  ->         GLint -> Ptr GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn372
-  :: FunPtr (GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ())
-  ->         GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn371
-  :: FunPtr (GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ())
-  ->         GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn213
-  :: FunPtr (GLint -> Ptr GLchar -> IO ())
-  ->         GLint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn481
-  :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
-  ->         GLint -> Ptr GLchar -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn886
-  :: FunPtr (GLint -> Ptr GLdouble -> IO ())
-  ->         GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn234
-  :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
-  ->         GLint -> Ptr GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn887
-  :: FunPtr (GLint -> Ptr GLfloat -> IO ())
-  ->         GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn888
-  :: FunPtr (GLint -> Ptr GLint -> IO ())
-  ->         GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn889
-  :: FunPtr (GLint -> Ptr GLshort -> IO ())
-  ->         GLint -> Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn519
-  :: FunPtr (GLint -> Ptr GLubyte -> IO ())
-  ->         GLint -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn520
-  :: FunPtr (GLint -> Ptr GLuint -> IO ())
-  ->         GLint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn521
-  :: FunPtr (GLint -> Ptr GLushort -> IO ())
-  ->         GLint -> Ptr GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn228
-  :: FunPtr (GLintptr -> IO ())
-  ->         GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn254
-  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn113
-  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn44
-  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn672
-  :: FunPtr (GLshort -> GLshort -> IO ())
-  ->         GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn465
-  :: FunPtr (GLshort -> IO ())
-  ->         GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn275
-  :: FunPtr (GLsizei -> GLenum -> Ptr GLfixed -> IO ())
-  ->         GLsizei -> GLenum -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn274
-  :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn190
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn719
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn714
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn721
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn718
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn66
-  :: FunPtr (GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn247
-  :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn48
-  :: FunPtr (GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ())
-  ->         GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn47
-  :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
-  ->         GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn261
-  :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
-  ->         GLsizei -> GLsizei -> Ptr GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn89
-  :: FunPtr (GLsizei -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLsizei -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn713
-  :: FunPtr (GLsizei -> GLuint -> IO ())
-  ->         GLsizei -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn259
-  :: FunPtr (GLsizei -> IO ())
-  ->         GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn298
-  :: FunPtr (GLsizei -> IO GLuint)
-  ->         GLsizei -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn471
-  :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
-  ->         GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn233
-  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
-  ->         GLsizei -> Ptr GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn192
-  :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn778
-  :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
-  ->         GLsizei -> Ptr GLint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn780
-  :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
-  ->         GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn472
-  :: FunPtr (GLsizei -> Ptr GLint -> IO ())
-  ->         GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn455
-  :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
-  ->         GLsizei -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn708
-  :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
-  ->         GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn193
-  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-  ->         GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn11
-  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
-  ->         GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn618
-  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
-  ->         GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ()
-
-foreign import CALLCONV "dynamic" dyn619
-  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
-  ->         GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn617
-  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
-  ->         GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn824
-  :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
-  ->         GLsizei -> Ptr GLvdpauSurfaceNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn596
-  :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
-  ->         GLsizei -> Ptr a -> GLenum -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn260
-  :: FunPtr (GLsizei -> Ptr a -> IO ())
-  ->         GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn883
-  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
-  ->         GLsync -> GLbitfield -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn92
-  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
-  ->         GLsync -> GLbitfield -> GLuint64 -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn410
-  :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
-  ->         GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn215
-  :: FunPtr (GLsync -> IO ())
-  ->         GLsync -> IO ()
-
-foreign import CALLCONV "dynamic" dyn484
-  :: FunPtr (GLsync -> IO GLboolean)
-  ->         GLsync -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn117
-  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn115
-  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ())
-  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn114
-  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
-  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn100
-  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
-  ->         GLubyte -> GLubyte -> GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn466
-  :: FunPtr (GLubyte -> IO ())
-  ->         GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn820
-  :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
-  ->         GLuint -> GLbitfield -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn700
-  :: FunPtr (GLuint -> GLbitfield -> IO ())
-  ->         GLuint -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn124
-  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
-  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn705
-  :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn673
-  :: FunPtr (GLuint -> GLboolean -> IO ())
-  ->         GLuint -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn855
-  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn851
-  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn220
-  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn844
-  :: FunPtr (GLuint -> GLdouble -> IO ())
-  ->         GLuint -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn876
-  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn877
-  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn54
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn82
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn759
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn760
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn770
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn591
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn581
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn580
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn750
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn576
-  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn52
-  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn423
-  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn365
-  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn422
-  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn370
-  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn489
-  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn418
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn181
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn182
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn151
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn152
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn153
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn420
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn271
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn85
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn189
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn187
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn775
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn159
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn185
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn168
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn774
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn157
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn772
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn155
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn751
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn752
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn755
-  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn490
-  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn86
-  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn87
-  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn88
-  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn327
-  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLint -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn83
-  :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn765
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn769
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn767
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn763
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn762
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn754
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn757
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn753
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn756
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn592
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn828
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn385
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn608
-  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn84
-  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn606
-  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
-  ->         GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn584
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn776
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn720
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn305
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn585
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn582
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn586
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn583
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn579
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn749
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn400
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn401
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn588
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn589
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn304
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn590
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn587
-  :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn715
-  :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn368
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn369
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn366
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn427
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn367
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn829
-  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> GLuint -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn15
-  :: FunPtr (GLuint -> GLenum -> IO ())
-  ->         GLuint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn510
-  :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
-  ->         GLuint -> GLenum -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn485
-  :: FunPtr (GLuint -> GLenum -> IO GLboolean)
-  ->         GLuint -> GLenum -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn68
-  :: FunPtr (GLuint -> GLenum -> IO GLenum)
-  ->         GLuint -> GLenum -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn363
-  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
-  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn350
-  :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn399
-  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
-  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn398
-  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
-  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn270
-  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn444
-  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn351
-  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn335
-  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn361
-  :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn445
-  :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn402
-  :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn377
-  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn404
-  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn362
-  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
-  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn605
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
-  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn604
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
-  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn602
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
-  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn621
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
-  ->         GLuint -> GLenum -> Ptr a -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn620
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
-  ->         GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn707
-  :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn691
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn687
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn693
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn685
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn694
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn856
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn695
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn221
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn483
-  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
-  ->         GLuint -> GLfloat -> GLfloat -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn845
-  :: FunPtr (GLuint -> GLfloat -> IO ())
-  ->         GLuint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn857
-  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn852
-  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn849
-  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
-  ->         GLuint -> GLhalfNV -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn846
-  :: FunPtr (GLuint -> GLhalfNV -> IO ())
-  ->         GLuint -> GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn513
-  :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
-  ->         GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn339
-  :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
-  ->         GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64
-
-foreign import CALLCONV "dynamic" dyn660
-  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn652
-  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn644
-  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn634
-  :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn859
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn861
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn878
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn860
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn417
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn90
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn632
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn864
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn865
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn863
-  :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn419
-  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn421
-  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn661
-  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn653
-  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn645
-  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn635
-  :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn188
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn186
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn662
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn758
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn425
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn91
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn158
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn328
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn477
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn184
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn654
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn773
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn156
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn646
-  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn771
-  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn154
-  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn703
-  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn636
-  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
-  ->         GLuint -> GLint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn663
-  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
-  ->         GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn655
-  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
-  ->         GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn647
-  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> IO ())
-  ->         GLuint -> GLint -> GLint64 -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn637
-  :: FunPtr (GLuint -> GLint -> GLint64 -> IO ())
-  ->         GLuint -> GLint -> GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn664
-  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn656
-  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn648
-  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn638
-  :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn668
-  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn669
-  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn458
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn459
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn461
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn460
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn639
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn463
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn462
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn643
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn326
-  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr a -> IO ())
-  ->         GLuint -> GLint -> GLsizei -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn722
-  :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
-  ->         GLuint -> GLint -> GLuint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn665
-  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn657
-  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn649
-  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn640
-  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
-  ->         GLuint -> GLint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn666
-  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn658
-  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn650
-  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ())
-  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn641
-  :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-  ->         GLuint -> GLint -> GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn667
-  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn659
-  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn651
-  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn642
-  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn476
-  :: FunPtr (GLuint -> GLint -> IO ())
-  ->         GLuint -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn429
-  :: FunPtr (GLuint -> GLint -> IO GLint)
-  ->         GLuint -> GLint -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn431
-  :: FunPtr (GLuint -> GLint -> IO GLintptr)
-  ->         GLuint -> GLint -> IO GLintptr
-
-foreign import CALLCONV "dynamic" dyn432
-  :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn433
-  :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn437
-  :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
-  ->         GLuint -> GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn435
-  :: FunPtr (GLuint -> GLint -> Ptr GLint64 -> IO ())
-  ->         GLuint -> GLint -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn436
-  :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
-  ->         GLuint -> GLint -> Ptr GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn441
-  :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn439
-  :: FunPtr (GLuint -> GLint -> Ptr GLuint64 -> IO ())
-  ->         GLuint -> GLint -> Ptr GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn440
-  :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
-  ->         GLuint -> GLint -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn874
-  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn872
-  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn870
-  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint64EXT -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn866
-  :: FunPtr (GLuint -> GLint64EXT -> IO ())
-  ->         GLuint -> GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn511
-  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-  ->         GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn574
-  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
-  ->         GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn279
-  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn364
-  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn858
-  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn853
-  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
-  ->         GLuint -> GLshort -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn850
-  :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
-  ->         GLuint -> GLshort -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn848
-  :: FunPtr (GLuint -> GLshort -> IO ())
-  ->         GLuint -> GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn764
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn768
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn766
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn593
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn761
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn601
-  :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn594
-  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn610
-  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn612
-  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
-  ->         GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn609
-  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn380
-  :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
-  ->         GLuint -> GLsizei -> GLsizei -> IO GLfloat
-
-foreign import CALLCONV "dynamic" dyn212
-  :: FunPtr (GLuint -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn781
-  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
-  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn138
-  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn430
-  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn219
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn474
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn282
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn329
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
-  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn330
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
-  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn218
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn879
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn782
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn702
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn880
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn332
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn394
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn310
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn629
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn630
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn600
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn881
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn395
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn396
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn307
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn27
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn884
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn33
-  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
-  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn575
-  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
-  ->         GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn573
-  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
-  ->         GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn689
-  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn854
-  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
-  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn516
-  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn514
-  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn723
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn35
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn840
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn403
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn34
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ()
-
-foreign import CALLCONV "dynamic" dyn839
-  :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn599
-  :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn443
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ()
-
-foreign import CALLCONV "dynamic" dyn446
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn447
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn301
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn442
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn386
-  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr a -> IO ())
-  ->         GLuint -> GLuint -> GLenum -> Ptr a -> IO ()
-
-foreign import CALLCONV "dynamic" dyn255
-  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn517
-  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn515
-  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn482
-  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
-  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn25
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn26
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn834
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn837
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn835
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn57
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn183
-  :: FunPtr (GLuint -> GLuint -> GLint -> GLsizei -> IO ())
-  ->         GLuint -> GLuint -> GLint -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn174
-  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn32
-  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
-  ->         GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn838
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn577
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn306
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn302
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn308
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn843
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn819
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn388
-  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn473
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn842
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn841
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn836
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()
-
-foreign import CALLCONV "dynamic" dyn779
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
-
-foreign import CALLCONV "dynamic" dyn712
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ()
-
-foreign import CALLCONV "dynamic" dyn227
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn862
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn77
-  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn102
-  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn384
-  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn24
-  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn578
-  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn3
-  :: FunPtr (GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn424
-  :: FunPtr (GLuint -> GLuint -> IO GLuint64)
-  ->         GLuint -> GLuint -> IO GLuint64
-
-foreign import CALLCONV "dynamic" dyn488
-  :: FunPtr (GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn18
-  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
-  ->         GLuint -> GLuint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn390
-  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
-  ->         GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn426
-  :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
-  ->         GLuint -> GLuint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn614
-  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
-  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn615
-  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
-  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn875
-  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn873
-  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn871
-  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn868
-  :: FunPtr (GLuint -> GLuint64EXT -> IO ())
-  ->         GLuint -> GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn2
-  :: FunPtr (GLuint -> IO ())
-  ->         GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn512
-  :: FunPtr (GLuint -> IO (Ptr a))
-  ->         GLuint -> IO (Ptr a)
-
-foreign import CALLCONV "dynamic" dyn273
-  :: FunPtr (GLuint -> IO GLboolean)
-  ->         GLuint -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn337
-  :: FunPtr (GLuint -> IO GLsizei)
-  ->         GLuint -> IO GLsizei
-
-foreign import CALLCONV "dynamic" dyn299
-  :: FunPtr (GLuint -> IO GLuint)
-  ->         GLuint -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn416
-  :: FunPtr (GLuint -> IO GLuint64)
-  ->         GLuint -> IO GLuint64
-
-foreign import CALLCONV "dynamic" dyn830
-  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-  ->         GLuint -> Ptr GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn5
-  :: FunPtr (GLuint -> Ptr GLchar -> IO ())
-  ->         GLuint -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn311
-  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
-  ->         GLuint -> Ptr GLchar -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn428
-  :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
-  ->         GLuint -> Ptr GLchar -> IO GLuint
-
-foreign import CALLCONV "dynamic" dyn831
-  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-  ->         GLuint -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn379
-  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-  ->         GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn847
-  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
-  ->         GLuint -> Ptr GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn704
-  :: FunPtr (GLuint -> Ptr GLint -> IO ())
-  ->         GLuint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn387
-  :: FunPtr (GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn867
-  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
-  ->         GLuint -> Ptr GLint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn238
-  :: FunPtr (GLuint -> Ptr GLintptr -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
-  ->         GLuint -> Ptr GLintptr -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn832
-  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-  ->         GLuint -> Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn378
-  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-  ->         GLuint -> Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn194
-  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-  ->         GLuint -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn882
-  :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
-  ->         GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum
-
-foreign import CALLCONV "dynamic" dyn869
-  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-  ->         GLuint -> Ptr GLuint64EXT -> IO ()
-
-foreign import CALLCONV "dynamic" dyn833
-  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-  ->         GLuint -> Ptr GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn494
-  :: FunPtr (GLuint64 -> GLenum -> IO ())
-  ->         GLuint64 -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn493
-  :: FunPtr (GLuint64 -> IO ())
-  ->         GLuint64 -> IO ()
-
-foreign import CALLCONV "dynamic" dyn480
-  :: FunPtr (GLuint64 -> IO GLboolean)
-  ->         GLuint64 -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn118
-  :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
-  ->         GLushort -> GLushort -> GLushort -> GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn104
-  :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
-  ->         GLushort -> GLushort -> GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn467
-  :: FunPtr (GLushort -> IO ())
-  ->         GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn821
-  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
-  ->         GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn826
-  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
-  ->         GLvdpauSurfaceNV -> GLenum -> IO ()
-
-foreign import CALLCONV "dynamic" dyn827
-  :: FunPtr (GLvdpauSurfaceNV -> IO ())
-  ->         GLvdpauSurfaceNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn823
-  :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
-  ->         GLvdpauSurfaceNV -> IO GLboolean
-
-foreign import CALLCONV "dynamic" dyn10
-  :: FunPtr (IO ())
-  ->         IO ()
-
-foreign import CALLCONV "dynamic" dyn334
-  :: FunPtr (IO GLenum)
-  ->         IO GLenum
-
-foreign import CALLCONV "dynamic" dyn196
-  :: FunPtr (IO GLhandleARB)
-  ->         IO GLhandleARB
-
-foreign import CALLCONV "dynamic" dyn341
-  :: FunPtr (IO GLint)
-  ->         IO GLint
-
-foreign import CALLCONV "dynamic" dyn195
-  :: FunPtr (IO GLuint)
-  ->         IO GLuint
-
-foreign import CALLCONV "dynamic" dyn263
-  :: FunPtr (Ptr GLboolean -> IO ())
-  ->         Ptr GLboolean -> IO ()
-
-foreign import CALLCONV "dynamic" dyn37
-  :: FunPtr (Ptr GLbyte -> IO ())
-  ->         Ptr GLbyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn389
-  :: FunPtr (Ptr GLchar -> Ptr GLuint -> IO ())
-  ->         Ptr GLchar -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn39
-  :: FunPtr (Ptr GLdouble -> IO ())
-  ->         Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn676
-  :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
-  ->         Ptr GLdouble -> Ptr GLdouble -> IO ()
-
-foreign import CALLCONV "dynamic" dyn539
-  :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
-  ->         Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn540
-  :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
-  ->         Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn107
-  :: FunPtr (Ptr GLfixed -> IO ())
-  ->         Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn679
-  :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
-  ->         Ptr GLfixed -> Ptr GLfixed -> IO ()
-
-foreign import CALLCONV "dynamic" dyn670
-  :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
-  ->         Ptr GLfixed -> Ptr GLint -> IO GLbitfield
-
-foreign import CALLCONV "dynamic" dyn41
-  :: FunPtr (Ptr GLfloat -> IO ())
-  ->         Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn97
-  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn111
-  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn727
-  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn729
-  :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-  ->         Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn99
-  :: FunPtr (Ptr GLhalfNV -> IO ())
-  ->         Ptr GLhalfNV -> IO ()
-
-foreign import CALLCONV "dynamic" dyn333
-  :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
-  ->         Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn43
-  :: FunPtr (Ptr GLint -> IO ())
-  ->         Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn613
-  :: FunPtr (Ptr GLint -> IO GLint)
-  ->         Ptr GLint -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn677
-  :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
-  ->         Ptr GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn45
-  :: FunPtr (Ptr GLshort -> IO ())
-  ->         Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn678
-  :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
-  ->         Ptr GLshort -> Ptr GLshort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn101
-  :: FunPtr (Ptr GLubyte -> IO ())
-  ->         Ptr GLubyte -> IO ()
-
-foreign import CALLCONV "dynamic" dyn116
-  :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
-  ->         Ptr GLubyte -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn269
-  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
-  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn103
-  :: FunPtr (Ptr GLuint -> IO ())
-  ->         Ptr GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn277
-  :: FunPtr (Ptr GLuint -> IO GLint)
-  ->         Ptr GLuint -> IO GLint
-
-foreign import CALLCONV "dynamic" dyn696
-  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
-  ->         Ptr GLuint -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn686
-  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn688
-  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn692
-  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn690
-  :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-  ->         Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ()
-
-foreign import CALLCONV "dynamic" dyn237
-  :: FunPtr (Ptr GLuint64 -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
-  ->         Ptr GLuint64 -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
-
-foreign import CALLCONV "dynamic" dyn105
-  :: FunPtr (Ptr GLushort -> IO ())
-  ->         Ptr GLushort -> IO ()
-
-foreign import CALLCONV "dynamic" dyn825
-  :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
-  ->         Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV
-
-foreign import CALLCONV "dynamic" dyn597
-  :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
-  ->         Ptr a -> GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn376
-  :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-  ->         Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
-
-foreign import CALLCONV "dynamic" dyn201
-  :: FunPtr (Ptr a -> Ptr b -> GLbitfield -> IO GLsync)
-  ->         Ptr a -> Ptr b -> GLbitfield -> IO GLsync
-
-foreign import CALLCONV "dynamic" dyn822
+foreign import CALLCONV "dynamic" dyn205
+  :: FunPtr (GLDEBUGPROC -> Ptr a -> IO ())
+  ->         GLDEBUGPROC -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn206
+  :: FunPtr (GLDEBUGPROCAMD -> Ptr a -> IO ())
+  ->         GLDEBUGPROCAMD -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn207
+  :: FunPtr (GLDEBUGPROCARB -> Ptr a -> IO ())
+  ->         GLDEBUGPROCARB -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn208
+  :: FunPtr (GLDEBUGPROCKHR -> Ptr a -> IO ())
+  ->         GLDEBUGPROCKHR -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn389
+  :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn501
+  :: FunPtr (GLbitfield -> GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+  ->         GLbitfield -> GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn388
+  :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn72
+  :: FunPtr (GLbitfield -> IO ())
+  ->         GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn126
+  :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
+  ->         GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn194
+  :: FunPtr (GLboolean -> IO ())
+  ->         GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn111
+  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
+  ->         GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn37
+  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+  ->         GLbyte -> GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn748
+  :: FunPtr (GLbyte -> GLbyte -> IO ())
+  ->         GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn474
+  :: FunPtr (GLbyte -> IO ())
+  ->         GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn219
+  :: FunPtr (GLclampd -> GLclampd -> IO ())
+  ->         GLclampd -> GLclampd -> IO ()
+
+foreign import CALLCONV "dynamic" dyn722
+  :: FunPtr (GLclampf -> GLboolean -> IO ())
+  ->         GLclampf -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn226
+  :: FunPtr (GLclampf -> GLclampf -> IO ())
+  ->         GLclampf -> GLclampf -> IO ()
+
+foreign import CALLCONV "dynamic" dyn83
+  :: FunPtr (GLclampf -> IO ())
+  ->         GLclampf -> IO ()
+
+foreign import CALLCONV "dynamic" dyn721
+  :: FunPtr (GLclampx -> GLboolean -> IO ())
+  ->         GLclampx -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn302
+  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn112
+  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn39
+  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn220
+  :: FunPtr (GLdouble -> GLdouble -> IO ())
+  ->         GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn81
+  :: FunPtr (GLdouble -> IO ())
+  ->         GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn280
+  :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
+  ->         GLenum -> GLbitfield -> IO GLsync
+
+foreign import CALLCONV "dynamic" dyn460
+  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn344
+  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn574
+  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
+  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn569
+  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
+  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn563
+  :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
+  ->         GLenum -> GLbyte -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn556
+  :: FunPtr (GLenum -> GLbyte -> IO ())
+  ->         GLenum -> GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn10
+  :: FunPtr (GLenum -> GLclampf -> IO ())
+  ->         GLenum -> GLclampf -> IO ()
+
+foreign import CALLCONV "dynamic" dyn533
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn537
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn539
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn213
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn513
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn510
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn564
+  :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn558
+  :: FunPtr (GLenum -> GLdouble -> IO ())
+  ->         GLenum -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn262
+  :: FunPtr (GLenum -> GLeglImageOES -> IO ())
+  ->         GLenum -> GLeglImageOES -> IO ()
+
+foreign import CALLCONV "dynamic" dyn541
+  :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
+  ->         GLenum -> GLenum -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn755
+  :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
+  ->         GLenum -> GLenum -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn581
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn138
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn137
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn54
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn325
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn326
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn73
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn579
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn580
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn355
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn354
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn209
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn466
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ()
+
+foreign import CALLCONV "dynamic" dyn458
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn294
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn296
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn295
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn293
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn289
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn306
+  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
+  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn740
+  :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn32
+  :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
+  ->         GLenum -> GLenum -> GLenum -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn362
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn327
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn328
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn366
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn324
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn412
+  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
+  ->         GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ()
+
+foreign import CALLCONV "dynamic" dyn165
+  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+  ->         GLenum -> GLenum -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn164
+  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn363
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn172
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn173
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn142
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn143
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn144
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn364
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn365
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn176
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn175
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn587
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn147
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn174
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn586
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn146
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn585
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn145
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn582
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn583
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn584
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn170
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn169
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn739
+  :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
+  ->         GLenum -> GLenum -> GLint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn63
+  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn633
+  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn330
+  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLint -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn552
+  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn167
+  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn74
+  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn134
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn353
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn163
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn728
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ()
+
+foreign import CALLCONV "dynamic" dyn773
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn704
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn461
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn462
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn463
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn210
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn655
+  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn211
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn297
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn299
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn301
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn298
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn300
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn292
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn747
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn212
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn342
+  :: FunPtr (GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn30
+  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+  ->         GLenum -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn52
+  :: FunPtr (GLenum -> GLenum -> IO ())
+  ->         GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn516
+  :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
+  ->         GLenum -> GLenum -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn29
+  :: FunPtr (GLenum -> GLenum -> IO GLuint)
+  ->         GLenum -> GLenum -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn323
+  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
+  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn361
+  :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn166
+  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn135
+  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn136
+  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn413
+  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn321
+  :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn422
+  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn322
+  :: FunPtr (GLenum -> GLenum -> Ptr GLuint64EXT -> IO ())
+  ->         GLenum -> GLenum -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn551
+  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn550
+  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn549
+  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn245
+  :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn577
+  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn573
+  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn515
+  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn512
+  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn568
+  :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn1
+  :: FunPtr (GLenum -> GLfixed -> IO ())
+  ->         GLenum -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn538
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn540
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn214
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn514
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn511
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn565
+  :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn0
+  :: FunPtr (GLenum -> GLfloat -> IO ())
+  ->         GLenum -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn575
+  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn570
+  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn566
+  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLenum -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn559
+  :: FunPtr (GLenum -> GLhalfNV -> IO ())
+  ->         GLenum -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn467
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn418
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn179
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn180
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn148
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn149
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn761
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn150
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn764
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn14
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn578
+  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn421
+  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ())
+  ->         GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn419
+  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn420
+  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn75
+  :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLfloat -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn183
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn776
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn182
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn765
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn276
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn153
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn181
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn269
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn775
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn152
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn571
+  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn774
+  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn151
+  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn756
+  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn757
+  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn760
+  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn268
+  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn235
+  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
+  ->         GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn234
+  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn232
+  :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn459
+  :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn629
+  :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
+  ->         GLenum -> GLint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn56
+  :: FunPtr (GLenum -> GLint -> IO ())
+  ->         GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn284
+  :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+  ->         GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn617
+  :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
+  ->         GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn399
+  :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
+  ->         GLenum -> GLint -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn76
+  :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn77
+  :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
+  ->         GLenum -> GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn78
+  :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn331
+  :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
+  ->         GLenum -> GLint -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn483
+  :: FunPtr (GLenum -> GLintptr -> GLbitfield -> IO GLsync)
+  ->         GLenum -> GLintptr -> GLbitfield -> IO GLsync
+
+foreign import CALLCONV "dynamic" dyn546
+  :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn517
+  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+  ->         GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn62
+  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
+  ->         GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn65
+  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ())
+  ->         GLenum -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn282
+  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLenum -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn67
+  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+  ->         GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn68
+  :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
+  ->         GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn576
+  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn572
+  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn567
+  :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
+  ->         GLenum -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn561
+  :: FunPtr (GLenum -> GLshort -> IO ())
+  ->         GLenum -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn478
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn770
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn758
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn772
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn762
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn771
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn767
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn769
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn705
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn768
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn766
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn244
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn249
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn248
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn247
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn246
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn390
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn243
+  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn168
+  :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn133
+  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn706
+  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn759
+  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn763
+  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn484
+  :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn242
+  :: FunPtr (GLenum -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn203
+  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
+  ->         GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn707
+  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
+  ->         GLenum -> GLsizei -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn489
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn229
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn228
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn923
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn200
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn464
+  :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
+  ->         GLenum -> GLsizei -> Ptr GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn47
+  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn66
+  :: FunPtr (GLenum -> GLsizeiptr -> GLuint -> GLuint64 -> IO ())
+  ->         GLenum -> GLsizeiptr -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn64
+  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
+  ->         GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn60
+  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
+  ->         GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn61
+  :: FunPtr (GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ())
+  ->         GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn647
+  :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn810
+  :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn360
+  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn518
+  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn693
+  :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn620
+  :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
+  ->         GLenum -> GLuint -> GLenum -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn404
+  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn358
+  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn359
+  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn648
+  :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn649
+  :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn260
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn502
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn653
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn290
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn650
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn380
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn506
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn23
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn24
+  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
+  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn251
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn22
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn21
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn254
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn253
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn252
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn646
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn644
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn645
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn125
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn9
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn124
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn8
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn123
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn7
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn731
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn730
+  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn18
+  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn291
+  :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn553
+  :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn59
+  :: FunPtr (GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ())
+  ->         GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn17
+  :: FunPtr (GLenum -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn416
+  :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
+  ->         GLenum -> GLuint -> IO (Ptr GLubyte)
+
+foreign import CALLCONV "dynamic" dyn493
+  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
+  ->         GLenum -> GLuint -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn329
+  :: FunPtr (GLenum -> GLuint -> IO GLuint)
+  ->         GLenum -> GLuint -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn400
+  :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
+  ->         GLenum -> GLuint -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn319
+  :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn337
+  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn271
+  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn350
+  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn348
+  :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn239
+  :: FunPtr (GLenum -> GLuint -> Ptr GLintptr -> Ptr GLsizei -> GLuint -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLintptr -> Ptr GLsizei -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn449
+  :: FunPtr (GLenum -> GLuint -> Ptr GLubyte -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn217
+  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn351
+  :: FunPtr (GLenum -> GLuint -> Ptr GLuint64EXT -> IO ())
+  ->         GLenum -> GLuint -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn5
+  :: FunPtr (GLenum -> IO ())
+  ->         GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn415
+  :: FunPtr (GLenum -> IO (Ptr GLubyte))
+  ->         GLenum -> IO (Ptr GLubyte)
+
+foreign import CALLCONV "dynamic" dyn492
+  :: FunPtr (GLenum -> IO GLboolean)
+  ->         GLenum -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn70
+  :: FunPtr (GLenum -> IO GLenum)
+  ->         GLenum -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn201
+  :: FunPtr (GLenum -> IO GLhandleARB)
+  ->         GLenum -> IO GLhandleARB
+
+foreign import CALLCONV "dynamic" dyn703
+  :: FunPtr (GLenum -> IO GLint)
+  ->         GLenum -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn31
+  :: FunPtr (GLenum -> IO GLuint)
+  ->         GLenum -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn414
+  :: FunPtr (GLenum -> IO GLushort)
+  ->         GLenum -> IO GLushort
+
+foreign import CALLCONV "dynamic" dyn272
+  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
+  ->         GLenum -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn320
+  :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
+  ->         GLenum -> Ptr GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn557
+  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+  ->         GLenum -> Ptr GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn202
+  :: FunPtr (GLenum -> Ptr GLchar -> IO GLuint)
+  ->         GLenum -> Ptr GLchar -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn96
+  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+  ->         GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn98
+  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+  ->         GLenum -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn97
+  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+  ->         GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn560
+  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
+  ->         GLenum -> Ptr GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn139
+  :: FunPtr (GLenum -> Ptr GLint -> IO ())
+  ->         GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn542
+  :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn349
+  :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
+  ->         GLenum -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn562
+  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+  ->         GLenum -> Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn547
+  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
+  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn548
+  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn450
+  :: FunPtr (GLenum -> Ptr GLubyte -> IO ())
+  ->         GLenum -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn128
+  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+  ->         GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn238
+  :: FunPtr (GLenum -> Ptr GLuint64 -> Ptr GLsizei -> GLuint -> IO ())
+  ->         GLenum -> Ptr GLuint64 -> Ptr GLsizei -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn352
+  :: FunPtr (GLenum -> Ptr GLuint64EXT -> IO ())
+  ->         GLenum -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn398
+  :: FunPtr (GLenum -> Ptr GLushort -> IO ())
+  ->         GLenum -> Ptr GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn625
+  :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
+  ->         GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn545
+  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn544
+  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn543
+  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn233
+  :: FunPtr (GLenum -> Ptr a -> IO ())
+  ->         GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn303
+  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn259
+  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn51
+  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn109
+  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn227
+  :: FunPtr (GLfixed -> GLfixed -> IO ())
+  ->         GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn84
+  :: FunPtr (GLfixed -> IO ())
+  ->         GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn720
+  :: FunPtr (GLfloat -> GLboolean -> IO ())
+  ->         GLfloat -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn754
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn749
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn113
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn638
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn99
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn255
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn50
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn41
+  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn751
+  :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn225
+  :: FunPtr (GLfloat -> GLfloat -> IO ())
+  ->         GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn82
+  :: FunPtr (GLfloat -> IO ())
+  ->         GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn115
+  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn101
+  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn753
+  :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn285
+  :: FunPtr (GLhalfNV -> IO ())
+  ->         GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn381
+  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLhandleARB -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn382
+  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLint -> IO ())
+  ->         GLhandleARB -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn15
+  :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
+  ->         GLhandleARB -> GLhandleARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn441
+  :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLhandleARB -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn445
+  :: FunPtr (GLhandleARB -> GLint -> Ptr GLint -> IO ())
+  ->         GLhandleARB -> GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn732
+  :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
+  ->         GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn346
+  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
+  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn315
+  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ())
+  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn309
+  :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
+  ->         GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn20
+  :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
+  ->         GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn140
+  :: FunPtr (GLhandleARB -> IO ())
+  ->         GLhandleARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn318
+  :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
+  ->         GLhandleARB -> Ptr GLcharARB -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn843
+  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn836
+  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn522
+  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
+  ->         GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn519
+  :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
+  ->         GLint -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn816
+  :: FunPtr (GLint -> GLdouble -> IO ())
+  ->         GLint -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn131
+  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn130
+  :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
+  ->         GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn122
+  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
+  ->         GLint -> GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn129
+  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn132
+  :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
+  ->         GLint -> GLenum -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn524
+  :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+  ->         GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn521
+  :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
+  ->         GLint -> GLfixed -> GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn844
+  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn837
+  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn523
+  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
+  ->         GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn520
+  :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
+  ->         GLint -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn818
+  :: FunPtr (GLint -> GLfloat -> IO ())
+  ->         GLint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn57
+  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
+  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn256
+  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn79
+  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn43
+  :: FunPtr (GLint -> GLint -> GLint -> IO ())
+  ->         GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn697
+  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn696
+  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn178
+  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
+  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn723
+  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn270
+  :: FunPtr (GLint -> GLint -> IO ())
+  ->         GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn845
+  :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
+  ->         GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn838
+  :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
+  ->         GLint -> GLint64 -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn831
+  :: FunPtr (GLint -> GLint64 -> GLint64 -> IO ())
+  ->         GLint -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn820
+  :: FunPtr (GLint -> GLint64 -> IO ())
+  ->         GLint -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn846
+  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn839
+  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn832
+  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLint -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn821
+  :: FunPtr (GLint -> GLint64EXT -> IO ())
+  ->         GLint -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn850
+  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn851
+  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn507
+  :: FunPtr (GLint -> GLsizei -> IO ())
+  ->         GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn817
+  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn819
+  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn824
+  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn822
+  :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn823
+  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn830
+  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn828
+  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn829
+  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn847
+  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn840
+  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn833
+  :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
+  ->         GLint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn825
+  :: FunPtr (GLint -> GLuint -> IO ())
+  ->         GLint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn848
+  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn841
+  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn834
+  :: FunPtr (GLint -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLint -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn826
+  :: FunPtr (GLint -> GLuint64 -> IO ())
+  ->         GLint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn849
+  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn842
+  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn835
+  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLint -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn827
+  :: FunPtr (GLint -> GLuint64EXT -> IO ())
+  ->         GLint -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn503
+  :: FunPtr (GLint -> GLushort -> IO ())
+  ->         GLint -> GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn13
+  :: FunPtr (GLint -> IO ())
+  ->         GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn266
+  :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
+  ->         GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn918
+  :: FunPtr (GLint -> Ptr GLbyte -> IO ())
+  ->         GLint -> Ptr GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn379
+  :: FunPtr (GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ())
+  ->         GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn378
+  :: FunPtr (GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ())
+  ->         GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn216
+  :: FunPtr (GLint -> Ptr GLchar -> IO ())
+  ->         GLint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn495
+  :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
+  ->         GLint -> Ptr GLchar -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn919
+  :: FunPtr (GLint -> Ptr GLdouble -> IO ())
+  ->         GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn237
+  :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
+  ->         GLint -> Ptr GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn920
+  :: FunPtr (GLint -> Ptr GLfloat -> IO ())
+  ->         GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn921
+  :: FunPtr (GLint -> Ptr GLint -> IO ())
+  ->         GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn922
+  :: FunPtr (GLint -> Ptr GLshort -> IO ())
+  ->         GLint -> Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn534
+  :: FunPtr (GLint -> Ptr GLubyte -> IO ())
+  ->         GLint -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn535
+  :: FunPtr (GLint -> Ptr GLuint -> IO ())
+  ->         GLint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn536
+  :: FunPtr (GLint -> Ptr GLushort -> IO ())
+  ->         GLint -> Ptr GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn231
+  :: FunPtr (GLintptr -> IO ())
+  ->         GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn257
+  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn116
+  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn45
+  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn694
+  :: FunPtr (GLshort -> GLshort -> IO ())
+  ->         GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn475
+  :: FunPtr (GLshort -> IO ())
+  ->         GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn279
+  :: FunPtr (GLsizei -> GLenum -> Ptr GLfixed -> IO ())
+  ->         GLsizei -> GLenum -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn278
+  :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn193
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn742
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn737
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn744
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn741
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn69
+  :: FunPtr (GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn250
+  :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn49
+  :: FunPtr (GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ())
+  ->         GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn48
+  :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
+  ->         GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn265
+  :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
+  ->         GLsizei -> GLsizei -> Ptr GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn92
+  :: FunPtr (GLsizei -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLsizei -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn736
+  :: FunPtr (GLsizei -> GLuint -> IO ())
+  ->         GLsizei -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn263
+  :: FunPtr (GLsizei -> IO ())
+  ->         GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn304
+  :: FunPtr (GLsizei -> IO GLuint)
+  ->         GLsizei -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn485
+  :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
+  ->         GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn236
+  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
+  ->         GLsizei -> Ptr GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn195
+  :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn811
+  :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
+  ->         GLsizei -> Ptr GLint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn813
+  :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
+  ->         GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn486
+  :: FunPtr (GLsizei -> Ptr GLint -> IO ())
+  ->         GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn465
+  :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
+  ->         GLsizei -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn729
+  :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
+  ->         GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn196
+  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+  ->         GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn12
+  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
+  ->         GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn640
+  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
+  ->         GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ()
+
+foreign import CALLCONV "dynamic" dyn641
+  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
+  ->         GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn639
+  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
+  ->         GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn857
+  :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
+  ->         GLsizei -> Ptr GLvdpauSurfaceNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn618
+  :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
+  ->         GLsizei -> Ptr a -> GLenum -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn264
+  :: FunPtr (GLsizei -> Ptr a -> IO ())
+  ->         GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn916
+  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
+  ->         GLsync -> GLbitfield -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn95
+  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
+  ->         GLsync -> GLbitfield -> GLuint64 -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn417
+  :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
+  ->         GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn218
+  :: FunPtr (GLsync -> IO ())
+  ->         GLsync -> IO ()
+
+foreign import CALLCONV "dynamic" dyn498
+  :: FunPtr (GLsync -> IO GLboolean)
+  ->         GLsync -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn120
+  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn118
+  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ())
+  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn117
+  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
+  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn103
+  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
+  ->         GLubyte -> GLubyte -> GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn476
+  :: FunPtr (GLubyte -> IO ())
+  ->         GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn500
+  :: FunPtr (GLuint -> GLbitfield -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLbitfield -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn588
+  :: FunPtr (GLuint -> GLbitfield -> GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLbitfield -> GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn853
+  :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
+  ->         GLuint -> GLbitfield -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn592
+  :: FunPtr (GLuint -> GLbitfield -> IO ())
+  ->         GLuint -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn127
+  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
+  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn727
+  :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn695
+  :: FunPtr (GLuint -> GLboolean -> IO ())
+  ->         GLuint -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn888
+  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn884
+  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn223
+  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn877
+  :: FunPtr (GLuint -> GLdouble -> IO ())
+  ->         GLuint -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn909
+  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn910
+  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn55
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn85
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn787
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn788
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn803
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn613
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn603
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn602
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn778
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn598
+  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn53
+  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn430
+  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn371
+  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn429
+  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn377
+  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn505
+  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn425
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn184
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn185
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn154
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn155
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn156
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn427
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn275
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn88
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn192
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn190
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn808
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn162
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn188
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn171
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn807
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn160
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn805
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn158
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn779
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn780
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn783
+  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn481
+  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn89
+  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn90
+  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn91
+  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn333
+  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLint -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn86
+  :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn793
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn797
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn795
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn791
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn790
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn782
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn785
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn781
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn784
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn614
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn861
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn392
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn630
+  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn87
+  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn628
+  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
+  ->         GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn606
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn809
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn743
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn311
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn607
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn604
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn608
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn605
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn601
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn777
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn407
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn408
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn610
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn611
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn310
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn612
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn372
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn609
+  :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn738
+  :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn375
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn376
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn373
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn434
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn374
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn862
+  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> GLuint -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn16
+  :: FunPtr (GLuint -> GLenum -> IO ())
+  ->         GLuint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn525
+  :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
+  ->         GLuint -> GLenum -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn499
+  :: FunPtr (GLuint -> GLenum -> IO GLboolean)
+  ->         GLuint -> GLenum -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn71
+  :: FunPtr (GLuint -> GLenum -> IO GLenum)
+  ->         GLuint -> GLenum -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn369
+  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
+  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn356
+  :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn406
+  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
+  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn405
+  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
+  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn274
+  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn453
+  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn357
+  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn341
+  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn367
+  :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn454
+  :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn409
+  :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn384
+  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn411
+  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn368
+  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
+  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn627
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
+  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn626
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
+  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn624
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
+  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn643
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
+  ->         GLuint -> GLenum -> Ptr a -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn642
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
+  ->         GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn482
+  :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn714
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn710
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn716
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn708
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn717
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn889
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn718
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn224
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn497
+  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
+  ->         GLuint -> GLfloat -> GLfloat -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn878
+  :: FunPtr (GLuint -> GLfloat -> IO ())
+  ->         GLuint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn890
+  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn885
+  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn882
+  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
+  ->         GLuint -> GLhalfNV -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn879
+  :: FunPtr (GLuint -> GLhalfNV -> IO ())
+  ->         GLuint -> GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn528
+  :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
+  ->         GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn345
+  :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
+  ->         GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64
+
+foreign import CALLCONV "dynamic" dyn682
+  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn674
+  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn666
+  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn656
+  :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn892
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn894
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn911
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn893
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn424
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn93
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn654
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn897
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn898
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn896
+  :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn426
+  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn428
+  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn683
+  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn675
+  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn667
+  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn657
+  :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn191
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn189
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn684
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn786
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn432
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn94
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn161
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn334
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn491
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn187
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn676
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn806
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn159
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn668
+  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn804
+  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn157
+  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn725
+  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn658
+  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
+  ->         GLuint -> GLint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn685
+  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
+  ->         GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn677
+  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
+  ->         GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn669
+  :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> IO ())
+  ->         GLuint -> GLint -> GLint64 -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn659
+  :: FunPtr (GLuint -> GLint -> GLint64 -> IO ())
+  ->         GLuint -> GLint -> GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn686
+  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn678
+  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn670
+  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn660
+  :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn690
+  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn691
+  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn468
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn469
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn471
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn470
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn661
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn473
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn472
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn665
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn332
+  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr a -> IO ())
+  ->         GLuint -> GLint -> GLsizei -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn745
+  :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
+  ->         GLuint -> GLint -> GLuint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn687
+  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn679
+  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn671
+  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn662
+  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
+  ->         GLuint -> GLint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn688
+  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn680
+  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn672
+  :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ())
+  ->         GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn663
+  :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
+  ->         GLuint -> GLint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn689
+  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn681
+  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn673
+  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn664
+  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn490
+  :: FunPtr (GLuint -> GLint -> IO ())
+  ->         GLuint -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn436
+  :: FunPtr (GLuint -> GLint -> IO GLint)
+  ->         GLuint -> GLint -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn438
+  :: FunPtr (GLuint -> GLint -> IO GLintptr)
+  ->         GLuint -> GLint -> IO GLintptr
+
+foreign import CALLCONV "dynamic" dyn439
+  :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn440
+  :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn444
+  :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
+  ->         GLuint -> GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn442
+  :: FunPtr (GLuint -> GLint -> Ptr GLint64 -> IO ())
+  ->         GLuint -> GLint -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn443
+  :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
+  ->         GLuint -> GLint -> Ptr GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn448
+  :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn446
+  :: FunPtr (GLuint -> GLint -> Ptr GLuint64 -> IO ())
+  ->         GLuint -> GLint -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn447
+  :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
+  ->         GLuint -> GLint -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn907
+  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn905
+  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn903
+  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint64EXT -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn899
+  :: FunPtr (GLuint -> GLint64EXT -> IO ())
+  ->         GLuint -> GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn526
+  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+  ->         GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn594
+  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
+  ->         GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn596
+  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ())
+  ->         GLuint -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn283
+  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn370
+  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn891
+  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn886
+  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
+  ->         GLuint -> GLshort -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn883
+  :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
+  ->         GLuint -> GLshort -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn881
+  :: FunPtr (GLuint -> GLshort -> IO ())
+  ->         GLuint -> GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn800
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn792
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn802
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn796
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn801
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn794
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn799
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn615
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn798
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn789
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn623
+  :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn616
+  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn632
+  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn634
+  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
+  ->         GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn631
+  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn387
+  :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
+  ->         GLuint -> GLsizei -> GLsizei -> IO GLfloat
+
+foreign import CALLCONV "dynamic" dyn215
+  :: FunPtr (GLuint -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn814
+  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
+  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn141
+  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn437
+  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn222
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn488
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn286
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn335
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
+  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn336
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
+  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn221
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn912
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn815
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn724
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn913
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn338
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn401
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn316
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn651
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn652
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn622
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn914
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn402
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn403
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn313
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn28
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn917
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn34
+  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
+  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn597
+  :: FunPtr (GLuint -> GLsizeiptr -> GLuint -> GLuint64 -> IO ())
+  ->         GLuint -> GLsizeiptr -> GLuint -> GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn595
+  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
+  ->         GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn593
+  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
+  ->         GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn712
+  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn887
+  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
+  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn531
+  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn529
+  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn746
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn36
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn873
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn410
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn35
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ()
+
+foreign import CALLCONV "dynamic" dyn872
+  :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn621
+  :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn452
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ()
+
+foreign import CALLCONV "dynamic" dyn455
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn456
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn307
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn451
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn591
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn590
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLuint64 -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn393
+  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLuint -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn258
+  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn532
+  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn530
+  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn496
+  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
+  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn26
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn27
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn867
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn870
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn868
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn58
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn186
+  :: FunPtr (GLuint -> GLuint -> GLint -> GLsizei -> IO ())
+  ->         GLuint -> GLuint -> GLint -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn177
+  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn33
+  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
+  ->         GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn871
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn599
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn312
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn308
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn314
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn876
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn852
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn395
+  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn288
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn487
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn875
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn874
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn869
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()
+
+foreign import CALLCONV "dynamic" dyn812
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()
+
+foreign import CALLCONV "dynamic" dyn589
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn735
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ()
+
+foreign import CALLCONV "dynamic" dyn230
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn895
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn80
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn287
+  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn105
+  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn391
+  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn25
+  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn600
+  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn4
+  :: FunPtr (GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn431
+  :: FunPtr (GLuint -> GLuint -> IO GLuint64)
+  ->         GLuint -> GLuint -> IO GLuint64
+
+foreign import CALLCONV "dynamic" dyn504
+  :: FunPtr (GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn19
+  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
+  ->         GLuint -> GLuint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn397
+  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
+  ->         GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn433
+  :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
+  ->         GLuint -> GLuint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn733
+  :: FunPtr (GLuint -> GLuint -> Ptr GLuint -> GLuint -> Ptr GLuint -> Ptr GLenum -> IO ())
+  ->         GLuint -> GLuint -> Ptr GLuint -> GLuint -> Ptr GLuint -> Ptr GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn479
+  :: FunPtr (GLuint -> GLuint64 -> GLenum -> GLint -> IO ())
+  ->         GLuint -> GLuint64 -> GLenum -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn480
+  :: FunPtr (GLuint -> GLuint64 -> GLenum -> Ptr a -> IO ())
+  ->         GLuint -> GLuint64 -> GLenum -> Ptr a -> IO ()
+
+foreign import CALLCONV "dynamic" dyn2
+  :: FunPtr (GLuint -> GLuint64 -> GLuint -> IO GLboolean)
+  ->         GLuint -> GLuint64 -> GLuint -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn702
+  :: FunPtr (GLuint -> GLuint64 -> IO GLboolean)
+  ->         GLuint -> GLuint64 -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn636
+  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
+  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn637
+  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
+  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn908
+  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn906
+  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn904
+  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn901
+  :: FunPtr (GLuint -> GLuint64EXT -> IO ())
+  ->         GLuint -> GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn3
+  :: FunPtr (GLuint -> IO ())
+  ->         GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn527
+  :: FunPtr (GLuint -> IO (Ptr a))
+  ->         GLuint -> IO (Ptr a)
+
+foreign import CALLCONV "dynamic" dyn277
+  :: FunPtr (GLuint -> IO GLboolean)
+  ->         GLuint -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn343
+  :: FunPtr (GLuint -> IO GLsizei)
+  ->         GLuint -> IO GLsizei
+
+foreign import CALLCONV "dynamic" dyn305
+  :: FunPtr (GLuint -> IO GLuint)
+  ->         GLuint -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn423
+  :: FunPtr (GLuint -> IO GLuint64)
+  ->         GLuint -> IO GLuint64
+
+foreign import CALLCONV "dynamic" dyn863
+  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+  ->         GLuint -> Ptr GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn734
+  :: FunPtr (GLuint -> Ptr GLchar -> GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
+  ->         GLuint -> Ptr GLchar -> GLuint -> Ptr GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn6
+  :: FunPtr (GLuint -> Ptr GLchar -> IO ())
+  ->         GLuint -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn317
+  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
+  ->         GLuint -> Ptr GLchar -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn435
+  :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
+  ->         GLuint -> Ptr GLchar -> IO GLuint
+
+foreign import CALLCONV "dynamic" dyn864
+  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+  ->         GLuint -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn386
+  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+  ->         GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn880
+  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
+  ->         GLuint -> Ptr GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn726
+  :: FunPtr (GLuint -> Ptr GLint -> IO ())
+  ->         GLuint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn394
+  :: FunPtr (GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn900
+  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
+  ->         GLuint -> Ptr GLint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn241
+  :: FunPtr (GLuint -> Ptr GLintptr -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
+  ->         GLuint -> Ptr GLintptr -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn865
+  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+  ->         GLuint -> Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn385
+  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+  ->         GLuint -> Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn197
+  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+  ->         GLuint -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn915
+  :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
+  ->         GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum
+
+foreign import CALLCONV "dynamic" dyn902
+  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+  ->         GLuint -> Ptr GLuint64EXT -> IO ()
+
+foreign import CALLCONV "dynamic" dyn866
+  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+  ->         GLuint -> Ptr GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn509
+  :: FunPtr (GLuint64 -> GLenum -> IO ())
+  ->         GLuint64 -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn261
+  :: FunPtr (GLuint64 -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+  ->         GLuint64 -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn508
+  :: FunPtr (GLuint64 -> IO ())
+  ->         GLuint64 -> IO ()
+
+foreign import CALLCONV "dynamic" dyn494
+  :: FunPtr (GLuint64 -> IO GLboolean)
+  ->         GLuint64 -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn121
+  :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
+  ->         GLushort -> GLushort -> GLushort -> GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn107
+  :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
+  ->         GLushort -> GLushort -> GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn477
+  :: FunPtr (GLushort -> IO ())
+  ->         GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn854
+  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
+  ->         GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn859
+  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
+  ->         GLvdpauSurfaceNV -> GLenum -> IO ()
+
+foreign import CALLCONV "dynamic" dyn860
+  :: FunPtr (GLvdpauSurfaceNV -> IO ())
+  ->         GLvdpauSurfaceNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn856
+  :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
+  ->         GLvdpauSurfaceNV -> IO GLboolean
+
+foreign import CALLCONV "dynamic" dyn11
+  :: FunPtr (IO ())
+  ->         IO ()
+
+foreign import CALLCONV "dynamic" dyn340
+  :: FunPtr (IO GLenum)
+  ->         IO GLenum
+
+foreign import CALLCONV "dynamic" dyn199
+  :: FunPtr (IO GLhandleARB)
+  ->         IO GLhandleARB
+
+foreign import CALLCONV "dynamic" dyn347
+  :: FunPtr (IO GLint)
+  ->         IO GLint
+
+foreign import CALLCONV "dynamic" dyn198
+  :: FunPtr (IO GLuint)
+  ->         IO GLuint
+
+foreign import CALLCONV "dynamic" dyn267
+  :: FunPtr (Ptr GLboolean -> IO ())
+  ->         Ptr GLboolean -> IO ()
+
+foreign import CALLCONV "dynamic" dyn38
+  :: FunPtr (Ptr GLbyte -> IO ())
+  ->         Ptr GLbyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn457
+  :: FunPtr (Ptr GLchar -> IO GLVULKANPROCNV)
+  ->         Ptr GLchar -> IO GLVULKANPROCNV
+
+foreign import CALLCONV "dynamic" dyn396
+  :: FunPtr (Ptr GLchar -> Ptr GLuint -> IO ())
+  ->         Ptr GLchar -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn40
+  :: FunPtr (Ptr GLdouble -> IO ())
+  ->         Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn698
+  :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
+  ->         Ptr GLdouble -> Ptr GLdouble -> IO ()
+
+foreign import CALLCONV "dynamic" dyn554
+  :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
+  ->         Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn555
+  :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
+  ->         Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn110
+  :: FunPtr (Ptr GLfixed -> IO ())
+  ->         Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn701
+  :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
+  ->         Ptr GLfixed -> Ptr GLfixed -> IO ()
+
+foreign import CALLCONV "dynamic" dyn692
+  :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
+  ->         Ptr GLfixed -> Ptr GLint -> IO GLbitfield
+
+foreign import CALLCONV "dynamic" dyn42
+  :: FunPtr (Ptr GLfloat -> IO ())
+  ->         Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn100
+  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn114
+  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn750
+  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn752
+  :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+  ->         Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn102
+  :: FunPtr (Ptr GLhalfNV -> IO ())
+  ->         Ptr GLhalfNV -> IO ()
+
+foreign import CALLCONV "dynamic" dyn339
+  :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
+  ->         Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn44
+  :: FunPtr (Ptr GLint -> IO ())
+  ->         Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn635
+  :: FunPtr (Ptr GLint -> IO GLint)
+  ->         Ptr GLint -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn699
+  :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
+  ->         Ptr GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn46
+  :: FunPtr (Ptr GLshort -> IO ())
+  ->         Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn700
+  :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
+  ->         Ptr GLshort -> Ptr GLshort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn104
+  :: FunPtr (Ptr GLubyte -> IO ())
+  ->         Ptr GLubyte -> IO ()
+
+foreign import CALLCONV "dynamic" dyn119
+  :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
+  ->         Ptr GLubyte -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn273
+  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
+  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn106
+  :: FunPtr (Ptr GLuint -> IO ())
+  ->         Ptr GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn281
+  :: FunPtr (Ptr GLuint -> IO GLint)
+  ->         Ptr GLuint -> IO GLint
+
+foreign import CALLCONV "dynamic" dyn719
+  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
+  ->         Ptr GLuint -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn709
+  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn711
+  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn715
+  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn713
+  :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+  ->         Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ()
+
+foreign import CALLCONV "dynamic" dyn240
+  :: FunPtr (Ptr GLuint64 -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
+  ->         Ptr GLuint64 -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ()
+
+foreign import CALLCONV "dynamic" dyn108
+  :: FunPtr (Ptr GLushort -> IO ())
+  ->         Ptr GLushort -> IO ()
+
+foreign import CALLCONV "dynamic" dyn858
+  :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
+  ->         Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV
+
+foreign import CALLCONV "dynamic" dyn619
+  :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
+  ->         Ptr a -> GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn383
+  :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+  ->         Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()
+
+foreign import CALLCONV "dynamic" dyn204
+  :: FunPtr (Ptr a -> Ptr b -> GLbitfield -> IO GLsync)
+  ->         Ptr a -> Ptr b -> GLbitfield -> IO GLsync
+
+foreign import CALLCONV "dynamic" dyn855
   :: FunPtr (Ptr a -> Ptr b -> IO ())
   ->         Ptr a -> Ptr b -> IO ()
 
diff --git a/src/Graphics/GL/Functions.hs b/src/Graphics/GL/Functions.hs
--- a/src/Graphics/GL/Functions.hs
+++ b/src/Graphics/GL/Functions.hs
@@ -45,7 +45,8 @@
   module Graphics.GL.Functions.F29,
   module Graphics.GL.Functions.F30,
   module Graphics.GL.Functions.F31,
-  module Graphics.GL.Functions.F32
+  module Graphics.GL.Functions.F32,
+  module Graphics.GL.Functions.F33
 ) where
 
 import Graphics.GL.Functions.F01
@@ -80,3 +81,4 @@
 import Graphics.GL.Functions.F30
 import Graphics.GL.Functions.F31
 import Graphics.GL.Functions.F32
+import Graphics.GL.Functions.F33
diff --git a/src/Graphics/GL/Functions/F01.hs b/src/Graphics/GL/Functions/F01.hs
--- a/src/Graphics/GL/Functions/F01.hs
+++ b/src/Graphics/GL/Functions/F01.hs
@@ -17,6 +17,7 @@
 module Graphics.GL.Functions.F01 (
   glAccum,
   glAccumxOES,
+  glAcquireKeyedMutexWin32EXT,
   glActiveProgramEXT,
   glActiveShaderProgram,
   glActiveShaderProgramEXT,
@@ -31,6 +32,7 @@
   glAlphaFuncQCOM,
   glAlphaFuncx,
   glAlphaFuncxOES,
+  glAlphaToCoverageDitherControlNV,
   glApplyFramebufferAttachmentCMAAINTEL,
   glApplyTextureEXT,
   glAreProgramsResidentNV,
@@ -112,9 +114,7 @@
   glBindVertexBuffers,
   glBindVertexShaderEXT,
   glBindVideoCaptureStreamBufferNV,
-  glBindVideoCaptureStreamTextureNV,
-  glBinormal3bEXT,
-  glBinormal3bvEXT
+  glBindVideoCaptureStreamTextureNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -150,13 +150,27 @@
 ptr_glAccumxOES :: FunPtr (GLenum -> GLfixed -> IO ())
 ptr_glAccumxOES = unsafePerformIO $ getCommand "glAccumxOES"
 
+-- glAcquireKeyedMutexWin32EXT -------------------------------------------------
+
+glAcquireKeyedMutexWin32EXT
+  :: MonadIO m
+  => GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @key@.
+  -> GLuint -- ^ @timeout@.
+  -> m GLboolean
+glAcquireKeyedMutexWin32EXT v1 v2 v3 = liftIO $ dyn2 ptr_glAcquireKeyedMutexWin32EXT v1 v2 v3
+
+{-# NOINLINE ptr_glAcquireKeyedMutexWin32EXT #-}
+ptr_glAcquireKeyedMutexWin32EXT :: FunPtr (GLuint -> GLuint64 -> GLuint -> IO GLboolean)
+ptr_glAcquireKeyedMutexWin32EXT = unsafePerformIO $ getCommand "glAcquireKeyedMutexWin32EXT"
+
 -- glActiveProgramEXT ----------------------------------------------------------
 
 glActiveProgramEXT
   :: MonadIO m
   => GLuint -- ^ @program@.
   -> m ()
-glActiveProgramEXT v1 = liftIO $ dyn2 ptr_glActiveProgramEXT v1
+glActiveProgramEXT v1 = liftIO $ dyn3 ptr_glActiveProgramEXT v1
 
 {-# NOINLINE ptr_glActiveProgramEXT #-}
 ptr_glActiveProgramEXT :: FunPtr (GLuint -> IO ())
@@ -170,7 +184,7 @@
   => GLuint -- ^ @pipeline@.
   -> GLuint -- ^ @program@.
   -> m ()
-glActiveShaderProgram v1 v2 = liftIO $ dyn3 ptr_glActiveShaderProgram v1 v2
+glActiveShaderProgram v1 v2 = liftIO $ dyn4 ptr_glActiveShaderProgram v1 v2
 
 {-# NOINLINE ptr_glActiveShaderProgram #-}
 ptr_glActiveShaderProgram :: FunPtr (GLuint -> GLuint -> IO ())
@@ -183,7 +197,7 @@
   => GLuint -- ^ @pipeline@.
   -> GLuint -- ^ @program@.
   -> m ()
-glActiveShaderProgramEXT v1 v2 = liftIO $ dyn3 ptr_glActiveShaderProgramEXT v1 v2
+glActiveShaderProgramEXT v1 v2 = liftIO $ dyn4 ptr_glActiveShaderProgramEXT v1 v2
 
 {-# NOINLINE ptr_glActiveShaderProgramEXT #-}
 ptr_glActiveShaderProgramEXT :: FunPtr (GLuint -> GLuint -> IO ())
@@ -193,9 +207,9 @@
 
 glActiveStencilFaceEXT
   :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
   -> m ()
-glActiveStencilFaceEXT v1 = liftIO $ dyn4 ptr_glActiveStencilFaceEXT v1
+glActiveStencilFaceEXT v1 = liftIO $ dyn5 ptr_glActiveStencilFaceEXT v1
 
 {-# NOINLINE ptr_glActiveStencilFaceEXT #-}
 ptr_glActiveStencilFaceEXT :: FunPtr (GLenum -> IO ())
@@ -208,7 +222,7 @@
   :: MonadIO m
   => GLenum -- ^ @texture@ of type @TextureUnit@.
   -> m ()
-glActiveTexture v1 = liftIO $ dyn4 ptr_glActiveTexture v1
+glActiveTexture v1 = liftIO $ dyn5 ptr_glActiveTexture v1
 
 {-# NOINLINE ptr_glActiveTexture #-}
 ptr_glActiveTexture :: FunPtr (GLenum -> IO ())
@@ -221,7 +235,7 @@
   :: MonadIO m
   => GLenum -- ^ @texture@ of type @TextureUnit@.
   -> m ()
-glActiveTextureARB v1 = liftIO $ dyn4 ptr_glActiveTextureARB v1
+glActiveTextureARB v1 = liftIO $ dyn5 ptr_glActiveTextureARB v1
 
 {-# NOINLINE ptr_glActiveTextureARB #-}
 ptr_glActiveTextureARB :: FunPtr (GLenum -> IO ())
@@ -234,7 +248,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m ()
-glActiveVaryingNV v1 v2 = liftIO $ dyn5 ptr_glActiveVaryingNV v1 v2
+glActiveVaryingNV v1 v2 = liftIO $ dyn6 ptr_glActiveVaryingNV v1 v2
 
 {-# NOINLINE ptr_glActiveVaryingNV #-}
 ptr_glActiveVaryingNV :: FunPtr (GLuint -> Ptr GLchar -> IO ())
@@ -251,7 +265,7 @@
   -> GLuint -- ^ @arg1Rep@.
   -> GLuint -- ^ @arg1Mod@.
   -> m ()
-glAlphaFragmentOp1ATI v1 v2 v3 v4 v5 v6 = liftIO $ dyn6 ptr_glAlphaFragmentOp1ATI v1 v2 v3 v4 v5 v6
+glAlphaFragmentOp1ATI v1 v2 v3 v4 v5 v6 = liftIO $ dyn7 ptr_glAlphaFragmentOp1ATI v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glAlphaFragmentOp1ATI #-}
 ptr_glAlphaFragmentOp1ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -271,7 +285,7 @@
   -> GLuint -- ^ @arg2Rep@.
   -> GLuint -- ^ @arg2Mod@.
   -> m ()
-glAlphaFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn7 ptr_glAlphaFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9
+glAlphaFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn8 ptr_glAlphaFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glAlphaFragmentOp2ATI #-}
 ptr_glAlphaFragmentOp2ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -294,7 +308,7 @@
   -> GLuint -- ^ @arg3Rep@.
   -> GLuint -- ^ @arg3Mod@.
   -> m ()
-glAlphaFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn8 ptr_glAlphaFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+glAlphaFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn9 ptr_glAlphaFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
 
 {-# NOINLINE ptr_glAlphaFragmentOp3ATI #-}
 ptr_glAlphaFragmentOp3ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -321,7 +335,7 @@
   => GLenum -- ^ @func@.
   -> GLclampf -- ^ @ref@.
   -> m ()
-glAlphaFuncQCOM v1 v2 = liftIO $ dyn9 ptr_glAlphaFuncQCOM v1 v2
+glAlphaFuncQCOM v1 v2 = liftIO $ dyn10 ptr_glAlphaFuncQCOM v1 v2
 
 {-# NOINLINE ptr_glAlphaFuncQCOM #-}
 ptr_glAlphaFuncQCOM :: FunPtr (GLenum -> GLclampf -> IO ())
@@ -353,12 +367,24 @@
 ptr_glAlphaFuncxOES :: FunPtr (GLenum -> GLfixed -> IO ())
 ptr_glAlphaFuncxOES = unsafePerformIO $ getCommand "glAlphaFuncxOES"
 
+-- glAlphaToCoverageDitherControlNV --------------------------------------------
+
+glAlphaToCoverageDitherControlNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> m ()
+glAlphaToCoverageDitherControlNV v1 = liftIO $ dyn5 ptr_glAlphaToCoverageDitherControlNV v1
+
+{-# NOINLINE ptr_glAlphaToCoverageDitherControlNV #-}
+ptr_glAlphaToCoverageDitherControlNV :: FunPtr (GLenum -> IO ())
+ptr_glAlphaToCoverageDitherControlNV = unsafePerformIO $ getCommand "glAlphaToCoverageDitherControlNV"
+
 -- glApplyFramebufferAttachmentCMAAINTEL ---------------------------------------
 
 glApplyFramebufferAttachmentCMAAINTEL
   :: MonadIO m
   => m ()
-glApplyFramebufferAttachmentCMAAINTEL = liftIO $ dyn10 ptr_glApplyFramebufferAttachmentCMAAINTEL
+glApplyFramebufferAttachmentCMAAINTEL = liftIO $ dyn11 ptr_glApplyFramebufferAttachmentCMAAINTEL
 
 {-# NOINLINE ptr_glApplyFramebufferAttachmentCMAAINTEL #-}
 ptr_glApplyFramebufferAttachmentCMAAINTEL :: FunPtr (IO ())
@@ -370,7 +396,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type @LightTextureModeEXT@.
   -> m ()
-glApplyTextureEXT v1 = liftIO $ dyn4 ptr_glApplyTextureEXT v1
+glApplyTextureEXT v1 = liftIO $ dyn5 ptr_glApplyTextureEXT v1
 
 {-# NOINLINE ptr_glApplyTextureEXT #-}
 ptr_glApplyTextureEXT :: FunPtr (GLenum -> IO ())
@@ -384,7 +410,7 @@
   -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
   -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glAreProgramsResidentNV v1 v2 v3 = liftIO $ dyn11 ptr_glAreProgramsResidentNV v1 v2 v3
+glAreProgramsResidentNV v1 v2 v3 = liftIO $ dyn12 ptr_glAreProgramsResidentNV v1 v2 v3
 
 {-# NOINLINE ptr_glAreProgramsResidentNV #-}
 ptr_glAreProgramsResidentNV :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
@@ -399,7 +425,7 @@
   -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
   -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glAreTexturesResident v1 v2 v3 = liftIO $ dyn11 ptr_glAreTexturesResident v1 v2 v3
+glAreTexturesResident v1 v2 v3 = liftIO $ dyn12 ptr_glAreTexturesResident v1 v2 v3
 
 {-# NOINLINE ptr_glAreTexturesResident #-}
 ptr_glAreTexturesResident :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
@@ -413,7 +439,7 @@
   -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
   -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glAreTexturesResidentEXT v1 v2 v3 = liftIO $ dyn11 ptr_glAreTexturesResidentEXT v1 v2 v3
+glAreTexturesResidentEXT v1 v2 v3 = liftIO $ dyn12 ptr_glAreTexturesResidentEXT v1 v2 v3
 
 {-# NOINLINE ptr_glAreTexturesResidentEXT #-}
 ptr_glAreTexturesResidentEXT :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
@@ -426,7 +452,7 @@
   :: MonadIO m
   => GLint -- ^ @i@.
   -> m ()
-glArrayElement v1 = liftIO $ dyn12 ptr_glArrayElement v1
+glArrayElement v1 = liftIO $ dyn13 ptr_glArrayElement v1
 
 {-# NOINLINE ptr_glArrayElement #-}
 ptr_glArrayElement :: FunPtr (GLint -> IO ())
@@ -439,7 +465,7 @@
   :: MonadIO m
   => GLint -- ^ @i@.
   -> m ()
-glArrayElementEXT v1 = liftIO $ dyn12 ptr_glArrayElementEXT v1
+glArrayElementEXT v1 = liftIO $ dyn13 ptr_glArrayElementEXT v1
 
 {-# NOINLINE ptr_glArrayElementEXT #-}
 ptr_glArrayElementEXT :: FunPtr (GLint -> IO ())
@@ -456,7 +482,7 @@
   -> GLuint -- ^ @buffer@.
   -> GLuint -- ^ @offset@.
   -> m ()
-glArrayObjectATI v1 v2 v3 v4 v5 v6 = liftIO $ dyn13 ptr_glArrayObjectATI v1 v2 v3 v4 v5 v6
+glArrayObjectATI v1 v2 v3 v4 v5 v6 = liftIO $ dyn14 ptr_glArrayObjectATI v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glArrayObjectATI #-}
 ptr_glArrayObjectATI :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
@@ -468,7 +494,7 @@
   :: MonadIO m
   => GLuint -- ^ @marker@.
   -> m ()
-glAsyncMarkerSGIX v1 = liftIO $ dyn2 ptr_glAsyncMarkerSGIX v1
+glAsyncMarkerSGIX v1 = liftIO $ dyn3 ptr_glAsyncMarkerSGIX v1
 
 {-# NOINLINE ptr_glAsyncMarkerSGIX #-}
 ptr_glAsyncMarkerSGIX :: FunPtr (GLuint -> IO ())
@@ -482,7 +508,7 @@
   => GLhandleARB -- ^ @containerObj@ of type @handleARB@.
   -> GLhandleARB -- ^ @obj@ of type @handleARB@.
   -> m ()
-glAttachObjectARB v1 v2 = liftIO $ dyn14 ptr_glAttachObjectARB v1 v2
+glAttachObjectARB v1 v2 = liftIO $ dyn15 ptr_glAttachObjectARB v1 v2
 
 {-# NOINLINE ptr_glAttachObjectARB #-}
 ptr_glAttachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
@@ -496,7 +522,7 @@
   => GLuint -- ^ @program@.
   -> GLuint -- ^ @shader@.
   -> m ()
-glAttachShader v1 v2 = liftIO $ dyn3 ptr_glAttachShader v1 v2
+glAttachShader v1 v2 = liftIO $ dyn4 ptr_glAttachShader v1 v2
 
 {-# NOINLINE ptr_glAttachShader #-}
 ptr_glAttachShader :: FunPtr (GLuint -> GLuint -> IO ())
@@ -509,7 +535,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> m ()
-glBegin v1 = liftIO $ dyn4 ptr_glBegin v1
+glBegin v1 = liftIO $ dyn5 ptr_glBegin v1
 
 {-# NOINLINE ptr_glBegin #-}
 ptr_glBegin :: FunPtr (GLenum -> IO ())
@@ -523,7 +549,7 @@
   => GLuint -- ^ @id@.
   -> GLenum -- ^ @mode@ of type @TypeEnum@.
   -> m ()
-glBeginConditionalRender v1 v2 = liftIO $ dyn15 ptr_glBeginConditionalRender v1 v2
+glBeginConditionalRender v1 v2 = liftIO $ dyn16 ptr_glBeginConditionalRender v1 v2
 
 {-# NOINLINE ptr_glBeginConditionalRender #-}
 ptr_glBeginConditionalRender :: FunPtr (GLuint -> GLenum -> IO ())
@@ -537,7 +563,7 @@
   => GLuint -- ^ @id@.
   -> GLenum -- ^ @mode@ of type @TypeEnum@.
   -> m ()
-glBeginConditionalRenderNV v1 v2 = liftIO $ dyn15 ptr_glBeginConditionalRenderNV v1 v2
+glBeginConditionalRenderNV v1 v2 = liftIO $ dyn16 ptr_glBeginConditionalRenderNV v1 v2
 
 {-# NOINLINE ptr_glBeginConditionalRenderNV #-}
 ptr_glBeginConditionalRenderNV :: FunPtr (GLuint -> GLenum -> IO ())
@@ -549,7 +575,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glBeginConditionalRenderNVX v1 = liftIO $ dyn2 ptr_glBeginConditionalRenderNVX v1
+glBeginConditionalRenderNVX v1 = liftIO $ dyn3 ptr_glBeginConditionalRenderNVX v1
 
 {-# NOINLINE ptr_glBeginConditionalRenderNVX #-}
 ptr_glBeginConditionalRenderNVX :: FunPtr (GLuint -> IO ())
@@ -560,7 +586,7 @@
 glBeginFragmentShaderATI
   :: MonadIO m
   => m ()
-glBeginFragmentShaderATI = liftIO $ dyn10 ptr_glBeginFragmentShaderATI
+glBeginFragmentShaderATI = liftIO $ dyn11 ptr_glBeginFragmentShaderATI
 
 {-# NOINLINE ptr_glBeginFragmentShaderATI #-}
 ptr_glBeginFragmentShaderATI :: FunPtr (IO ())
@@ -572,7 +598,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glBeginOcclusionQueryNV v1 = liftIO $ dyn2 ptr_glBeginOcclusionQueryNV v1
+glBeginOcclusionQueryNV v1 = liftIO $ dyn3 ptr_glBeginOcclusionQueryNV v1
 
 {-# NOINLINE ptr_glBeginOcclusionQueryNV #-}
 ptr_glBeginOcclusionQueryNV :: FunPtr (GLuint -> IO ())
@@ -584,7 +610,7 @@
   :: MonadIO m
   => GLuint -- ^ @monitor@.
   -> m ()
-glBeginPerfMonitorAMD v1 = liftIO $ dyn2 ptr_glBeginPerfMonitorAMD v1
+glBeginPerfMonitorAMD v1 = liftIO $ dyn3 ptr_glBeginPerfMonitorAMD v1
 
 {-# NOINLINE ptr_glBeginPerfMonitorAMD #-}
 ptr_glBeginPerfMonitorAMD :: FunPtr (GLuint -> IO ())
@@ -596,7 +622,7 @@
   :: MonadIO m
   => GLuint -- ^ @queryHandle@.
   -> m ()
-glBeginPerfQueryINTEL v1 = liftIO $ dyn2 ptr_glBeginPerfQueryINTEL v1
+glBeginPerfQueryINTEL v1 = liftIO $ dyn3 ptr_glBeginPerfQueryINTEL v1
 
 {-# NOINLINE ptr_glBeginPerfQueryINTEL #-}
 ptr_glBeginPerfQueryINTEL :: FunPtr (GLuint -> IO ())
@@ -610,7 +636,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBeginQuery v1 v2 = liftIO $ dyn16 ptr_glBeginQuery v1 v2
+glBeginQuery v1 v2 = liftIO $ dyn17 ptr_glBeginQuery v1 v2
 
 {-# NOINLINE ptr_glBeginQuery #-}
 ptr_glBeginQuery :: FunPtr (GLenum -> GLuint -> IO ())
@@ -624,7 +650,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBeginQueryARB v1 v2 = liftIO $ dyn16 ptr_glBeginQueryARB v1 v2
+glBeginQueryARB v1 v2 = liftIO $ dyn17 ptr_glBeginQueryARB v1 v2
 
 {-# NOINLINE ptr_glBeginQueryARB #-}
 ptr_glBeginQueryARB :: FunPtr (GLenum -> GLuint -> IO ())
@@ -637,7 +663,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBeginQueryEXT v1 v2 = liftIO $ dyn16 ptr_glBeginQueryEXT v1 v2
+glBeginQueryEXT v1 v2 = liftIO $ dyn17 ptr_glBeginQueryEXT v1 v2
 
 {-# NOINLINE ptr_glBeginQueryEXT #-}
 ptr_glBeginQueryEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -652,7 +678,7 @@
   -> GLuint -- ^ @index@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBeginQueryIndexed v1 v2 v3 = liftIO $ dyn17 ptr_glBeginQueryIndexed v1 v2 v3
+glBeginQueryIndexed v1 v2 v3 = liftIO $ dyn18 ptr_glBeginQueryIndexed v1 v2 v3
 
 {-# NOINLINE ptr_glBeginQueryIndexed #-}
 ptr_glBeginQueryIndexed :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
@@ -665,7 +691,7 @@
   :: MonadIO m
   => GLenum -- ^ @primitiveMode@.
   -> m ()
-glBeginTransformFeedback v1 = liftIO $ dyn4 ptr_glBeginTransformFeedback v1
+glBeginTransformFeedback v1 = liftIO $ dyn5 ptr_glBeginTransformFeedback v1
 
 {-# NOINLINE ptr_glBeginTransformFeedback #-}
 ptr_glBeginTransformFeedback :: FunPtr (GLenum -> IO ())
@@ -678,7 +704,7 @@
   :: MonadIO m
   => GLenum -- ^ @primitiveMode@.
   -> m ()
-glBeginTransformFeedbackEXT v1 = liftIO $ dyn4 ptr_glBeginTransformFeedbackEXT v1
+glBeginTransformFeedbackEXT v1 = liftIO $ dyn5 ptr_glBeginTransformFeedbackEXT v1
 
 {-# NOINLINE ptr_glBeginTransformFeedbackEXT #-}
 ptr_glBeginTransformFeedbackEXT :: FunPtr (GLenum -> IO ())
@@ -691,7 +717,7 @@
   :: MonadIO m
   => GLenum -- ^ @primitiveMode@.
   -> m ()
-glBeginTransformFeedbackNV v1 = liftIO $ dyn4 ptr_glBeginTransformFeedbackNV v1
+glBeginTransformFeedbackNV v1 = liftIO $ dyn5 ptr_glBeginTransformFeedbackNV v1
 
 {-# NOINLINE ptr_glBeginTransformFeedbackNV #-}
 ptr_glBeginTransformFeedbackNV :: FunPtr (GLenum -> IO ())
@@ -702,7 +728,7 @@
 glBeginVertexShaderEXT
   :: MonadIO m
   => m ()
-glBeginVertexShaderEXT = liftIO $ dyn10 ptr_glBeginVertexShaderEXT
+glBeginVertexShaderEXT = liftIO $ dyn11 ptr_glBeginVertexShaderEXT
 
 {-# NOINLINE ptr_glBeginVertexShaderEXT #-}
 ptr_glBeginVertexShaderEXT :: FunPtr (IO ())
@@ -714,7 +740,7 @@
   :: MonadIO m
   => GLuint -- ^ @video_capture_slot@.
   -> m ()
-glBeginVideoCaptureNV v1 = liftIO $ dyn2 ptr_glBeginVideoCaptureNV v1
+glBeginVideoCaptureNV v1 = liftIO $ dyn3 ptr_glBeginVideoCaptureNV v1
 
 {-# NOINLINE ptr_glBeginVideoCaptureNV #-}
 ptr_glBeginVideoCaptureNV :: FunPtr (GLuint -> IO ())
@@ -729,7 +755,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLchar -- ^ @name@.
   -> m ()
-glBindAttribLocation v1 v2 v3 = liftIO $ dyn18 ptr_glBindAttribLocation v1 v2 v3
+glBindAttribLocation v1 v2 v3 = liftIO $ dyn19 ptr_glBindAttribLocation v1 v2 v3
 
 {-# NOINLINE ptr_glBindAttribLocation #-}
 ptr_glBindAttribLocation :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
@@ -744,7 +770,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLcharARB -- ^ @name@.
   -> m ()
-glBindAttribLocationARB v1 v2 v3 = liftIO $ dyn19 ptr_glBindAttribLocationARB v1 v2 v3
+glBindAttribLocationARB v1 v2 v3 = liftIO $ dyn20 ptr_glBindAttribLocationARB v1 v2 v3
 
 {-# NOINLINE ptr_glBindAttribLocationARB #-}
 ptr_glBindAttribLocationARB :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
@@ -755,10 +781,10 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBuffer.xhtml OpenGL 4.x>.
 glBindBuffer
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLuint -- ^ @buffer@.
   -> m ()
-glBindBuffer v1 v2 = liftIO $ dyn16 ptr_glBindBuffer v1 v2
+glBindBuffer v1 v2 = liftIO $ dyn17 ptr_glBindBuffer v1 v2
 
 {-# NOINLINE ptr_glBindBuffer #-}
 ptr_glBindBuffer :: FunPtr (GLenum -> GLuint -> IO ())
@@ -769,10 +795,10 @@
 -- | This command is an alias for 'glBindBuffer'.
 glBindBufferARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLuint -- ^ @buffer@.
   -> m ()
-glBindBufferARB v1 v2 = liftIO $ dyn16 ptr_glBindBufferARB v1 v2
+glBindBufferARB v1 v2 = liftIO $ dyn17 ptr_glBindBufferARB v1 v2
 
 {-# NOINLINE ptr_glBindBufferARB #-}
 ptr_glBindBufferARB :: FunPtr (GLenum -> GLuint -> IO ())
@@ -787,7 +813,7 @@
   -> GLuint -- ^ @index@.
   -> GLuint -- ^ @buffer@.
   -> m ()
-glBindBufferBase v1 v2 v3 = liftIO $ dyn17 ptr_glBindBufferBase v1 v2 v3
+glBindBufferBase v1 v2 v3 = liftIO $ dyn18 ptr_glBindBufferBase v1 v2 v3
 
 {-# NOINLINE ptr_glBindBufferBase #-}
 ptr_glBindBufferBase :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
@@ -802,7 +828,7 @@
   -> GLuint -- ^ @index@.
   -> GLuint -- ^ @buffer@.
   -> m ()
-glBindBufferBaseEXT v1 v2 v3 = liftIO $ dyn17 ptr_glBindBufferBaseEXT v1 v2 v3
+glBindBufferBaseEXT v1 v2 v3 = liftIO $ dyn18 ptr_glBindBufferBaseEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBindBufferBaseEXT #-}
 ptr_glBindBufferBaseEXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
@@ -817,7 +843,7 @@
   -> GLuint -- ^ @index@.
   -> GLuint -- ^ @buffer@.
   -> m ()
-glBindBufferBaseNV v1 v2 v3 = liftIO $ dyn17 ptr_glBindBufferBaseNV v1 v2 v3
+glBindBufferBaseNV v1 v2 v3 = liftIO $ dyn18 ptr_glBindBufferBaseNV v1 v2 v3
 
 {-# NOINLINE ptr_glBindBufferBaseNV #-}
 ptr_glBindBufferBaseNV :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
@@ -832,7 +858,7 @@
   -> GLuint -- ^ @buffer@.
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> m ()
-glBindBufferOffsetEXT v1 v2 v3 v4 = liftIO $ dyn20 ptr_glBindBufferOffsetEXT v1 v2 v3 v4
+glBindBufferOffsetEXT v1 v2 v3 v4 = liftIO $ dyn21 ptr_glBindBufferOffsetEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindBufferOffsetEXT #-}
 ptr_glBindBufferOffsetEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
@@ -848,7 +874,7 @@
   -> GLuint -- ^ @buffer@.
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> m ()
-glBindBufferOffsetNV v1 v2 v3 v4 = liftIO $ dyn20 ptr_glBindBufferOffsetNV v1 v2 v3 v4
+glBindBufferOffsetNV v1 v2 v3 v4 = liftIO $ dyn21 ptr_glBindBufferOffsetNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindBufferOffsetNV #-}
 ptr_glBindBufferOffsetNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
@@ -865,7 +891,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glBindBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn21 ptr_glBindBufferRange v1 v2 v3 v4 v5
+glBindBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn22 ptr_glBindBufferRange v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBindBufferRange #-}
 ptr_glBindBufferRange :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -882,7 +908,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glBindBufferRangeEXT v1 v2 v3 v4 v5 = liftIO $ dyn21 ptr_glBindBufferRangeEXT v1 v2 v3 v4 v5
+glBindBufferRangeEXT v1 v2 v3 v4 v5 = liftIO $ dyn22 ptr_glBindBufferRangeEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBindBufferRangeEXT #-}
 ptr_glBindBufferRangeEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -899,7 +925,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glBindBufferRangeNV v1 v2 v3 v4 v5 = liftIO $ dyn21 ptr_glBindBufferRangeNV v1 v2 v3 v4 v5
+glBindBufferRangeNV v1 v2 v3 v4 v5 = liftIO $ dyn22 ptr_glBindBufferRangeNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBindBufferRangeNV #-}
 ptr_glBindBufferRangeNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -915,7 +941,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
   -> m ()
-glBindBuffersBase v1 v2 v3 v4 = liftIO $ dyn22 ptr_glBindBuffersBase v1 v2 v3 v4
+glBindBuffersBase v1 v2 v3 v4 = liftIO $ dyn23 ptr_glBindBuffersBase v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindBuffersBase #-}
 ptr_glBindBuffersBase :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
@@ -933,7 +959,7 @@
   -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
   -> Ptr GLsizeiptr -- ^ @sizes@ pointing to @count@ elements of type @GLsizeiptr@.
   -> m ()
-glBindBuffersRange v1 v2 v3 v4 v5 v6 = liftIO $ dyn23 ptr_glBindBuffersRange v1 v2 v3 v4 v5 v6
+glBindBuffersRange v1 v2 v3 v4 v5 v6 = liftIO $ dyn24 ptr_glBindBuffersRange v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glBindBuffersRange #-}
 ptr_glBindBuffersRange :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
@@ -948,7 +974,7 @@
   -> GLuint -- ^ @color@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m ()
-glBindFragDataLocation v1 v2 v3 = liftIO $ dyn18 ptr_glBindFragDataLocation v1 v2 v3
+glBindFragDataLocation v1 v2 v3 = liftIO $ dyn19 ptr_glBindFragDataLocation v1 v2 v3
 
 {-# NOINLINE ptr_glBindFragDataLocation #-}
 ptr_glBindFragDataLocation :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
@@ -963,7 +989,7 @@
   -> GLuint -- ^ @color@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m ()
-glBindFragDataLocationEXT v1 v2 v3 = liftIO $ dyn18 ptr_glBindFragDataLocationEXT v1 v2 v3
+glBindFragDataLocationEXT v1 v2 v3 = liftIO $ dyn19 ptr_glBindFragDataLocationEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBindFragDataLocationEXT #-}
 ptr_glBindFragDataLocationEXT :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
@@ -979,7 +1005,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLchar -- ^ @name@.
   -> m ()
-glBindFragDataLocationIndexed v1 v2 v3 v4 = liftIO $ dyn24 ptr_glBindFragDataLocationIndexed v1 v2 v3 v4
+glBindFragDataLocationIndexed v1 v2 v3 v4 = liftIO $ dyn25 ptr_glBindFragDataLocationIndexed v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindFragDataLocationIndexed #-}
 ptr_glBindFragDataLocationIndexed :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
@@ -995,7 +1021,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLchar -- ^ @name@.
   -> m ()
-glBindFragDataLocationIndexedEXT v1 v2 v3 v4 = liftIO $ dyn24 ptr_glBindFragDataLocationIndexedEXT v1 v2 v3 v4
+glBindFragDataLocationIndexedEXT v1 v2 v3 v4 = liftIO $ dyn25 ptr_glBindFragDataLocationIndexedEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindFragDataLocationIndexedEXT #-}
 ptr_glBindFragDataLocationIndexedEXT :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
@@ -1007,7 +1033,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glBindFragmentShaderATI v1 = liftIO $ dyn2 ptr_glBindFragmentShaderATI v1
+glBindFragmentShaderATI v1 = liftIO $ dyn3 ptr_glBindFragmentShaderATI v1
 
 {-# NOINLINE ptr_glBindFragmentShaderATI #-}
 ptr_glBindFragmentShaderATI :: FunPtr (GLuint -> IO ())
@@ -1021,7 +1047,7 @@
   => GLenum -- ^ @target@ of type @FramebufferTarget@.
   -> GLuint -- ^ @framebuffer@.
   -> m ()
-glBindFramebuffer v1 v2 = liftIO $ dyn16 ptr_glBindFramebuffer v1 v2
+glBindFramebuffer v1 v2 = liftIO $ dyn17 ptr_glBindFramebuffer v1 v2
 
 {-# NOINLINE ptr_glBindFramebuffer #-}
 ptr_glBindFramebuffer :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1034,7 +1060,7 @@
   => GLenum -- ^ @target@ of type @FramebufferTarget@.
   -> GLuint -- ^ @framebuffer@.
   -> m ()
-glBindFramebufferEXT v1 v2 = liftIO $ dyn16 ptr_glBindFramebufferEXT v1 v2
+glBindFramebufferEXT v1 v2 = liftIO $ dyn17 ptr_glBindFramebufferEXT v1 v2
 
 {-# NOINLINE ptr_glBindFramebufferEXT #-}
 ptr_glBindFramebufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1047,7 +1073,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @framebuffer@.
   -> m ()
-glBindFramebufferOES v1 v2 = liftIO $ dyn16 ptr_glBindFramebufferOES v1 v2
+glBindFramebufferOES v1 v2 = liftIO $ dyn17 ptr_glBindFramebufferOES v1 v2
 
 {-# NOINLINE ptr_glBindFramebufferOES #-}
 ptr_glBindFramebufferOES :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1066,7 +1092,7 @@
   -> GLenum -- ^ @access@.
   -> GLenum -- ^ @format@.
   -> m ()
-glBindImageTexture v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn25 ptr_glBindImageTexture v1 v2 v3 v4 v5 v6 v7
+glBindImageTexture v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn26 ptr_glBindImageTexture v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glBindImageTexture #-}
 ptr_glBindImageTexture :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
@@ -1084,7 +1110,7 @@
   -> GLenum -- ^ @access@.
   -> GLint -- ^ @format@.
   -> m ()
-glBindImageTextureEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn26 ptr_glBindImageTextureEXT v1 v2 v3 v4 v5 v6 v7
+glBindImageTextureEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn27 ptr_glBindImageTextureEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glBindImageTextureEXT #-}
 ptr_glBindImageTextureEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
@@ -1099,7 +1125,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
   -> m ()
-glBindImageTextures v1 v2 v3 = liftIO $ dyn27 ptr_glBindImageTextures v1 v2 v3
+glBindImageTextures v1 v2 v3 = liftIO $ dyn28 ptr_glBindImageTextures v1 v2 v3
 
 {-# NOINLINE ptr_glBindImageTextures #-}
 ptr_glBindImageTextures :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
@@ -1112,7 +1138,7 @@
   => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
   -> GLenum -- ^ @value@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
   -> m GLuint
-glBindLightParameterEXT v1 v2 = liftIO $ dyn28 ptr_glBindLightParameterEXT v1 v2
+glBindLightParameterEXT v1 v2 = liftIO $ dyn29 ptr_glBindLightParameterEXT v1 v2
 
 {-# NOINLINE ptr_glBindLightParameterEXT #-}
 ptr_glBindLightParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
@@ -1125,7 +1151,7 @@
   => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
   -> GLenum -- ^ @value@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> m GLuint
-glBindMaterialParameterEXT v1 v2 = liftIO $ dyn28 ptr_glBindMaterialParameterEXT v1 v2
+glBindMaterialParameterEXT v1 v2 = liftIO $ dyn29 ptr_glBindMaterialParameterEXT v1 v2
 
 {-# NOINLINE ptr_glBindMaterialParameterEXT #-}
 ptr_glBindMaterialParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
@@ -1139,7 +1165,7 @@
   -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> m ()
-glBindMultiTextureEXT v1 v2 v3 = liftIO $ dyn29 ptr_glBindMultiTextureEXT v1 v2 v3
+glBindMultiTextureEXT v1 v2 v3 = liftIO $ dyn30 ptr_glBindMultiTextureEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBindMultiTextureEXT #-}
 ptr_glBindMultiTextureEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
@@ -1151,7 +1177,7 @@
   :: MonadIO m
   => GLenum -- ^ @value@ of type @VertexShaderParameterEXT@.
   -> m GLuint
-glBindParameterEXT v1 = liftIO $ dyn30 ptr_glBindParameterEXT v1
+glBindParameterEXT v1 = liftIO $ dyn31 ptr_glBindParameterEXT v1
 
 {-# NOINLINE ptr_glBindParameterEXT #-}
 ptr_glBindParameterEXT :: FunPtr (GLenum -> IO GLuint)
@@ -1164,7 +1190,7 @@
   => GLenum -- ^ @target@ of type @ProgramTargetARB@.
   -> GLuint -- ^ @program@.
   -> m ()
-glBindProgramARB v1 v2 = liftIO $ dyn16 ptr_glBindProgramARB v1 v2
+glBindProgramARB v1 v2 = liftIO $ dyn17 ptr_glBindProgramARB v1 v2
 
 {-# NOINLINE ptr_glBindProgramARB #-}
 ptr_glBindProgramARB :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1178,7 +1204,7 @@
   => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBindProgramNV v1 v2 = liftIO $ dyn16 ptr_glBindProgramNV v1 v2
+glBindProgramNV v1 v2 = liftIO $ dyn17 ptr_glBindProgramNV v1 v2
 
 {-# NOINLINE ptr_glBindProgramNV #-}
 ptr_glBindProgramNV :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1191,7 +1217,7 @@
   :: MonadIO m
   => GLuint -- ^ @pipeline@.
   -> m ()
-glBindProgramPipeline v1 = liftIO $ dyn2 ptr_glBindProgramPipeline v1
+glBindProgramPipeline v1 = liftIO $ dyn3 ptr_glBindProgramPipeline v1
 
 {-# NOINLINE ptr_glBindProgramPipeline #-}
 ptr_glBindProgramPipeline :: FunPtr (GLuint -> IO ())
@@ -1203,7 +1229,7 @@
   :: MonadIO m
   => GLuint -- ^ @pipeline@.
   -> m ()
-glBindProgramPipelineEXT v1 = liftIO $ dyn2 ptr_glBindProgramPipelineEXT v1
+glBindProgramPipelineEXT v1 = liftIO $ dyn3 ptr_glBindProgramPipelineEXT v1
 
 {-# NOINLINE ptr_glBindProgramPipelineEXT #-}
 ptr_glBindProgramPipelineEXT :: FunPtr (GLuint -> IO ())
@@ -1217,7 +1243,7 @@
   => GLenum -- ^ @target@ of type @RenderbufferTarget@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glBindRenderbuffer v1 v2 = liftIO $ dyn16 ptr_glBindRenderbuffer v1 v2
+glBindRenderbuffer v1 v2 = liftIO $ dyn17 ptr_glBindRenderbuffer v1 v2
 
 {-# NOINLINE ptr_glBindRenderbuffer #-}
 ptr_glBindRenderbuffer :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1230,7 +1256,7 @@
   => GLenum -- ^ @target@ of type @RenderbufferTarget@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glBindRenderbufferEXT v1 v2 = liftIO $ dyn16 ptr_glBindRenderbufferEXT v1 v2
+glBindRenderbufferEXT v1 v2 = liftIO $ dyn17 ptr_glBindRenderbufferEXT v1 v2
 
 {-# NOINLINE ptr_glBindRenderbufferEXT #-}
 ptr_glBindRenderbufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1243,7 +1269,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glBindRenderbufferOES v1 v2 = liftIO $ dyn16 ptr_glBindRenderbufferOES v1 v2
+glBindRenderbufferOES v1 v2 = liftIO $ dyn17 ptr_glBindRenderbufferOES v1 v2
 
 {-# NOINLINE ptr_glBindRenderbufferOES #-}
 ptr_glBindRenderbufferOES :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1257,7 +1283,7 @@
   => GLuint -- ^ @unit@.
   -> GLuint -- ^ @sampler@.
   -> m ()
-glBindSampler v1 v2 = liftIO $ dyn3 ptr_glBindSampler v1 v2
+glBindSampler v1 v2 = liftIO $ dyn4 ptr_glBindSampler v1 v2
 
 {-# NOINLINE ptr_glBindSampler #-}
 ptr_glBindSampler :: FunPtr (GLuint -> GLuint -> IO ())
@@ -1272,7 +1298,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
   -> m ()
-glBindSamplers v1 v2 v3 = liftIO $ dyn27 ptr_glBindSamplers v1 v2 v3
+glBindSamplers v1 v2 v3 = liftIO $ dyn28 ptr_glBindSamplers v1 v2 v3
 
 {-# NOINLINE ptr_glBindSamplers #-}
 ptr_glBindSamplers :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
@@ -1286,7 +1312,7 @@
   -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
   -> GLenum -- ^ @value@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> m GLuint
-glBindTexGenParameterEXT v1 v2 v3 = liftIO $ dyn31 ptr_glBindTexGenParameterEXT v1 v2 v3
+glBindTexGenParameterEXT v1 v2 v3 = liftIO $ dyn32 ptr_glBindTexGenParameterEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBindTexGenParameterEXT #-}
 ptr_glBindTexGenParameterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
@@ -1300,7 +1326,7 @@
   => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> m ()
-glBindTexture v1 v2 = liftIO $ dyn16 ptr_glBindTexture v1 v2
+glBindTexture v1 v2 = liftIO $ dyn17 ptr_glBindTexture v1 v2
 
 {-# NOINLINE ptr_glBindTexture #-}
 ptr_glBindTexture :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1314,7 +1340,7 @@
   => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> m ()
-glBindTextureEXT v1 v2 = liftIO $ dyn16 ptr_glBindTextureEXT v1 v2
+glBindTextureEXT v1 v2 = liftIO $ dyn17 ptr_glBindTextureEXT v1 v2
 
 {-# NOINLINE ptr_glBindTextureEXT #-}
 ptr_glBindTextureEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1328,7 +1354,7 @@
   => GLuint -- ^ @unit@.
   -> GLuint -- ^ @texture@.
   -> m ()
-glBindTextureUnit v1 v2 = liftIO $ dyn3 ptr_glBindTextureUnit v1 v2
+glBindTextureUnit v1 v2 = liftIO $ dyn4 ptr_glBindTextureUnit v1 v2
 
 {-# NOINLINE ptr_glBindTextureUnit #-}
 ptr_glBindTextureUnit :: FunPtr (GLuint -> GLuint -> IO ())
@@ -1341,7 +1367,7 @@
   => GLenum -- ^ @unit@ of type @TextureUnit@.
   -> GLenum -- ^ @value@ of type @VertexShaderTextureUnitParameter@.
   -> m GLuint
-glBindTextureUnitParameterEXT v1 v2 = liftIO $ dyn28 ptr_glBindTextureUnitParameterEXT v1 v2
+glBindTextureUnitParameterEXT v1 v2 = liftIO $ dyn29 ptr_glBindTextureUnitParameterEXT v1 v2
 
 {-# NOINLINE ptr_glBindTextureUnitParameterEXT #-}
 ptr_glBindTextureUnitParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
@@ -1356,7 +1382,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
   -> m ()
-glBindTextures v1 v2 v3 = liftIO $ dyn27 ptr_glBindTextures v1 v2 v3
+glBindTextures v1 v2 v3 = liftIO $ dyn28 ptr_glBindTextures v1 v2 v3
 
 {-# NOINLINE ptr_glBindTextures #-}
 ptr_glBindTextures :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
@@ -1370,7 +1396,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @id@.
   -> m ()
-glBindTransformFeedback v1 v2 = liftIO $ dyn16 ptr_glBindTransformFeedback v1 v2
+glBindTransformFeedback v1 v2 = liftIO $ dyn17 ptr_glBindTransformFeedback v1 v2
 
 {-# NOINLINE ptr_glBindTransformFeedback #-}
 ptr_glBindTransformFeedback :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1380,10 +1406,10 @@
 
 glBindTransformFeedbackNV
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLuint -- ^ @id@.
   -> m ()
-glBindTransformFeedbackNV v1 v2 = liftIO $ dyn16 ptr_glBindTransformFeedbackNV v1 v2
+glBindTransformFeedbackNV v1 v2 = liftIO $ dyn17 ptr_glBindTransformFeedbackNV v1 v2
 
 {-# NOINLINE ptr_glBindTransformFeedbackNV #-}
 ptr_glBindTransformFeedbackNV :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1396,7 +1422,7 @@
   :: MonadIO m
   => GLuint -- ^ @array@.
   -> m ()
-glBindVertexArray v1 = liftIO $ dyn2 ptr_glBindVertexArray v1
+glBindVertexArray v1 = liftIO $ dyn3 ptr_glBindVertexArray v1
 
 {-# NOINLINE ptr_glBindVertexArray #-}
 ptr_glBindVertexArray :: FunPtr (GLuint -> IO ())
@@ -1408,7 +1434,7 @@
   :: MonadIO m
   => GLuint -- ^ @array@.
   -> m ()
-glBindVertexArrayAPPLE v1 = liftIO $ dyn2 ptr_glBindVertexArrayAPPLE v1
+glBindVertexArrayAPPLE v1 = liftIO $ dyn3 ptr_glBindVertexArrayAPPLE v1
 
 {-# NOINLINE ptr_glBindVertexArrayAPPLE #-}
 ptr_glBindVertexArrayAPPLE :: FunPtr (GLuint -> IO ())
@@ -1421,7 +1447,7 @@
   :: MonadIO m
   => GLuint -- ^ @array@.
   -> m ()
-glBindVertexArrayOES v1 = liftIO $ dyn2 ptr_glBindVertexArrayOES v1
+glBindVertexArrayOES v1 = liftIO $ dyn3 ptr_glBindVertexArrayOES v1
 
 {-# NOINLINE ptr_glBindVertexArrayOES #-}
 ptr_glBindVertexArrayOES :: FunPtr (GLuint -> IO ())
@@ -1437,7 +1463,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizei -- ^ @stride@.
   -> m ()
-glBindVertexBuffer v1 v2 v3 v4 = liftIO $ dyn32 ptr_glBindVertexBuffer v1 v2 v3 v4
+glBindVertexBuffer v1 v2 v3 v4 = liftIO $ dyn33 ptr_glBindVertexBuffer v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindVertexBuffer #-}
 ptr_glBindVertexBuffer :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
@@ -1454,7 +1480,7 @@
   -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
   -> Ptr GLsizei -- ^ @strides@ pointing to @count@ elements of type @GLsizei@.
   -> m ()
-glBindVertexBuffers v1 v2 v3 v4 v5 = liftIO $ dyn33 ptr_glBindVertexBuffers v1 v2 v3 v4 v5
+glBindVertexBuffers v1 v2 v3 v4 v5 = liftIO $ dyn34 ptr_glBindVertexBuffers v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBindVertexBuffers #-}
 ptr_glBindVertexBuffers :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
@@ -1466,7 +1492,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glBindVertexShaderEXT v1 = liftIO $ dyn2 ptr_glBindVertexShaderEXT v1
+glBindVertexShaderEXT v1 = liftIO $ dyn3 ptr_glBindVertexShaderEXT v1
 
 {-# NOINLINE ptr_glBindVertexShaderEXT #-}
 ptr_glBindVertexShaderEXT :: FunPtr (GLuint -> IO ())
@@ -1481,7 +1507,7 @@
   -> GLenum -- ^ @frame_region@.
   -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
   -> m ()
-glBindVideoCaptureStreamBufferNV v1 v2 v3 v4 = liftIO $ dyn34 ptr_glBindVideoCaptureStreamBufferNV v1 v2 v3 v4
+glBindVideoCaptureStreamBufferNV v1 v2 v3 v4 = liftIO $ dyn35 ptr_glBindVideoCaptureStreamBufferNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBindVideoCaptureStreamBufferNV #-}
 ptr_glBindVideoCaptureStreamBufferNV :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ())
@@ -1497,36 +1523,9 @@
   -> GLenum -- ^ @target@.
   -> GLuint -- ^ @texture@.
   -> m ()
-glBindVideoCaptureStreamTextureNV v1 v2 v3 v4 v5 = liftIO $ dyn35 ptr_glBindVideoCaptureStreamTextureNV v1 v2 v3 v4 v5
+glBindVideoCaptureStreamTextureNV v1 v2 v3 v4 v5 = liftIO $ dyn36 ptr_glBindVideoCaptureStreamTextureNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBindVideoCaptureStreamTextureNV #-}
 ptr_glBindVideoCaptureStreamTextureNV :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ())
 ptr_glBindVideoCaptureStreamTextureNV = unsafePerformIO $ getCommand "glBindVideoCaptureStreamTextureNV"
-
--- glBinormal3bEXT -------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glBinormal3bvEXT'.
-glBinormal3bEXT
-  :: MonadIO m
-  => GLbyte -- ^ @bx@.
-  -> GLbyte -- ^ @by@.
-  -> GLbyte -- ^ @bz@.
-  -> m ()
-glBinormal3bEXT v1 v2 v3 = liftIO $ dyn36 ptr_glBinormal3bEXT v1 v2 v3
-
-{-# NOINLINE ptr_glBinormal3bEXT #-}
-ptr_glBinormal3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glBinormal3bEXT = unsafePerformIO $ getCommand "glBinormal3bEXT"
-
--- glBinormal3bvEXT ------------------------------------------------------------
-
-glBinormal3bvEXT
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glBinormal3bvEXT v1 = liftIO $ dyn37 ptr_glBinormal3bvEXT v1
-
-{-# NOINLINE ptr_glBinormal3bvEXT #-}
-ptr_glBinormal3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glBinormal3bvEXT = unsafePerformIO $ getCommand "glBinormal3bvEXT"
 
diff --git a/src/Graphics/GL/Functions/F02.hs b/src/Graphics/GL/Functions/F02.hs
--- a/src/Graphics/GL/Functions/F02.hs
+++ b/src/Graphics/GL/Functions/F02.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F02 (
+  glBinormal3bEXT,
+  glBinormal3bvEXT,
   glBinormal3dEXT,
   glBinormal3dvEXT,
   glBinormal3fEXT,
@@ -76,6 +78,8 @@
   glBufferParameteriAPPLE,
   glBufferStorage,
   glBufferStorageEXT,
+  glBufferStorageExternalEXT,
+  glBufferStorageMemEXT,
   glBufferSubData,
   glBufferSubDataARB,
   glCallCommandListNV,
@@ -110,11 +114,7 @@
   glClearDepthxOES,
   glClearIndex,
   glClearNamedBufferData,
-  glClearNamedBufferDataEXT,
-  glClearNamedBufferSubData,
-  glClearNamedBufferSubDataEXT,
-  glClearNamedFramebufferfi,
-  glClearNamedFramebufferfv
+  glClearNamedBufferDataEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,33 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glBinormal3bEXT -------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glBinormal3bvEXT'.
+glBinormal3bEXT
+  :: MonadIO m
+  => GLbyte -- ^ @bx@.
+  -> GLbyte -- ^ @by@.
+  -> GLbyte -- ^ @bz@.
+  -> m ()
+glBinormal3bEXT v1 v2 v3 = liftIO $ dyn37 ptr_glBinormal3bEXT v1 v2 v3
+
+{-# NOINLINE ptr_glBinormal3bEXT #-}
+ptr_glBinormal3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glBinormal3bEXT = unsafePerformIO $ getCommand "glBinormal3bEXT"
+
+-- glBinormal3bvEXT ------------------------------------------------------------
+
+glBinormal3bvEXT
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glBinormal3bvEXT v1 = liftIO $ dyn38 ptr_glBinormal3bvEXT v1
+
+{-# NOINLINE ptr_glBinormal3bvEXT #-}
+ptr_glBinormal3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glBinormal3bvEXT = unsafePerformIO $ getCommand "glBinormal3bvEXT"
+
 -- glBinormal3dEXT -------------------------------------------------------------
 
 -- | The vector equivalent of this command is 'glBinormal3dvEXT'.
@@ -132,7 +159,7 @@
   -> GLdouble -- ^ @by@ of type @CoordD@.
   -> GLdouble -- ^ @bz@ of type @CoordD@.
   -> m ()
-glBinormal3dEXT v1 v2 v3 = liftIO $ dyn38 ptr_glBinormal3dEXT v1 v2 v3
+glBinormal3dEXT v1 v2 v3 = liftIO $ dyn39 ptr_glBinormal3dEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBinormal3dEXT #-}
 ptr_glBinormal3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
@@ -144,7 +171,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
   -> m ()
-glBinormal3dvEXT v1 = liftIO $ dyn39 ptr_glBinormal3dvEXT v1
+glBinormal3dvEXT v1 = liftIO $ dyn40 ptr_glBinormal3dvEXT v1
 
 {-# NOINLINE ptr_glBinormal3dvEXT #-}
 ptr_glBinormal3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
@@ -159,7 +186,7 @@
   -> GLfloat -- ^ @by@ of type @CoordF@.
   -> GLfloat -- ^ @bz@ of type @CoordF@.
   -> m ()
-glBinormal3fEXT v1 v2 v3 = liftIO $ dyn40 ptr_glBinormal3fEXT v1 v2 v3
+glBinormal3fEXT v1 v2 v3 = liftIO $ dyn41 ptr_glBinormal3fEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBinormal3fEXT #-}
 ptr_glBinormal3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -171,7 +198,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
   -> m ()
-glBinormal3fvEXT v1 = liftIO $ dyn41 ptr_glBinormal3fvEXT v1
+glBinormal3fvEXT v1 = liftIO $ dyn42 ptr_glBinormal3fvEXT v1
 
 {-# NOINLINE ptr_glBinormal3fvEXT #-}
 ptr_glBinormal3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
@@ -186,7 +213,7 @@
   -> GLint -- ^ @by@.
   -> GLint -- ^ @bz@.
   -> m ()
-glBinormal3iEXT v1 v2 v3 = liftIO $ dyn42 ptr_glBinormal3iEXT v1 v2 v3
+glBinormal3iEXT v1 v2 v3 = liftIO $ dyn43 ptr_glBinormal3iEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBinormal3iEXT #-}
 ptr_glBinormal3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
@@ -198,7 +225,7 @@
   :: MonadIO m
   => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
   -> m ()
-glBinormal3ivEXT v1 = liftIO $ dyn43 ptr_glBinormal3ivEXT v1
+glBinormal3ivEXT v1 = liftIO $ dyn44 ptr_glBinormal3ivEXT v1
 
 {-# NOINLINE ptr_glBinormal3ivEXT #-}
 ptr_glBinormal3ivEXT :: FunPtr (Ptr GLint -> IO ())
@@ -213,7 +240,7 @@
   -> GLshort -- ^ @by@.
   -> GLshort -- ^ @bz@.
   -> m ()
-glBinormal3sEXT v1 v2 v3 = liftIO $ dyn44 ptr_glBinormal3sEXT v1 v2 v3
+glBinormal3sEXT v1 v2 v3 = liftIO $ dyn45 ptr_glBinormal3sEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBinormal3sEXT #-}
 ptr_glBinormal3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
@@ -225,7 +252,7 @@
   :: MonadIO m
   => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
   -> m ()
-glBinormal3svEXT v1 = liftIO $ dyn45 ptr_glBinormal3svEXT v1
+glBinormal3svEXT v1 = liftIO $ dyn46 ptr_glBinormal3svEXT v1
 
 {-# NOINLINE ptr_glBinormal3svEXT #-}
 ptr_glBinormal3svEXT :: FunPtr (Ptr GLshort -> IO ())
@@ -239,7 +266,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
   -> m ()
-glBinormalPointerEXT v1 v2 v3 = liftIO $ dyn46 ptr_glBinormalPointerEXT v1 v2 v3
+glBinormalPointerEXT v1 v2 v3 = liftIO $ dyn47 ptr_glBinormalPointerEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBinormalPointerEXT #-}
 ptr_glBinormalPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
@@ -258,7 +285,7 @@
   -> GLfloat -- ^ @ymove@ of type @CoordF@.
   -> Ptr GLubyte -- ^ @bitmap@ pointing to @COMPSIZE(width,height)@ elements of type @GLubyte@.
   -> m ()
-glBitmap v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn47 ptr_glBitmap v1 v2 v3 v4 v5 v6 v7
+glBitmap v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn48 ptr_glBitmap v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glBitmap #-}
 ptr_glBitmap :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
@@ -276,7 +303,7 @@
   -> GLfixed -- ^ @ymove@.
   -> Ptr GLubyte -- ^ @bitmap@ pointing to @COMPSIZE(width,height)@ elements of type @GLubyte@.
   -> m ()
-glBitmapxOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn48 ptr_glBitmapxOES v1 v2 v3 v4 v5 v6 v7
+glBitmapxOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn49 ptr_glBitmapxOES v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glBitmapxOES #-}
 ptr_glBitmapxOES :: FunPtr (GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ())
@@ -287,7 +314,7 @@
 glBlendBarrier
   :: MonadIO m
   => m ()
-glBlendBarrier = liftIO $ dyn10 ptr_glBlendBarrier
+glBlendBarrier = liftIO $ dyn11 ptr_glBlendBarrier
 
 {-# NOINLINE ptr_glBlendBarrier #-}
 ptr_glBlendBarrier :: FunPtr (IO ())
@@ -299,7 +326,7 @@
 glBlendBarrierKHR
   :: MonadIO m
   => m ()
-glBlendBarrierKHR = liftIO $ dyn10 ptr_glBlendBarrierKHR
+glBlendBarrierKHR = liftIO $ dyn11 ptr_glBlendBarrierKHR
 
 {-# NOINLINE ptr_glBlendBarrierKHR #-}
 ptr_glBlendBarrierKHR :: FunPtr (IO ())
@@ -311,7 +338,7 @@
 glBlendBarrierNV
   :: MonadIO m
   => m ()
-glBlendBarrierNV = liftIO $ dyn10 ptr_glBlendBarrierNV
+glBlendBarrierNV = liftIO $ dyn11 ptr_glBlendBarrierNV
 
 {-# NOINLINE ptr_glBlendBarrierNV #-}
 ptr_glBlendBarrierNV :: FunPtr (IO ())
@@ -327,7 +354,7 @@
   -> GLfloat -- ^ @blue@ of type @ColorF@.
   -> GLfloat -- ^ @alpha@ of type @ColorF@.
   -> m ()
-glBlendColor v1 v2 v3 v4 = liftIO $ dyn49 ptr_glBlendColor v1 v2 v3 v4
+glBlendColor v1 v2 v3 v4 = liftIO $ dyn50 ptr_glBlendColor v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendColor #-}
 ptr_glBlendColor :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -343,7 +370,7 @@
   -> GLfloat -- ^ @blue@ of type @ColorF@.
   -> GLfloat -- ^ @alpha@ of type @ColorF@.
   -> m ()
-glBlendColorEXT v1 v2 v3 v4 = liftIO $ dyn49 ptr_glBlendColorEXT v1 v2 v3 v4
+glBlendColorEXT v1 v2 v3 v4 = liftIO $ dyn50 ptr_glBlendColorEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendColorEXT #-}
 ptr_glBlendColorEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -358,7 +385,7 @@
   -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
   -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
   -> m ()
-glBlendColorxOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glBlendColorxOES v1 v2 v3 v4
+glBlendColorxOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glBlendColorxOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendColorxOES #-}
 ptr_glBlendColorxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -371,7 +398,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type @BlendEquationMode@.
   -> m ()
-glBlendEquation v1 = liftIO $ dyn4 ptr_glBlendEquation v1
+glBlendEquation v1 = liftIO $ dyn5 ptr_glBlendEquation v1
 
 {-# NOINLINE ptr_glBlendEquation #-}
 ptr_glBlendEquation :: FunPtr (GLenum -> IO ())
@@ -384,7 +411,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [BlendEquationModeEXT](Graphics-GL-Groups.html#BlendEquationModeEXT).
   -> m ()
-glBlendEquationEXT v1 = liftIO $ dyn4 ptr_glBlendEquationEXT v1
+glBlendEquationEXT v1 = liftIO $ dyn5 ptr_glBlendEquationEXT v1
 
 {-# NOINLINE ptr_glBlendEquationEXT #-}
 ptr_glBlendEquationEXT :: FunPtr (GLenum -> IO ())
@@ -398,7 +425,7 @@
   => GLuint -- ^ @buf@.
   -> GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationIndexedAMD v1 v2 = liftIO $ dyn15 ptr_glBlendEquationIndexedAMD v1 v2
+glBlendEquationIndexedAMD v1 v2 = liftIO $ dyn16 ptr_glBlendEquationIndexedAMD v1 v2
 
 {-# NOINLINE ptr_glBlendEquationIndexedAMD #-}
 ptr_glBlendEquationIndexedAMD :: FunPtr (GLuint -> GLenum -> IO ())
@@ -410,7 +437,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationOES v1 = liftIO $ dyn4 ptr_glBlendEquationOES v1
+glBlendEquationOES v1 = liftIO $ dyn5 ptr_glBlendEquationOES v1
 
 {-# NOINLINE ptr_glBlendEquationOES #-}
 ptr_glBlendEquationOES :: FunPtr (GLenum -> IO ())
@@ -424,7 +451,7 @@
   => GLenum -- ^ @modeRGB@ of type [BlendEquationModeEXT](Graphics-GL-Groups.html#BlendEquationModeEXT).
   -> GLenum -- ^ @modeAlpha@ of type [BlendEquationModeEXT](Graphics-GL-Groups.html#BlendEquationModeEXT).
   -> m ()
-glBlendEquationSeparate v1 v2 = liftIO $ dyn51 ptr_glBlendEquationSeparate v1 v2
+glBlendEquationSeparate v1 v2 = liftIO $ dyn52 ptr_glBlendEquationSeparate v1 v2
 
 {-# NOINLINE ptr_glBlendEquationSeparate #-}
 ptr_glBlendEquationSeparate :: FunPtr (GLenum -> GLenum -> IO ())
@@ -438,7 +465,7 @@
   => GLenum -- ^ @modeRGB@ of type [BlendEquationModeEXT](Graphics-GL-Groups.html#BlendEquationModeEXT).
   -> GLenum -- ^ @modeAlpha@ of type [BlendEquationModeEXT](Graphics-GL-Groups.html#BlendEquationModeEXT).
   -> m ()
-glBlendEquationSeparateEXT v1 v2 = liftIO $ dyn51 ptr_glBlendEquationSeparateEXT v1 v2
+glBlendEquationSeparateEXT v1 v2 = liftIO $ dyn52 ptr_glBlendEquationSeparateEXT v1 v2
 
 {-# NOINLINE ptr_glBlendEquationSeparateEXT #-}
 ptr_glBlendEquationSeparateEXT :: FunPtr (GLenum -> GLenum -> IO ())
@@ -453,7 +480,7 @@
   -> GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparateIndexedAMD v1 v2 v3 = liftIO $ dyn52 ptr_glBlendEquationSeparateIndexedAMD v1 v2 v3
+glBlendEquationSeparateIndexedAMD v1 v2 v3 = liftIO $ dyn53 ptr_glBlendEquationSeparateIndexedAMD v1 v2 v3
 
 {-# NOINLINE ptr_glBlendEquationSeparateIndexedAMD #-}
 ptr_glBlendEquationSeparateIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -466,7 +493,7 @@
   => GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparateOES v1 v2 = liftIO $ dyn51 ptr_glBlendEquationSeparateOES v1 v2
+glBlendEquationSeparateOES v1 v2 = liftIO $ dyn52 ptr_glBlendEquationSeparateOES v1 v2
 
 {-# NOINLINE ptr_glBlendEquationSeparateOES #-}
 ptr_glBlendEquationSeparateOES :: FunPtr (GLenum -> GLenum -> IO ())
@@ -481,7 +508,7 @@
   -> GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparatei v1 v2 v3 = liftIO $ dyn52 ptr_glBlendEquationSeparatei v1 v2 v3
+glBlendEquationSeparatei v1 v2 v3 = liftIO $ dyn53 ptr_glBlendEquationSeparatei v1 v2 v3
 
 {-# NOINLINE ptr_glBlendEquationSeparatei #-}
 ptr_glBlendEquationSeparatei :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -496,7 +523,7 @@
   -> GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparateiARB v1 v2 v3 = liftIO $ dyn52 ptr_glBlendEquationSeparateiARB v1 v2 v3
+glBlendEquationSeparateiARB v1 v2 v3 = liftIO $ dyn53 ptr_glBlendEquationSeparateiARB v1 v2 v3
 
 {-# NOINLINE ptr_glBlendEquationSeparateiARB #-}
 ptr_glBlendEquationSeparateiARB :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -511,7 +538,7 @@
   -> GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparateiEXT v1 v2 v3 = liftIO $ dyn52 ptr_glBlendEquationSeparateiEXT v1 v2 v3
+glBlendEquationSeparateiEXT v1 v2 v3 = liftIO $ dyn53 ptr_glBlendEquationSeparateiEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBlendEquationSeparateiEXT #-}
 ptr_glBlendEquationSeparateiEXT :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -526,7 +553,7 @@
   -> GLenum -- ^ @modeRGB@.
   -> GLenum -- ^ @modeAlpha@.
   -> m ()
-glBlendEquationSeparateiOES v1 v2 v3 = liftIO $ dyn52 ptr_glBlendEquationSeparateiOES v1 v2 v3
+glBlendEquationSeparateiOES v1 v2 v3 = liftIO $ dyn53 ptr_glBlendEquationSeparateiOES v1 v2 v3
 
 {-# NOINLINE ptr_glBlendEquationSeparateiOES #-}
 ptr_glBlendEquationSeparateiOES :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -540,7 +567,7 @@
   => GLuint -- ^ @buf@.
   -> GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationi v1 v2 = liftIO $ dyn15 ptr_glBlendEquationi v1 v2
+glBlendEquationi v1 v2 = liftIO $ dyn16 ptr_glBlendEquationi v1 v2
 
 {-# NOINLINE ptr_glBlendEquationi #-}
 ptr_glBlendEquationi :: FunPtr (GLuint -> GLenum -> IO ())
@@ -554,7 +581,7 @@
   => GLuint -- ^ @buf@.
   -> GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationiARB v1 v2 = liftIO $ dyn15 ptr_glBlendEquationiARB v1 v2
+glBlendEquationiARB v1 v2 = liftIO $ dyn16 ptr_glBlendEquationiARB v1 v2
 
 {-# NOINLINE ptr_glBlendEquationiARB #-}
 ptr_glBlendEquationiARB :: FunPtr (GLuint -> GLenum -> IO ())
@@ -568,7 +595,7 @@
   => GLuint -- ^ @buf@.
   -> GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationiEXT v1 v2 = liftIO $ dyn15 ptr_glBlendEquationiEXT v1 v2
+glBlendEquationiEXT v1 v2 = liftIO $ dyn16 ptr_glBlendEquationiEXT v1 v2
 
 {-# NOINLINE ptr_glBlendEquationiEXT #-}
 ptr_glBlendEquationiEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -582,7 +609,7 @@
   => GLuint -- ^ @buf@.
   -> GLenum -- ^ @mode@.
   -> m ()
-glBlendEquationiOES v1 v2 = liftIO $ dyn15 ptr_glBlendEquationiOES v1 v2
+glBlendEquationiOES v1 v2 = liftIO $ dyn16 ptr_glBlendEquationiOES v1 v2
 
 {-# NOINLINE ptr_glBlendEquationiOES #-}
 ptr_glBlendEquationiOES :: FunPtr (GLuint -> GLenum -> IO ())
@@ -596,7 +623,7 @@
   => GLenum -- ^ @sfactor@ of type [BlendingFactorSrc](Graphics-GL-Groups.html#BlendingFactorSrc).
   -> GLenum -- ^ @dfactor@ of type [BlendingFactorDest](Graphics-GL-Groups.html#BlendingFactorDest).
   -> m ()
-glBlendFunc v1 v2 = liftIO $ dyn51 ptr_glBlendFunc v1 v2
+glBlendFunc v1 v2 = liftIO $ dyn52 ptr_glBlendFunc v1 v2
 
 {-# NOINLINE ptr_glBlendFunc #-}
 ptr_glBlendFunc :: FunPtr (GLenum -> GLenum -> IO ())
@@ -611,7 +638,7 @@
   -> GLenum -- ^ @src@.
   -> GLenum -- ^ @dst@.
   -> m ()
-glBlendFuncIndexedAMD v1 v2 v3 = liftIO $ dyn52 ptr_glBlendFuncIndexedAMD v1 v2 v3
+glBlendFuncIndexedAMD v1 v2 v3 = liftIO $ dyn53 ptr_glBlendFuncIndexedAMD v1 v2 v3
 
 {-# NOINLINE ptr_glBlendFuncIndexedAMD #-}
 ptr_glBlendFuncIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -627,7 +654,7 @@
   -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> m ()
-glBlendFuncSeparate v1 v2 v3 v4 = liftIO $ dyn53 ptr_glBlendFuncSeparate v1 v2 v3 v4
+glBlendFuncSeparate v1 v2 v3 v4 = liftIO $ dyn54 ptr_glBlendFuncSeparate v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendFuncSeparate #-}
 ptr_glBlendFuncSeparate :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -643,7 +670,7 @@
   -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> m ()
-glBlendFuncSeparateEXT v1 v2 v3 v4 = liftIO $ dyn53 ptr_glBlendFuncSeparateEXT v1 v2 v3 v4
+glBlendFuncSeparateEXT v1 v2 v3 v4 = liftIO $ dyn54 ptr_glBlendFuncSeparateEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendFuncSeparateEXT #-}
 ptr_glBlendFuncSeparateEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -659,7 +686,7 @@
   -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
   -> m ()
-glBlendFuncSeparateINGR v1 v2 v3 v4 = liftIO $ dyn53 ptr_glBlendFuncSeparateINGR v1 v2 v3 v4
+glBlendFuncSeparateINGR v1 v2 v3 v4 = liftIO $ dyn54 ptr_glBlendFuncSeparateINGR v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendFuncSeparateINGR #-}
 ptr_glBlendFuncSeparateINGR :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -676,7 +703,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparateIndexedAMD v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glBlendFuncSeparateIndexedAMD v1 v2 v3 v4 v5
+glBlendFuncSeparateIndexedAMD v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glBlendFuncSeparateIndexedAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBlendFuncSeparateIndexedAMD #-}
 ptr_glBlendFuncSeparateIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -691,7 +718,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparateOES v1 v2 v3 v4 = liftIO $ dyn53 ptr_glBlendFuncSeparateOES v1 v2 v3 v4
+glBlendFuncSeparateOES v1 v2 v3 v4 = liftIO $ dyn54 ptr_glBlendFuncSeparateOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBlendFuncSeparateOES #-}
 ptr_glBlendFuncSeparateOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -708,7 +735,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparatei v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glBlendFuncSeparatei v1 v2 v3 v4 v5
+glBlendFuncSeparatei v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glBlendFuncSeparatei v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBlendFuncSeparatei #-}
 ptr_glBlendFuncSeparatei :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -725,7 +752,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparateiARB v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glBlendFuncSeparateiARB v1 v2 v3 v4 v5
+glBlendFuncSeparateiARB v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glBlendFuncSeparateiARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBlendFuncSeparateiARB #-}
 ptr_glBlendFuncSeparateiARB :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -742,7 +769,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparateiEXT v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glBlendFuncSeparateiEXT v1 v2 v3 v4 v5
+glBlendFuncSeparateiEXT v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glBlendFuncSeparateiEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBlendFuncSeparateiEXT #-}
 ptr_glBlendFuncSeparateiEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -759,7 +786,7 @@
   -> GLenum -- ^ @srcAlpha@.
   -> GLenum -- ^ @dstAlpha@.
   -> m ()
-glBlendFuncSeparateiOES v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glBlendFuncSeparateiOES v1 v2 v3 v4 v5
+glBlendFuncSeparateiOES v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glBlendFuncSeparateiOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glBlendFuncSeparateiOES #-}
 ptr_glBlendFuncSeparateiOES :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -774,7 +801,7 @@
   -> GLenum -- ^ @src@.
   -> GLenum -- ^ @dst@.
   -> m ()
-glBlendFunci v1 v2 v3 = liftIO $ dyn52 ptr_glBlendFunci v1 v2 v3
+glBlendFunci v1 v2 v3 = liftIO $ dyn53 ptr_glBlendFunci v1 v2 v3
 
 {-# NOINLINE ptr_glBlendFunci #-}
 ptr_glBlendFunci :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -789,7 +816,7 @@
   -> GLenum -- ^ @src@.
   -> GLenum -- ^ @dst@.
   -> m ()
-glBlendFunciARB v1 v2 v3 = liftIO $ dyn52 ptr_glBlendFunciARB v1 v2 v3
+glBlendFunciARB v1 v2 v3 = liftIO $ dyn53 ptr_glBlendFunciARB v1 v2 v3
 
 {-# NOINLINE ptr_glBlendFunciARB #-}
 ptr_glBlendFunciARB :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -804,7 +831,7 @@
   -> GLenum -- ^ @src@.
   -> GLenum -- ^ @dst@.
   -> m ()
-glBlendFunciEXT v1 v2 v3 = liftIO $ dyn52 ptr_glBlendFunciEXT v1 v2 v3
+glBlendFunciEXT v1 v2 v3 = liftIO $ dyn53 ptr_glBlendFunciEXT v1 v2 v3
 
 {-# NOINLINE ptr_glBlendFunciEXT #-}
 ptr_glBlendFunciEXT :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -819,7 +846,7 @@
   -> GLenum -- ^ @src@.
   -> GLenum -- ^ @dst@.
   -> m ()
-glBlendFunciOES v1 v2 v3 = liftIO $ dyn52 ptr_glBlendFunciOES v1 v2 v3
+glBlendFunciOES v1 v2 v3 = liftIO $ dyn53 ptr_glBlendFunciOES v1 v2 v3
 
 {-# NOINLINE ptr_glBlendFunciOES #-}
 ptr_glBlendFunciOES :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
@@ -832,7 +859,7 @@
   => GLenum -- ^ @pname@.
   -> GLint -- ^ @value@.
   -> m ()
-glBlendParameteriNV v1 v2 = liftIO $ dyn55 ptr_glBlendParameteriNV v1 v2
+glBlendParameteriNV v1 v2 = liftIO $ dyn56 ptr_glBlendParameteriNV v1 v2
 
 {-# NOINLINE ptr_glBlendParameteriNV #-}
 ptr_glBlendParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
@@ -854,7 +881,7 @@
   -> GLbitfield -- ^ @mask@ of type [ClearBufferMask](Graphics-GL-Groups.html#ClearBufferMask).
   -> GLenum -- ^ @filter@.
   -> m ()
-glBlitFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn56 ptr_glBlitFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glBlitFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn57 ptr_glBlitFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glBlitFramebuffer #-}
 ptr_glBlitFramebuffer :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
@@ -875,7 +902,7 @@
   -> GLbitfield -- ^ @mask@.
   -> GLenum -- ^ @filter@.
   -> m ()
-glBlitFramebufferANGLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn56 ptr_glBlitFramebufferANGLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glBlitFramebufferANGLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn57 ptr_glBlitFramebufferANGLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glBlitFramebufferANGLE #-}
 ptr_glBlitFramebufferANGLE :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
@@ -897,7 +924,7 @@
   -> GLbitfield -- ^ @mask@ of type [ClearBufferMask](Graphics-GL-Groups.html#ClearBufferMask).
   -> GLenum -- ^ @filter@.
   -> m ()
-glBlitFramebufferEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn56 ptr_glBlitFramebufferEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glBlitFramebufferEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn57 ptr_glBlitFramebufferEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glBlitFramebufferEXT #-}
 ptr_glBlitFramebufferEXT :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
@@ -919,7 +946,7 @@
   -> GLbitfield -- ^ @mask@.
   -> GLenum -- ^ @filter@.
   -> m ()
-glBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn56 ptr_glBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn57 ptr_glBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glBlitFramebufferNV #-}
 ptr_glBlitFramebufferNV :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
@@ -943,7 +970,7 @@
   -> GLbitfield -- ^ @mask@.
   -> GLenum -- ^ @filter@.
   -> m ()
-glBlitNamedFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn57 ptr_glBlitNamedFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+glBlitNamedFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn58 ptr_glBlitNamedFramebuffer v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
 
 {-# NOINLINE ptr_glBlitNamedFramebuffer #-}
 ptr_glBlitNamedFramebuffer :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
@@ -958,7 +985,7 @@
   -> GLuint64EXT -- ^ @address@.
   -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
   -> m ()
-glBufferAddressRangeNV v1 v2 v3 v4 = liftIO $ dyn58 ptr_glBufferAddressRangeNV v1 v2 v3 v4
+glBufferAddressRangeNV v1 v2 v3 v4 = liftIO $ dyn59 ptr_glBufferAddressRangeNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferAddressRangeNV #-}
 ptr_glBufferAddressRangeNV :: FunPtr (GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ())
@@ -969,12 +996,12 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBufferData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBufferData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBufferData.xhtml OpenGL 4.x>.
 glBufferData
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
-  -> GLenum -- ^ @usage@ of type @BufferUsageARB@.
+  -> GLenum -- ^ @usage@ of type [BufferUsageARB](Graphics-GL-Groups.html#BufferUsageARB).
   -> m ()
-glBufferData v1 v2 v3 v4 = liftIO $ dyn59 ptr_glBufferData v1 v2 v3 v4
+glBufferData v1 v2 v3 v4 = liftIO $ dyn60 ptr_glBufferData v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferData #-}
 ptr_glBufferData :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
@@ -985,12 +1012,12 @@
 -- | This command is an alias for 'glBufferData'.
 glBufferDataARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
-  -> GLenum -- ^ @usage@ of type @BufferUsageARB@.
+  -> GLenum -- ^ @usage@ of type [BufferUsageARB](Graphics-GL-Groups.html#BufferUsageARB).
   -> m ()
-glBufferDataARB v1 v2 v3 v4 = liftIO $ dyn60 ptr_glBufferDataARB v1 v2 v3 v4
+glBufferDataARB v1 v2 v3 v4 = liftIO $ dyn61 ptr_glBufferDataARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferDataARB #-}
 ptr_glBufferDataARB :: FunPtr (GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ())
@@ -1005,7 +1032,7 @@
   -> GLsizeiptr -- ^ @size@.
   -> GLboolean -- ^ @commit@.
   -> m ()
-glBufferPageCommitmentARB v1 v2 v3 v4 = liftIO $ dyn61 ptr_glBufferPageCommitmentARB v1 v2 v3 v4
+glBufferPageCommitmentARB v1 v2 v3 v4 = liftIO $ dyn62 ptr_glBufferPageCommitmentARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferPageCommitmentARB #-}
 ptr_glBufferPageCommitmentARB :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
@@ -1019,7 +1046,7 @@
   -> GLenum -- ^ @pname@.
   -> GLint -- ^ @param@.
   -> m ()
-glBufferParameteriAPPLE v1 v2 v3 = liftIO $ dyn62 ptr_glBufferParameteriAPPLE v1 v2 v3
+glBufferParameteriAPPLE v1 v2 v3 = liftIO $ dyn63 ptr_glBufferParameteriAPPLE v1 v2 v3
 
 {-# NOINLINE ptr_glBufferParameteriAPPLE #-}
 ptr_glBufferParameteriAPPLE :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -1035,7 +1062,7 @@
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> GLbitfield -- ^ @flags@.
   -> m ()
-glBufferStorage v1 v2 v3 v4 = liftIO $ dyn63 ptr_glBufferStorage v1 v2 v3 v4
+glBufferStorage v1 v2 v3 v4 = liftIO $ dyn64 ptr_glBufferStorage v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferStorage #-}
 ptr_glBufferStorage :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
@@ -1051,23 +1078,54 @@
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> GLbitfield -- ^ @flags@.
   -> m ()
-glBufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn63 ptr_glBufferStorageEXT v1 v2 v3 v4
+glBufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn64 ptr_glBufferStorageEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferStorageEXT #-}
 ptr_glBufferStorageEXT :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
 ptr_glBufferStorageEXT = unsafePerformIO $ getCommand "glBufferStorageEXT"
 
+-- glBufferStorageExternalEXT --------------------------------------------------
+
+glBufferStorageExternalEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> GLeglClientBufferEXT -- ^ @clientBuffer@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glBufferStorageExternalEXT v1 v2 v3 v4 v5 = liftIO $ dyn65 ptr_glBufferStorageExternalEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glBufferStorageExternalEXT #-}
+ptr_glBufferStorageExternalEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ())
+ptr_glBufferStorageExternalEXT = unsafePerformIO $ getCommand "glBufferStorageExternalEXT"
+
+-- glBufferStorageMemEXT -------------------------------------------------------
+
+glBufferStorageMemEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glBufferStorageMemEXT v1 v2 v3 v4 = liftIO $ dyn66 ptr_glBufferStorageMemEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glBufferStorageMemEXT #-}
+ptr_glBufferStorageMemEXT :: FunPtr (GLenum -> GLsizeiptr -> GLuint -> GLuint64 -> IO ())
+ptr_glBufferStorageMemEXT = unsafePerformIO $ getCommand "glBufferStorageMemEXT"
+
 -- glBufferSubData -------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBufferSubData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBufferSubData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>.
 glBufferSubData
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> m ()
-glBufferSubData v1 v2 v3 v4 = liftIO $ dyn64 ptr_glBufferSubData v1 v2 v3 v4
+glBufferSubData v1 v2 v3 v4 = liftIO $ dyn67 ptr_glBufferSubData v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferSubData #-}
 ptr_glBufferSubData :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
@@ -1078,12 +1136,12 @@
 -- | This command is an alias for 'glBufferSubData'.
 glBufferSubDataARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
   -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> m ()
-glBufferSubDataARB v1 v2 v3 v4 = liftIO $ dyn65 ptr_glBufferSubDataARB v1 v2 v3 v4
+glBufferSubDataARB v1 v2 v3 v4 = liftIO $ dyn68 ptr_glBufferSubDataARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glBufferSubDataARB #-}
 ptr_glBufferSubDataARB :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
@@ -1095,7 +1153,7 @@
   :: MonadIO m
   => GLuint -- ^ @list@.
   -> m ()
-glCallCommandListNV v1 = liftIO $ dyn2 ptr_glCallCommandListNV v1
+glCallCommandListNV v1 = liftIO $ dyn3 ptr_glCallCommandListNV v1
 
 {-# NOINLINE ptr_glCallCommandListNV #-}
 ptr_glCallCommandListNV :: FunPtr (GLuint -> IO ())
@@ -1108,7 +1166,7 @@
   :: MonadIO m
   => GLuint -- ^ @list@ of type @List@.
   -> m ()
-glCallList v1 = liftIO $ dyn2 ptr_glCallList v1
+glCallList v1 = liftIO $ dyn3 ptr_glCallList v1
 
 {-# NOINLINE ptr_glCallList #-}
 ptr_glCallList :: FunPtr (GLuint -> IO ())
@@ -1123,7 +1181,7 @@
   -> GLenum -- ^ @type@ of type [ListNameType](Graphics-GL-Groups.html#ListNameType).
   -> Ptr a -- ^ @lists@ pointing to @COMPSIZE(n,type)@ elements of type @a@.
   -> m ()
-glCallLists v1 v2 v3 = liftIO $ dyn66 ptr_glCallLists v1 v2 v3
+glCallLists v1 v2 v3 = liftIO $ dyn69 ptr_glCallLists v1 v2 v3
 
 {-# NOINLINE ptr_glCallLists #-}
 ptr_glCallLists :: FunPtr (GLsizei -> GLenum -> Ptr a -> IO ())
@@ -1136,7 +1194,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@ of type @FramebufferTarget@.
   -> m GLenum
-glCheckFramebufferStatus v1 = liftIO $ dyn67 ptr_glCheckFramebufferStatus v1
+glCheckFramebufferStatus v1 = liftIO $ dyn70 ptr_glCheckFramebufferStatus v1
 
 {-# NOINLINE ptr_glCheckFramebufferStatus #-}
 ptr_glCheckFramebufferStatus :: FunPtr (GLenum -> IO GLenum)
@@ -1149,7 +1207,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@ of type @FramebufferTarget@.
   -> m GLenum
-glCheckFramebufferStatusEXT v1 = liftIO $ dyn67 ptr_glCheckFramebufferStatusEXT v1
+glCheckFramebufferStatusEXT v1 = liftIO $ dyn70 ptr_glCheckFramebufferStatusEXT v1
 
 {-# NOINLINE ptr_glCheckFramebufferStatusEXT #-}
 ptr_glCheckFramebufferStatusEXT :: FunPtr (GLenum -> IO GLenum)
@@ -1161,7 +1219,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m GLenum
-glCheckFramebufferStatusOES v1 = liftIO $ dyn67 ptr_glCheckFramebufferStatusOES v1
+glCheckFramebufferStatusOES v1 = liftIO $ dyn70 ptr_glCheckFramebufferStatusOES v1
 
 {-# NOINLINE ptr_glCheckFramebufferStatusOES #-}
 ptr_glCheckFramebufferStatusOES :: FunPtr (GLenum -> IO GLenum)
@@ -1175,7 +1233,7 @@
   => GLuint -- ^ @framebuffer@.
   -> GLenum -- ^ @target@.
   -> m GLenum
-glCheckNamedFramebufferStatus v1 v2 = liftIO $ dyn68 ptr_glCheckNamedFramebufferStatus v1 v2
+glCheckNamedFramebufferStatus v1 v2 = liftIO $ dyn71 ptr_glCheckNamedFramebufferStatus v1 v2
 
 {-# NOINLINE ptr_glCheckNamedFramebufferStatus #-}
 ptr_glCheckNamedFramebufferStatus :: FunPtr (GLuint -> GLenum -> IO GLenum)
@@ -1188,7 +1246,7 @@
   => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
   -> GLenum -- ^ @target@ of type @FramebufferTarget@.
   -> m GLenum -- ^ of type @FramebufferStatus@.
-glCheckNamedFramebufferStatusEXT v1 v2 = liftIO $ dyn68 ptr_glCheckNamedFramebufferStatusEXT v1 v2
+glCheckNamedFramebufferStatusEXT v1 v2 = liftIO $ dyn71 ptr_glCheckNamedFramebufferStatusEXT v1 v2
 
 {-# NOINLINE ptr_glCheckNamedFramebufferStatusEXT #-}
 ptr_glCheckNamedFramebufferStatusEXT :: FunPtr (GLuint -> GLenum -> IO GLenum)
@@ -1202,7 +1260,7 @@
   => GLenum -- ^ @target@ of type @ClampColorTargetARB@.
   -> GLenum -- ^ @clamp@ of type @ClampColorModeARB@.
   -> m ()
-glClampColor v1 v2 = liftIO $ dyn51 ptr_glClampColor v1 v2
+glClampColor v1 v2 = liftIO $ dyn52 ptr_glClampColor v1 v2
 
 {-# NOINLINE ptr_glClampColor #-}
 ptr_glClampColor :: FunPtr (GLenum -> GLenum -> IO ())
@@ -1216,7 +1274,7 @@
   => GLenum -- ^ @target@ of type @ClampColorTargetARB@.
   -> GLenum -- ^ @clamp@ of type @ClampColorModeARB@.
   -> m ()
-glClampColorARB v1 v2 = liftIO $ dyn51 ptr_glClampColorARB v1 v2
+glClampColorARB v1 v2 = liftIO $ dyn52 ptr_glClampColorARB v1 v2
 
 {-# NOINLINE ptr_glClampColorARB #-}
 ptr_glClampColorARB :: FunPtr (GLenum -> GLenum -> IO ())
@@ -1229,7 +1287,7 @@
   :: MonadIO m
   => GLbitfield -- ^ @mask@ of type [ClearBufferMask](Graphics-GL-Groups.html#ClearBufferMask).
   -> m ()
-glClear v1 = liftIO $ dyn69 ptr_glClear v1
+glClear v1 = liftIO $ dyn72 ptr_glClear v1
 
 {-# NOINLINE ptr_glClear #-}
 ptr_glClear :: FunPtr (GLbitfield -> IO ())
@@ -1245,7 +1303,7 @@
   -> GLfloat -- ^ @blue@.
   -> GLfloat -- ^ @alpha@.
   -> m ()
-glClearAccum v1 v2 v3 v4 = liftIO $ dyn49 ptr_glClearAccum v1 v2 v3 v4
+glClearAccum v1 v2 v3 v4 = liftIO $ dyn50 ptr_glClearAccum v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearAccum #-}
 ptr_glClearAccum :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1260,7 +1318,7 @@
   -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
   -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
   -> m ()
-glClearAccumxOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glClearAccumxOES v1 v2 v3 v4
+glClearAccumxOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glClearAccumxOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearAccumxOES #-}
 ptr_glClearAccumxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1277,7 +1335,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearBufferData v1 v2 v3 v4 v5 = liftIO $ dyn70 ptr_glClearBufferData v1 v2 v3 v4 v5
+glClearBufferData v1 v2 v3 v4 v5 = liftIO $ dyn73 ptr_glClearBufferData v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glClearBufferData #-}
 ptr_glClearBufferData :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1296,7 +1354,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearBufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn71 ptr_glClearBufferSubData v1 v2 v3 v4 v5 v6 v7
+glClearBufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn74 ptr_glClearBufferSubData v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glClearBufferSubData #-}
 ptr_glClearBufferSubData :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1312,7 +1370,7 @@
   -> GLfloat -- ^ @depth@.
   -> GLint -- ^ @stencil@.
   -> m ()
-glClearBufferfi v1 v2 v3 v4 = liftIO $ dyn72 ptr_glClearBufferfi v1 v2 v3 v4
+glClearBufferfi v1 v2 v3 v4 = liftIO $ dyn75 ptr_glClearBufferfi v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearBufferfi #-}
 ptr_glClearBufferfi :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
@@ -1327,7 +1385,7 @@
   -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
   -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLfloat@.
   -> m ()
-glClearBufferfv v1 v2 v3 = liftIO $ dyn73 ptr_glClearBufferfv v1 v2 v3
+glClearBufferfv v1 v2 v3 = liftIO $ dyn76 ptr_glClearBufferfv v1 v2 v3
 
 {-# NOINLINE ptr_glClearBufferfv #-}
 ptr_glClearBufferfv :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
@@ -1342,7 +1400,7 @@
   -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
   -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLint@.
   -> m ()
-glClearBufferiv v1 v2 v3 = liftIO $ dyn74 ptr_glClearBufferiv v1 v2 v3
+glClearBufferiv v1 v2 v3 = liftIO $ dyn77 ptr_glClearBufferiv v1 v2 v3
 
 {-# NOINLINE ptr_glClearBufferiv #-}
 ptr_glClearBufferiv :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
@@ -1357,7 +1415,7 @@
   -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
   -> Ptr GLuint -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLuint@.
   -> m ()
-glClearBufferuiv v1 v2 v3 = liftIO $ dyn75 ptr_glClearBufferuiv v1 v2 v3
+glClearBufferuiv v1 v2 v3 = liftIO $ dyn78 ptr_glClearBufferuiv v1 v2 v3
 
 {-# NOINLINE ptr_glClearBufferuiv #-}
 ptr_glClearBufferuiv :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
@@ -1373,7 +1431,7 @@
   -> GLfloat -- ^ @blue@ of type @ColorF@.
   -> GLfloat -- ^ @alpha@ of type @ColorF@.
   -> m ()
-glClearColor v1 v2 v3 v4 = liftIO $ dyn49 ptr_glClearColor v1 v2 v3 v4
+glClearColor v1 v2 v3 v4 = liftIO $ dyn50 ptr_glClearColor v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearColor #-}
 ptr_glClearColor :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1388,7 +1446,7 @@
   -> GLint -- ^ @blue@.
   -> GLint -- ^ @alpha@.
   -> m ()
-glClearColorIiEXT v1 v2 v3 v4 = liftIO $ dyn76 ptr_glClearColorIiEXT v1 v2 v3 v4
+glClearColorIiEXT v1 v2 v3 v4 = liftIO $ dyn79 ptr_glClearColorIiEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearColorIiEXT #-}
 ptr_glClearColorIiEXT :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
@@ -1403,7 +1461,7 @@
   -> GLuint -- ^ @blue@.
   -> GLuint -- ^ @alpha@.
   -> m ()
-glClearColorIuiEXT v1 v2 v3 v4 = liftIO $ dyn77 ptr_glClearColorIuiEXT v1 v2 v3 v4
+glClearColorIuiEXT v1 v2 v3 v4 = liftIO $ dyn80 ptr_glClearColorIuiEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearColorIuiEXT #-}
 ptr_glClearColorIuiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -1418,7 +1476,7 @@
   -> GLfixed -- ^ @blue@.
   -> GLfixed -- ^ @alpha@.
   -> m ()
-glClearColorx v1 v2 v3 v4 = liftIO $ dyn50 ptr_glClearColorx v1 v2 v3 v4
+glClearColorx v1 v2 v3 v4 = liftIO $ dyn51 ptr_glClearColorx v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearColorx #-}
 ptr_glClearColorx :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1433,7 +1491,7 @@
   -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
   -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
   -> m ()
-glClearColorxOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glClearColorxOES v1 v2 v3 v4
+glClearColorxOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glClearColorxOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearColorxOES #-}
 ptr_glClearColorxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1446,7 +1504,7 @@
   :: MonadIO m
   => GLdouble -- ^ @depth@.
   -> m ()
-glClearDepth v1 = liftIO $ dyn78 ptr_glClearDepth v1
+glClearDepth v1 = liftIO $ dyn81 ptr_glClearDepth v1
 
 {-# NOINLINE ptr_glClearDepth #-}
 ptr_glClearDepth :: FunPtr (GLdouble -> IO ())
@@ -1458,7 +1516,7 @@
   :: MonadIO m
   => GLdouble -- ^ @depth@.
   -> m ()
-glClearDepthdNV v1 = liftIO $ dyn78 ptr_glClearDepthdNV v1
+glClearDepthdNV v1 = liftIO $ dyn81 ptr_glClearDepthdNV v1
 
 {-# NOINLINE ptr_glClearDepthdNV #-}
 ptr_glClearDepthdNV :: FunPtr (GLdouble -> IO ())
@@ -1471,7 +1529,7 @@
   :: MonadIO m
   => GLfloat -- ^ @d@.
   -> m ()
-glClearDepthf v1 = liftIO $ dyn79 ptr_glClearDepthf v1
+glClearDepthf v1 = liftIO $ dyn82 ptr_glClearDepthf v1
 
 {-# NOINLINE ptr_glClearDepthf #-}
 ptr_glClearDepthf :: FunPtr (GLfloat -> IO ())
@@ -1484,7 +1542,7 @@
   :: MonadIO m
   => GLclampf -- ^ @depth@ of type @ClampedFloat32@.
   -> m ()
-glClearDepthfOES v1 = liftIO $ dyn80 ptr_glClearDepthfOES v1
+glClearDepthfOES v1 = liftIO $ dyn83 ptr_glClearDepthfOES v1
 
 {-# NOINLINE ptr_glClearDepthfOES #-}
 ptr_glClearDepthfOES :: FunPtr (GLclampf -> IO ())
@@ -1496,7 +1554,7 @@
   :: MonadIO m
   => GLfixed -- ^ @depth@.
   -> m ()
-glClearDepthx v1 = liftIO $ dyn81 ptr_glClearDepthx v1
+glClearDepthx v1 = liftIO $ dyn84 ptr_glClearDepthx v1
 
 {-# NOINLINE ptr_glClearDepthx #-}
 ptr_glClearDepthx :: FunPtr (GLfixed -> IO ())
@@ -1508,7 +1566,7 @@
   :: MonadIO m
   => GLfixed -- ^ @depth@ of type @ClampedFixed@.
   -> m ()
-glClearDepthxOES v1 = liftIO $ dyn81 ptr_glClearDepthxOES v1
+glClearDepthxOES v1 = liftIO $ dyn84 ptr_glClearDepthxOES v1
 
 {-# NOINLINE ptr_glClearDepthxOES #-}
 ptr_glClearDepthxOES :: FunPtr (GLfixed -> IO ())
@@ -1521,7 +1579,7 @@
   :: MonadIO m
   => GLfloat -- ^ @c@ of type @MaskedColorIndexValueF@.
   -> m ()
-glClearIndex v1 = liftIO $ dyn79 ptr_glClearIndex v1
+glClearIndex v1 = liftIO $ dyn82 ptr_glClearIndex v1
 
 {-# NOINLINE ptr_glClearIndex #-}
 ptr_glClearIndex :: FunPtr (GLfloat -> IO ())
@@ -1538,7 +1596,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@.
   -> m ()
-glClearNamedBufferData v1 v2 v3 v4 v5 = liftIO $ dyn82 ptr_glClearNamedBufferData v1 v2 v3 v4 v5
+glClearNamedBufferData v1 v2 v3 v4 v5 = liftIO $ dyn85 ptr_glClearNamedBufferData v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glClearNamedBufferData #-}
 ptr_glClearNamedBufferData :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1554,79 +1612,9 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearNamedBufferDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn82 ptr_glClearNamedBufferDataEXT v1 v2 v3 v4 v5
+glClearNamedBufferDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn85 ptr_glClearNamedBufferDataEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glClearNamedBufferDataEXT #-}
 ptr_glClearNamedBufferDataEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
 ptr_glClearNamedBufferDataEXT = unsafePerformIO $ getCommand "glClearNamedBufferDataEXT"
-
--- glClearNamedBufferSubData ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferSubData.xhtml OpenGL 4.x>.
-glClearNamedBufferSubData
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @data@.
-  -> m ()
-glClearNamedBufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn83 ptr_glClearNamedBufferSubData v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glClearNamedBufferSubData #-}
-ptr_glClearNamedBufferSubData :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glClearNamedBufferSubData = unsafePerformIO $ getCommand "glClearNamedBufferSubData"
-
--- glClearNamedBufferSubDataEXT ------------------------------------------------
-
-glClearNamedBufferSubDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizeiptr -- ^ @offset@ of type @BufferSize@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
-  -> m ()
-glClearNamedBufferSubDataEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn84 ptr_glClearNamedBufferSubDataEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glClearNamedBufferSubDataEXT #-}
-ptr_glClearNamedBufferSubDataEXT :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glClearNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glClearNamedBufferSubDataEXT"
-
--- glClearNamedFramebufferfi ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>.
-glClearNamedFramebufferfi
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @buffer@.
-  -> GLint -- ^ @drawbuffer@.
-  -> GLfloat -- ^ @depth@.
-  -> GLint -- ^ @stencil@.
-  -> m ()
-glClearNamedFramebufferfi v1 v2 v3 v4 v5 = liftIO $ dyn85 ptr_glClearNamedFramebufferfi v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glClearNamedFramebufferfi #-}
-ptr_glClearNamedFramebufferfi :: FunPtr (GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ())
-ptr_glClearNamedFramebufferfi = unsafePerformIO $ getCommand "glClearNamedFramebufferfi"
-
--- glClearNamedFramebufferfv ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>.
-glClearNamedFramebufferfv
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @buffer@.
-  -> GLint -- ^ @drawbuffer@.
-  -> Ptr GLfloat -- ^ @value@.
-  -> m ()
-glClearNamedFramebufferfv v1 v2 v3 v4 = liftIO $ dyn86 ptr_glClearNamedFramebufferfv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glClearNamedFramebufferfv #-}
-ptr_glClearNamedFramebufferfv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-ptr_glClearNamedFramebufferfv = unsafePerformIO $ getCommand "glClearNamedFramebufferfv"
 
diff --git a/src/Graphics/GL/Functions/F03.hs b/src/Graphics/GL/Functions/F03.hs
--- a/src/Graphics/GL/Functions/F03.hs
+++ b/src/Graphics/GL/Functions/F03.hs
@@ -15,6 +15,10 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F03 (
+  glClearNamedBufferSubData,
+  glClearNamedBufferSubDataEXT,
+  glClearNamedFramebufferfi,
+  glClearNamedFramebufferfv,
   glClearNamedFramebufferiv,
   glClearNamedFramebufferuiv,
   glClearPixelLocalStorageuiEXT,
@@ -110,11 +114,7 @@
   glColorTableEXT,
   glColorTableParameterfv,
   glColorTableParameterfvSGI,
-  glColorTableParameteriv,
-  glColorTableParameterivSGI,
-  glColorTableSGI,
-  glCombinerInputNV,
-  glCombinerOutputNV
+  glColorTableParameteriv
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,76 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glClearNamedBufferSubData ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferSubData.xhtml OpenGL 4.x>.
+glClearNamedBufferSubData
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @data@.
+  -> m ()
+glClearNamedBufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn86 ptr_glClearNamedBufferSubData v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glClearNamedBufferSubData #-}
+ptr_glClearNamedBufferSubData :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glClearNamedBufferSubData = unsafePerformIO $ getCommand "glClearNamedBufferSubData"
+
+-- glClearNamedBufferSubDataEXT ------------------------------------------------
+
+glClearNamedBufferSubDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizeiptr -- ^ @offset@ of type @BufferSize@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
+  -> m ()
+glClearNamedBufferSubDataEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn87 ptr_glClearNamedBufferSubDataEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glClearNamedBufferSubDataEXT #-}
+ptr_glClearNamedBufferSubDataEXT :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glClearNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glClearNamedBufferSubDataEXT"
+
+-- glClearNamedFramebufferfi ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>.
+glClearNamedFramebufferfi
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @buffer@.
+  -> GLint -- ^ @drawbuffer@.
+  -> GLfloat -- ^ @depth@.
+  -> GLint -- ^ @stencil@.
+  -> m ()
+glClearNamedFramebufferfi v1 v2 v3 v4 v5 = liftIO $ dyn88 ptr_glClearNamedFramebufferfi v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glClearNamedFramebufferfi #-}
+ptr_glClearNamedFramebufferfi :: FunPtr (GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ())
+ptr_glClearNamedFramebufferfi = unsafePerformIO $ getCommand "glClearNamedFramebufferfi"
+
+-- glClearNamedFramebufferfv ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>.
+glClearNamedFramebufferfv
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @buffer@.
+  -> GLint -- ^ @drawbuffer@.
+  -> Ptr GLfloat -- ^ @value@.
+  -> m ()
+glClearNamedFramebufferfv v1 v2 v3 v4 = liftIO $ dyn89 ptr_glClearNamedFramebufferfv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glClearNamedFramebufferfv #-}
+ptr_glClearNamedFramebufferfv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+ptr_glClearNamedFramebufferfv = unsafePerformIO $ getCommand "glClearNamedFramebufferfv"
+
 -- glClearNamedFramebufferiv ---------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>.
@@ -133,7 +203,7 @@
   -> GLint -- ^ @drawbuffer@.
   -> Ptr GLint -- ^ @value@.
   -> m ()
-glClearNamedFramebufferiv v1 v2 v3 v4 = liftIO $ dyn87 ptr_glClearNamedFramebufferiv v1 v2 v3 v4
+glClearNamedFramebufferiv v1 v2 v3 v4 = liftIO $ dyn90 ptr_glClearNamedFramebufferiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearNamedFramebufferiv #-}
 ptr_glClearNamedFramebufferiv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
@@ -149,7 +219,7 @@
   -> GLint -- ^ @drawbuffer@.
   -> Ptr GLuint -- ^ @value@.
   -> m ()
-glClearNamedFramebufferuiv v1 v2 v3 v4 = liftIO $ dyn88 ptr_glClearNamedFramebufferuiv v1 v2 v3 v4
+glClearNamedFramebufferuiv v1 v2 v3 v4 = liftIO $ dyn91 ptr_glClearNamedFramebufferuiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glClearNamedFramebufferuiv #-}
 ptr_glClearNamedFramebufferuiv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
@@ -163,7 +233,7 @@
   -> GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @values@.
   -> m ()
-glClearPixelLocalStorageuiEXT v1 v2 v3 = liftIO $ dyn89 ptr_glClearPixelLocalStorageuiEXT v1 v2 v3
+glClearPixelLocalStorageuiEXT v1 v2 v3 = liftIO $ dyn92 ptr_glClearPixelLocalStorageuiEXT v1 v2 v3
 
 {-# NOINLINE ptr_glClearPixelLocalStorageuiEXT #-}
 ptr_glClearPixelLocalStorageuiEXT :: FunPtr (GLsizei -> GLsizei -> Ptr GLuint -> IO ())
@@ -176,7 +246,7 @@
   :: MonadIO m
   => GLint -- ^ @s@ of type @StencilValue@.
   -> m ()
-glClearStencil v1 = liftIO $ dyn12 ptr_glClearStencil v1
+glClearStencil v1 = liftIO $ dyn13 ptr_glClearStencil v1
 
 {-# NOINLINE ptr_glClearStencil #-}
 ptr_glClearStencil :: FunPtr (GLint -> IO ())
@@ -193,7 +263,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearTexImage v1 v2 v3 v4 v5 = liftIO $ dyn90 ptr_glClearTexImage v1 v2 v3 v4 v5
+glClearTexImage v1 v2 v3 v4 v5 = liftIO $ dyn93 ptr_glClearTexImage v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glClearTexImage #-}
 ptr_glClearTexImage :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -210,7 +280,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearTexImageEXT v1 v2 v3 v4 v5 = liftIO $ dyn90 ptr_glClearTexImageEXT v1 v2 v3 v4 v5
+glClearTexImageEXT v1 v2 v3 v4 v5 = liftIO $ dyn93 ptr_glClearTexImageEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glClearTexImageEXT #-}
 ptr_glClearTexImageEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -233,7 +303,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn91 ptr_glClearTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glClearTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn94 ptr_glClearTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glClearTexSubImage #-}
 ptr_glClearTexSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -256,7 +326,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
   -> m ()
-glClearTexSubImageEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn91 ptr_glClearTexSubImageEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glClearTexSubImageEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn94 ptr_glClearTexSubImageEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glClearTexSubImageEXT #-}
 ptr_glClearTexSubImageEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -269,7 +339,7 @@
   :: MonadIO m
   => GLenum -- ^ @texture@ of type @TextureUnit@.
   -> m ()
-glClientActiveTexture v1 = liftIO $ dyn4 ptr_glClientActiveTexture v1
+glClientActiveTexture v1 = liftIO $ dyn5 ptr_glClientActiveTexture v1
 
 {-# NOINLINE ptr_glClientActiveTexture #-}
 ptr_glClientActiveTexture :: FunPtr (GLenum -> IO ())
@@ -282,7 +352,7 @@
   :: MonadIO m
   => GLenum -- ^ @texture@ of type @TextureUnit@.
   -> m ()
-glClientActiveTextureARB v1 = liftIO $ dyn4 ptr_glClientActiveTextureARB v1
+glClientActiveTextureARB v1 = liftIO $ dyn5 ptr_glClientActiveTextureARB v1
 
 {-# NOINLINE ptr_glClientActiveTextureARB #-}
 ptr_glClientActiveTextureARB :: FunPtr (GLenum -> IO ())
@@ -294,7 +364,7 @@
   :: MonadIO m
   => GLenum -- ^ @stream@ of type @VertexStreamATI@.
   -> m ()
-glClientActiveVertexStreamATI v1 = liftIO $ dyn4 ptr_glClientActiveVertexStreamATI v1
+glClientActiveVertexStreamATI v1 = liftIO $ dyn5 ptr_glClientActiveVertexStreamATI v1
 
 {-# NOINLINE ptr_glClientActiveVertexStreamATI #-}
 ptr_glClientActiveVertexStreamATI :: FunPtr (GLenum -> IO ())
@@ -306,7 +376,7 @@
   :: MonadIO m
   => GLbitfield -- ^ @mask@ of type [ClientAttribMask](Graphics-GL-Groups.html#ClientAttribMask).
   -> m ()
-glClientAttribDefaultEXT v1 = liftIO $ dyn69 ptr_glClientAttribDefaultEXT v1
+glClientAttribDefaultEXT v1 = liftIO $ dyn72 ptr_glClientAttribDefaultEXT v1
 
 {-# NOINLINE ptr_glClientAttribDefaultEXT #-}
 ptr_glClientAttribDefaultEXT :: FunPtr (GLbitfield -> IO ())
@@ -321,7 +391,7 @@
   -> GLbitfield -- ^ @flags@.
   -> GLuint64 -- ^ @timeout@.
   -> m GLenum
-glClientWaitSync v1 v2 v3 = liftIO $ dyn92 ptr_glClientWaitSync v1 v2 v3
+glClientWaitSync v1 v2 v3 = liftIO $ dyn95 ptr_glClientWaitSync v1 v2 v3
 
 {-# NOINLINE ptr_glClientWaitSync #-}
 ptr_glClientWaitSync :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
@@ -336,7 +406,7 @@
   -> GLbitfield -- ^ @flags@.
   -> GLuint64 -- ^ @timeout@.
   -> m GLenum
-glClientWaitSyncAPPLE v1 v2 v3 = liftIO $ dyn92 ptr_glClientWaitSyncAPPLE v1 v2 v3
+glClientWaitSyncAPPLE v1 v2 v3 = liftIO $ dyn95 ptr_glClientWaitSyncAPPLE v1 v2 v3
 
 {-# NOINLINE ptr_glClientWaitSyncAPPLE #-}
 ptr_glClientWaitSyncAPPLE :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
@@ -350,7 +420,7 @@
   => GLenum -- ^ @origin@.
   -> GLenum -- ^ @depth@.
   -> m ()
-glClipControl v1 v2 = liftIO $ dyn51 ptr_glClipControl v1 v2
+glClipControl v1 v2 = liftIO $ dyn52 ptr_glClipControl v1 v2
 
 {-# NOINLINE ptr_glClipControl #-}
 ptr_glClipControl :: FunPtr (GLenum -> GLenum -> IO ())
@@ -364,7 +434,7 @@
   => GLenum -- ^ @plane@ of type [ClipPlaneName](Graphics-GL-Groups.html#ClipPlaneName).
   -> Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glClipPlane v1 v2 = liftIO $ dyn93 ptr_glClipPlane v1 v2
+glClipPlane v1 v2 = liftIO $ dyn96 ptr_glClipPlane v1 v2
 
 {-# NOINLINE ptr_glClipPlane #-}
 ptr_glClipPlane :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
@@ -377,7 +447,7 @@
   => GLenum -- ^ @p@.
   -> Ptr GLfloat -- ^ @eqn@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glClipPlanef v1 v2 = liftIO $ dyn94 ptr_glClipPlanef v1 v2
+glClipPlanef v1 v2 = liftIO $ dyn97 ptr_glClipPlanef v1 v2
 
 {-# NOINLINE ptr_glClipPlanef #-}
 ptr_glClipPlanef :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -390,7 +460,7 @@
   => GLenum -- ^ @p@.
   -> Ptr GLfloat -- ^ @eqn@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glClipPlanefIMG v1 v2 = liftIO $ dyn94 ptr_glClipPlanefIMG v1 v2
+glClipPlanefIMG v1 v2 = liftIO $ dyn97 ptr_glClipPlanefIMG v1 v2
 
 {-# NOINLINE ptr_glClipPlanefIMG #-}
 ptr_glClipPlanefIMG :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -403,7 +473,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glClipPlanefOES v1 v2 = liftIO $ dyn94 ptr_glClipPlanefOES v1 v2
+glClipPlanefOES v1 v2 = liftIO $ dyn97 ptr_glClipPlanefOES v1 v2
 
 {-# NOINLINE ptr_glClipPlanefOES #-}
 ptr_glClipPlanefOES :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -416,7 +486,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glClipPlanex v1 v2 = liftIO $ dyn95 ptr_glClipPlanex v1 v2
+glClipPlanex v1 v2 = liftIO $ dyn98 ptr_glClipPlanex v1 v2
 
 {-# NOINLINE ptr_glClipPlanex #-}
 ptr_glClipPlanex :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -429,7 +499,7 @@
   => GLenum -- ^ @p@.
   -> Ptr GLfixed -- ^ @eqn@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glClipPlanexIMG v1 v2 = liftIO $ dyn95 ptr_glClipPlanexIMG v1 v2
+glClipPlanexIMG v1 v2 = liftIO $ dyn98 ptr_glClipPlanexIMG v1 v2
 
 {-# NOINLINE ptr_glClipPlanexIMG #-}
 ptr_glClipPlanexIMG :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -442,7 +512,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glClipPlanexOES v1 v2 = liftIO $ dyn95 ptr_glClipPlanexOES v1 v2
+glClipPlanexOES v1 v2 = liftIO $ dyn98 ptr_glClipPlanexOES v1 v2
 
 {-# NOINLINE ptr_glClipPlanexOES #-}
 ptr_glClipPlanexOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -457,7 +527,7 @@
   -> GLbyte -- ^ @green@ of type @ColorB@.
   -> GLbyte -- ^ @blue@ of type @ColorB@.
   -> m ()
-glColor3b v1 v2 v3 = liftIO $ dyn36 ptr_glColor3b v1 v2 v3
+glColor3b v1 v2 v3 = liftIO $ dyn37 ptr_glColor3b v1 v2 v3
 
 {-# NOINLINE ptr_glColor3b #-}
 ptr_glColor3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
@@ -470,7 +540,7 @@
   :: MonadIO m
   => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
   -> m ()
-glColor3bv v1 = liftIO $ dyn37 ptr_glColor3bv v1
+glColor3bv v1 = liftIO $ dyn38 ptr_glColor3bv v1
 
 {-# NOINLINE ptr_glColor3bv #-}
 ptr_glColor3bv :: FunPtr (Ptr GLbyte -> IO ())
@@ -485,7 +555,7 @@
   -> GLdouble -- ^ @green@ of type @ColorD@.
   -> GLdouble -- ^ @blue@ of type @ColorD@.
   -> m ()
-glColor3d v1 v2 v3 = liftIO $ dyn38 ptr_glColor3d v1 v2 v3
+glColor3d v1 v2 v3 = liftIO $ dyn39 ptr_glColor3d v1 v2 v3
 
 {-# NOINLINE ptr_glColor3d #-}
 ptr_glColor3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
@@ -498,7 +568,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
   -> m ()
-glColor3dv v1 = liftIO $ dyn39 ptr_glColor3dv v1
+glColor3dv v1 = liftIO $ dyn40 ptr_glColor3dv v1
 
 {-# NOINLINE ptr_glColor3dv #-}
 ptr_glColor3dv :: FunPtr (Ptr GLdouble -> IO ())
@@ -513,7 +583,7 @@
   -> GLfloat -- ^ @green@ of type @ColorF@.
   -> GLfloat -- ^ @blue@ of type @ColorF@.
   -> m ()
-glColor3f v1 v2 v3 = liftIO $ dyn40 ptr_glColor3f v1 v2 v3
+glColor3f v1 v2 v3 = liftIO $ dyn41 ptr_glColor3f v1 v2 v3
 
 {-# NOINLINE ptr_glColor3f #-}
 ptr_glColor3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -530,7 +600,7 @@
   -> GLfloat -- ^ @y@.
   -> GLfloat -- ^ @z@.
   -> m ()
-glColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glColor3fVertex3fSUN v1 v2 v3 v4 v5 v6
+glColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glColor3fVertex3fSUN v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColor3fVertex3fSUN #-}
 ptr_glColor3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -543,7 +613,7 @@
   => Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
   -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
   -> m ()
-glColor3fVertex3fvSUN v1 v2 = liftIO $ dyn97 ptr_glColor3fVertex3fvSUN v1 v2
+glColor3fVertex3fvSUN v1 v2 = liftIO $ dyn100 ptr_glColor3fVertex3fvSUN v1 v2
 
 {-# NOINLINE ptr_glColor3fVertex3fvSUN #-}
 ptr_glColor3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
@@ -556,7 +626,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
   -> m ()
-glColor3fv v1 = liftIO $ dyn41 ptr_glColor3fv v1
+glColor3fv v1 = liftIO $ dyn42 ptr_glColor3fv v1
 
 {-# NOINLINE ptr_glColor3fv #-}
 ptr_glColor3fv :: FunPtr (Ptr GLfloat -> IO ())
@@ -571,7 +641,7 @@
   -> GLhalfNV -- ^ @green@ of type @Half16NV@.
   -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
   -> m ()
-glColor3hNV v1 v2 v3 = liftIO $ dyn98 ptr_glColor3hNV v1 v2 v3
+glColor3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glColor3hNV v1 v2 v3
 
 {-# NOINLINE ptr_glColor3hNV #-}
 ptr_glColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
@@ -583,7 +653,7 @@
   :: MonadIO m
   => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
   -> m ()
-glColor3hvNV v1 = liftIO $ dyn99 ptr_glColor3hvNV v1
+glColor3hvNV v1 = liftIO $ dyn102 ptr_glColor3hvNV v1
 
 {-# NOINLINE ptr_glColor3hvNV #-}
 ptr_glColor3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
@@ -598,7 +668,7 @@
   -> GLint -- ^ @green@ of type @ColorI@.
   -> GLint -- ^ @blue@ of type @ColorI@.
   -> m ()
-glColor3i v1 v2 v3 = liftIO $ dyn42 ptr_glColor3i v1 v2 v3
+glColor3i v1 v2 v3 = liftIO $ dyn43 ptr_glColor3i v1 v2 v3
 
 {-# NOINLINE ptr_glColor3i #-}
 ptr_glColor3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
@@ -611,7 +681,7 @@
   :: MonadIO m
   => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
   -> m ()
-glColor3iv v1 = liftIO $ dyn43 ptr_glColor3iv v1
+glColor3iv v1 = liftIO $ dyn44 ptr_glColor3iv v1
 
 {-# NOINLINE ptr_glColor3iv #-}
 ptr_glColor3iv :: FunPtr (Ptr GLint -> IO ())
@@ -626,7 +696,7 @@
   -> GLshort -- ^ @green@ of type @ColorS@.
   -> GLshort -- ^ @blue@ of type @ColorS@.
   -> m ()
-glColor3s v1 v2 v3 = liftIO $ dyn44 ptr_glColor3s v1 v2 v3
+glColor3s v1 v2 v3 = liftIO $ dyn45 ptr_glColor3s v1 v2 v3
 
 {-# NOINLINE ptr_glColor3s #-}
 ptr_glColor3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
@@ -639,7 +709,7 @@
   :: MonadIO m
   => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
   -> m ()
-glColor3sv v1 = liftIO $ dyn45 ptr_glColor3sv v1
+glColor3sv v1 = liftIO $ dyn46 ptr_glColor3sv v1
 
 {-# NOINLINE ptr_glColor3sv #-}
 ptr_glColor3sv :: FunPtr (Ptr GLshort -> IO ())
@@ -654,7 +724,7 @@
   -> GLubyte -- ^ @green@ of type @ColorUB@.
   -> GLubyte -- ^ @blue@ of type @ColorUB@.
   -> m ()
-glColor3ub v1 v2 v3 = liftIO $ dyn100 ptr_glColor3ub v1 v2 v3
+glColor3ub v1 v2 v3 = liftIO $ dyn103 ptr_glColor3ub v1 v2 v3
 
 {-# NOINLINE ptr_glColor3ub #-}
 ptr_glColor3ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
@@ -667,7 +737,7 @@
   :: MonadIO m
   => Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
   -> m ()
-glColor3ubv v1 = liftIO $ dyn101 ptr_glColor3ubv v1
+glColor3ubv v1 = liftIO $ dyn104 ptr_glColor3ubv v1
 
 {-# NOINLINE ptr_glColor3ubv #-}
 ptr_glColor3ubv :: FunPtr (Ptr GLubyte -> IO ())
@@ -682,7 +752,7 @@
   -> GLuint -- ^ @green@ of type @ColorUI@.
   -> GLuint -- ^ @blue@ of type @ColorUI@.
   -> m ()
-glColor3ui v1 v2 v3 = liftIO $ dyn102 ptr_glColor3ui v1 v2 v3
+glColor3ui v1 v2 v3 = liftIO $ dyn105 ptr_glColor3ui v1 v2 v3
 
 {-# NOINLINE ptr_glColor3ui #-}
 ptr_glColor3ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
@@ -695,7 +765,7 @@
   :: MonadIO m
   => Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
   -> m ()
-glColor3uiv v1 = liftIO $ dyn103 ptr_glColor3uiv v1
+glColor3uiv v1 = liftIO $ dyn106 ptr_glColor3uiv v1
 
 {-# NOINLINE ptr_glColor3uiv #-}
 ptr_glColor3uiv :: FunPtr (Ptr GLuint -> IO ())
@@ -710,7 +780,7 @@
   -> GLushort -- ^ @green@ of type @ColorUS@.
   -> GLushort -- ^ @blue@ of type @ColorUS@.
   -> m ()
-glColor3us v1 v2 v3 = liftIO $ dyn104 ptr_glColor3us v1 v2 v3
+glColor3us v1 v2 v3 = liftIO $ dyn107 ptr_glColor3us v1 v2 v3
 
 {-# NOINLINE ptr_glColor3us #-}
 ptr_glColor3us :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
@@ -723,7 +793,7 @@
   :: MonadIO m
   => Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
   -> m ()
-glColor3usv v1 = liftIO $ dyn105 ptr_glColor3usv v1
+glColor3usv v1 = liftIO $ dyn108 ptr_glColor3usv v1
 
 {-# NOINLINE ptr_glColor3usv #-}
 ptr_glColor3usv :: FunPtr (Ptr GLushort -> IO ())
@@ -737,7 +807,7 @@
   -> GLfixed -- ^ @green@.
   -> GLfixed -- ^ @blue@.
   -> m ()
-glColor3xOES v1 v2 v3 = liftIO $ dyn106 ptr_glColor3xOES v1 v2 v3
+glColor3xOES v1 v2 v3 = liftIO $ dyn109 ptr_glColor3xOES v1 v2 v3
 
 {-# NOINLINE ptr_glColor3xOES #-}
 ptr_glColor3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -749,7 +819,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @components@ pointing to @3@ elements of type @GLfixed@.
   -> m ()
-glColor3xvOES v1 = liftIO $ dyn107 ptr_glColor3xvOES v1
+glColor3xvOES v1 = liftIO $ dyn110 ptr_glColor3xvOES v1
 
 {-# NOINLINE ptr_glColor3xvOES #-}
 ptr_glColor3xvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -765,7 +835,7 @@
   -> GLbyte -- ^ @blue@ of type @ColorB@.
   -> GLbyte -- ^ @alpha@ of type @ColorB@.
   -> m ()
-glColor4b v1 v2 v3 v4 = liftIO $ dyn108 ptr_glColor4b v1 v2 v3 v4
+glColor4b v1 v2 v3 v4 = liftIO $ dyn111 ptr_glColor4b v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4b #-}
 ptr_glColor4b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
@@ -778,7 +848,7 @@
   :: MonadIO m
   => Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @ColorB@.
   -> m ()
-glColor4bv v1 = liftIO $ dyn37 ptr_glColor4bv v1
+glColor4bv v1 = liftIO $ dyn38 ptr_glColor4bv v1
 
 {-# NOINLINE ptr_glColor4bv #-}
 ptr_glColor4bv :: FunPtr (Ptr GLbyte -> IO ())
@@ -794,7 +864,7 @@
   -> GLdouble -- ^ @blue@ of type @ColorD@.
   -> GLdouble -- ^ @alpha@ of type @ColorD@.
   -> m ()
-glColor4d v1 v2 v3 v4 = liftIO $ dyn109 ptr_glColor4d v1 v2 v3 v4
+glColor4d v1 v2 v3 v4 = liftIO $ dyn112 ptr_glColor4d v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4d #-}
 ptr_glColor4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
@@ -807,7 +877,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @ColorD@.
   -> m ()
-glColor4dv v1 = liftIO $ dyn39 ptr_glColor4dv v1
+glColor4dv v1 = liftIO $ dyn40 ptr_glColor4dv v1
 
 {-# NOINLINE ptr_glColor4dv #-}
 ptr_glColor4dv :: FunPtr (Ptr GLdouble -> IO ())
@@ -823,7 +893,7 @@
   -> GLfloat -- ^ @blue@ of type @ColorF@.
   -> GLfloat -- ^ @alpha@ of type @ColorF@.
   -> m ()
-glColor4f v1 v2 v3 v4 = liftIO $ dyn49 ptr_glColor4f v1 v2 v3 v4
+glColor4f v1 v2 v3 v4 = liftIO $ dyn50 ptr_glColor4f v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4f #-}
 ptr_glColor4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -844,7 +914,7 @@
   -> GLfloat -- ^ @y@.
   -> GLfloat -- ^ @z@.
   -> m ()
-glColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn110 ptr_glColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn113 ptr_glColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glColor4fNormal3fVertex3fSUN #-}
 ptr_glColor4fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -858,7 +928,7 @@
   -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
   -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
   -> m ()
-glColor4fNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn111 ptr_glColor4fNormal3fVertex3fvSUN v1 v2 v3
+glColor4fNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn114 ptr_glColor4fNormal3fVertex3fvSUN v1 v2 v3
 
 {-# NOINLINE ptr_glColor4fNormal3fVertex3fvSUN #-}
 ptr_glColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
@@ -871,7 +941,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @ColorF@.
   -> m ()
-glColor4fv v1 = liftIO $ dyn41 ptr_glColor4fv v1
+glColor4fv v1 = liftIO $ dyn42 ptr_glColor4fv v1
 
 {-# NOINLINE ptr_glColor4fv #-}
 ptr_glColor4fv :: FunPtr (Ptr GLfloat -> IO ())
@@ -887,7 +957,7 @@
   -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
   -> GLhalfNV -- ^ @alpha@ of type @Half16NV@.
   -> m ()
-glColor4hNV v1 v2 v3 v4 = liftIO $ dyn112 ptr_glColor4hNV v1 v2 v3 v4
+glColor4hNV v1 v2 v3 v4 = liftIO $ dyn115 ptr_glColor4hNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4hNV #-}
 ptr_glColor4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
@@ -899,7 +969,7 @@
   :: MonadIO m
   => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
   -> m ()
-glColor4hvNV v1 = liftIO $ dyn99 ptr_glColor4hvNV v1
+glColor4hvNV v1 = liftIO $ dyn102 ptr_glColor4hvNV v1
 
 {-# NOINLINE ptr_glColor4hvNV #-}
 ptr_glColor4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
@@ -915,7 +985,7 @@
   -> GLint -- ^ @blue@ of type @ColorI@.
   -> GLint -- ^ @alpha@ of type @ColorI@.
   -> m ()
-glColor4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glColor4i v1 v2 v3 v4
+glColor4i v1 v2 v3 v4 = liftIO $ dyn79 ptr_glColor4i v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4i #-}
 ptr_glColor4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
@@ -928,7 +998,7 @@
   :: MonadIO m
   => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @ColorI@.
   -> m ()
-glColor4iv v1 = liftIO $ dyn43 ptr_glColor4iv v1
+glColor4iv v1 = liftIO $ dyn44 ptr_glColor4iv v1
 
 {-# NOINLINE ptr_glColor4iv #-}
 ptr_glColor4iv :: FunPtr (Ptr GLint -> IO ())
@@ -944,7 +1014,7 @@
   -> GLshort -- ^ @blue@ of type @ColorS@.
   -> GLshort -- ^ @alpha@ of type @ColorS@.
   -> m ()
-glColor4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glColor4s v1 v2 v3 v4
+glColor4s v1 v2 v3 v4 = liftIO $ dyn116 ptr_glColor4s v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4s #-}
 ptr_glColor4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
@@ -957,7 +1027,7 @@
   :: MonadIO m
   => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @ColorS@.
   -> m ()
-glColor4sv v1 = liftIO $ dyn45 ptr_glColor4sv v1
+glColor4sv v1 = liftIO $ dyn46 ptr_glColor4sv v1
 
 {-# NOINLINE ptr_glColor4sv #-}
 ptr_glColor4sv :: FunPtr (Ptr GLshort -> IO ())
@@ -973,7 +1043,7 @@
   -> GLubyte -- ^ @blue@ of type @ColorUB@.
   -> GLubyte -- ^ @alpha@ of type @ColorUB@.
   -> m ()
-glColor4ub v1 v2 v3 v4 = liftIO $ dyn114 ptr_glColor4ub v1 v2 v3 v4
+glColor4ub v1 v2 v3 v4 = liftIO $ dyn117 ptr_glColor4ub v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4ub #-}
 ptr_glColor4ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
@@ -990,7 +1060,7 @@
   -> GLfloat -- ^ @x@.
   -> GLfloat -- ^ @y@.
   -> m ()
-glColor4ubVertex2fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn115 ptr_glColor4ubVertex2fSUN v1 v2 v3 v4 v5 v6
+glColor4ubVertex2fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn118 ptr_glColor4ubVertex2fSUN v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColor4ubVertex2fSUN #-}
 ptr_glColor4ubVertex2fSUN :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ())
@@ -1003,7 +1073,7 @@
   => Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
   -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
   -> m ()
-glColor4ubVertex2fvSUN v1 v2 = liftIO $ dyn116 ptr_glColor4ubVertex2fvSUN v1 v2
+glColor4ubVertex2fvSUN v1 v2 = liftIO $ dyn119 ptr_glColor4ubVertex2fvSUN v1 v2
 
 {-# NOINLINE ptr_glColor4ubVertex2fvSUN #-}
 ptr_glColor4ubVertex2fvSUN :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
@@ -1021,7 +1091,7 @@
   -> GLfloat -- ^ @y@.
   -> GLfloat -- ^ @z@.
   -> m ()
-glColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn117 ptr_glColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7
+glColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn120 ptr_glColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glColor4ubVertex3fSUN #-}
 ptr_glColor4ubVertex3fSUN :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1034,7 +1104,7 @@
   => Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
   -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
   -> m ()
-glColor4ubVertex3fvSUN v1 v2 = liftIO $ dyn116 ptr_glColor4ubVertex3fvSUN v1 v2
+glColor4ubVertex3fvSUN v1 v2 = liftIO $ dyn119 ptr_glColor4ubVertex3fvSUN v1 v2
 
 {-# NOINLINE ptr_glColor4ubVertex3fvSUN #-}
 ptr_glColor4ubVertex3fvSUN :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
@@ -1047,7 +1117,7 @@
   :: MonadIO m
   => Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @ColorUB@.
   -> m ()
-glColor4ubv v1 = liftIO $ dyn101 ptr_glColor4ubv v1
+glColor4ubv v1 = liftIO $ dyn104 ptr_glColor4ubv v1
 
 {-# NOINLINE ptr_glColor4ubv #-}
 ptr_glColor4ubv :: FunPtr (Ptr GLubyte -> IO ())
@@ -1063,7 +1133,7 @@
   -> GLuint -- ^ @blue@ of type @ColorUI@.
   -> GLuint -- ^ @alpha@ of type @ColorUI@.
   -> m ()
-glColor4ui v1 v2 v3 v4 = liftIO $ dyn77 ptr_glColor4ui v1 v2 v3 v4
+glColor4ui v1 v2 v3 v4 = liftIO $ dyn80 ptr_glColor4ui v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4ui #-}
 ptr_glColor4ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -1076,7 +1146,7 @@
   :: MonadIO m
   => Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @ColorUI@.
   -> m ()
-glColor4uiv v1 = liftIO $ dyn103 ptr_glColor4uiv v1
+glColor4uiv v1 = liftIO $ dyn106 ptr_glColor4uiv v1
 
 {-# NOINLINE ptr_glColor4uiv #-}
 ptr_glColor4uiv :: FunPtr (Ptr GLuint -> IO ())
@@ -1092,7 +1162,7 @@
   -> GLushort -- ^ @blue@ of type @ColorUS@.
   -> GLushort -- ^ @alpha@ of type @ColorUS@.
   -> m ()
-glColor4us v1 v2 v3 v4 = liftIO $ dyn118 ptr_glColor4us v1 v2 v3 v4
+glColor4us v1 v2 v3 v4 = liftIO $ dyn121 ptr_glColor4us v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4us #-}
 ptr_glColor4us :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
@@ -1105,7 +1175,7 @@
   :: MonadIO m
   => Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @ColorUS@.
   -> m ()
-glColor4usv v1 = liftIO $ dyn105 ptr_glColor4usv v1
+glColor4usv v1 = liftIO $ dyn108 ptr_glColor4usv v1
 
 {-# NOINLINE ptr_glColor4usv #-}
 ptr_glColor4usv :: FunPtr (Ptr GLushort -> IO ())
@@ -1120,7 +1190,7 @@
   -> GLfixed -- ^ @blue@.
   -> GLfixed -- ^ @alpha@.
   -> m ()
-glColor4x v1 v2 v3 v4 = liftIO $ dyn50 ptr_glColor4x v1 v2 v3 v4
+glColor4x v1 v2 v3 v4 = liftIO $ dyn51 ptr_glColor4x v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4x #-}
 ptr_glColor4x :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1135,7 +1205,7 @@
   -> GLfixed -- ^ @blue@.
   -> GLfixed -- ^ @alpha@.
   -> m ()
-glColor4xOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glColor4xOES v1 v2 v3 v4
+glColor4xOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glColor4xOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColor4xOES #-}
 ptr_glColor4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1147,7 +1217,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @components@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glColor4xvOES v1 = liftIO $ dyn107 ptr_glColor4xvOES v1
+glColor4xvOES v1 = liftIO $ dyn110 ptr_glColor4xvOES v1
 
 {-# NOINLINE ptr_glColor4xvOES #-}
 ptr_glColor4xvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -1161,7 +1231,7 @@
   -> GLenum -- ^ @type@.
   -> GLsizei -- ^ @stride@.
   -> m ()
-glColorFormatNV v1 v2 v3 = liftIO $ dyn119 ptr_glColorFormatNV v1 v2 v3
+glColorFormatNV v1 v2 v3 = liftIO $ dyn122 ptr_glColorFormatNV v1 v2 v3
 
 {-# NOINLINE ptr_glColorFormatNV #-}
 ptr_glColorFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
@@ -1179,7 +1249,7 @@
   -> GLuint -- ^ @arg1Rep@.
   -> GLuint -- ^ @arg1Mod@.
   -> m ()
-glColorFragmentOp1ATI v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn120 ptr_glColorFragmentOp1ATI v1 v2 v3 v4 v5 v6 v7
+glColorFragmentOp1ATI v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn123 ptr_glColorFragmentOp1ATI v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glColorFragmentOp1ATI #-}
 ptr_glColorFragmentOp1ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -1200,7 +1270,7 @@
   -> GLuint -- ^ @arg2Rep@.
   -> GLuint -- ^ @arg2Mod@.
   -> m ()
-glColorFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn121 ptr_glColorFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glColorFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn124 ptr_glColorFragmentOp2ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glColorFragmentOp2ATI #-}
 ptr_glColorFragmentOp2ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -1224,7 +1294,7 @@
   -> GLuint -- ^ @arg3Rep@.
   -> GLuint -- ^ @arg3Mod@.
   -> m ()
-glColorFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn122 ptr_glColorFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
+glColorFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn125 ptr_glColorFragmentOp3ATI v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
 
 {-# NOINLINE ptr_glColorFragmentOp3ATI #-}
 ptr_glColorFragmentOp3ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -1240,7 +1310,7 @@
   -> GLboolean -- ^ @blue@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> GLboolean -- ^ @alpha@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glColorMask v1 v2 v3 v4 = liftIO $ dyn123 ptr_glColorMask v1 v2 v3 v4
+glColorMask v1 v2 v3 v4 = liftIO $ dyn126 ptr_glColorMask v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColorMask #-}
 ptr_glColorMask :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
@@ -1257,7 +1327,7 @@
   -> GLboolean -- ^ @b@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> GLboolean -- ^ @a@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glColorMaskIndexedEXT v1 v2 v3 v4 v5 = liftIO $ dyn124 ptr_glColorMaskIndexedEXT v1 v2 v3 v4 v5
+glColorMaskIndexedEXT v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glColorMaskIndexedEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorMaskIndexedEXT #-}
 ptr_glColorMaskIndexedEXT :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
@@ -1274,7 +1344,7 @@
   -> GLboolean -- ^ @b@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> GLboolean -- ^ @a@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glColorMaski v1 v2 v3 v4 v5 = liftIO $ dyn124 ptr_glColorMaski v1 v2 v3 v4 v5
+glColorMaski v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glColorMaski v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorMaski #-}
 ptr_glColorMaski :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
@@ -1291,7 +1361,7 @@
   -> GLboolean -- ^ @b@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> GLboolean -- ^ @a@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glColorMaskiEXT v1 v2 v3 v4 v5 = liftIO $ dyn124 ptr_glColorMaskiEXT v1 v2 v3 v4 v5
+glColorMaskiEXT v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glColorMaskiEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorMaskiEXT #-}
 ptr_glColorMaskiEXT :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
@@ -1308,7 +1378,7 @@
   -> GLboolean -- ^ @b@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> GLboolean -- ^ @a@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glColorMaskiOES v1 v2 v3 v4 v5 = liftIO $ dyn124 ptr_glColorMaskiOES v1 v2 v3 v4 v5
+glColorMaskiOES v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glColorMaskiOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorMaskiOES #-}
 ptr_glColorMaskiOES :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
@@ -1322,7 +1392,7 @@
   => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
   -> GLenum -- ^ @mode@ of type [ColorMaterialParameter](Graphics-GL-Groups.html#ColorMaterialParameter).
   -> m ()
-glColorMaterial v1 v2 = liftIO $ dyn51 ptr_glColorMaterial v1 v2
+glColorMaterial v1 v2 = liftIO $ dyn52 ptr_glColorMaterial v1 v2
 
 {-# NOINLINE ptr_glColorMaterial #-}
 ptr_glColorMaterial :: FunPtr (GLenum -> GLenum -> IO ())
@@ -1335,7 +1405,7 @@
   => GLenum -- ^ @type@.
   -> GLuint -- ^ @color@.
   -> m ()
-glColorP3ui v1 v2 = liftIO $ dyn16 ptr_glColorP3ui v1 v2
+glColorP3ui v1 v2 = liftIO $ dyn17 ptr_glColorP3ui v1 v2
 
 {-# NOINLINE ptr_glColorP3ui #-}
 ptr_glColorP3ui :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1348,7 +1418,7 @@
   => GLenum -- ^ @type@.
   -> Ptr GLuint -- ^ @color@ pointing to @1@ element of type @GLuint@.
   -> m ()
-glColorP3uiv v1 v2 = liftIO $ dyn125 ptr_glColorP3uiv v1 v2
+glColorP3uiv v1 v2 = liftIO $ dyn128 ptr_glColorP3uiv v1 v2
 
 {-# NOINLINE ptr_glColorP3uiv #-}
 ptr_glColorP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
@@ -1361,7 +1431,7 @@
   => GLenum -- ^ @type@.
   -> GLuint -- ^ @color@.
   -> m ()
-glColorP4ui v1 v2 = liftIO $ dyn16 ptr_glColorP4ui v1 v2
+glColorP4ui v1 v2 = liftIO $ dyn17 ptr_glColorP4ui v1 v2
 
 {-# NOINLINE ptr_glColorP4ui #-}
 ptr_glColorP4ui :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1374,7 +1444,7 @@
   => GLenum -- ^ @type@.
   -> Ptr GLuint -- ^ @color@ pointing to @1@ element of type @GLuint@.
   -> m ()
-glColorP4uiv v1 v2 = liftIO $ dyn125 ptr_glColorP4uiv v1 v2
+glColorP4uiv v1 v2 = liftIO $ dyn128 ptr_glColorP4uiv v1 v2
 
 {-# NOINLINE ptr_glColorP4uiv #-}
 ptr_glColorP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
@@ -1390,7 +1460,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
   -> m ()
-glColorPointer v1 v2 v3 v4 = liftIO $ dyn126 ptr_glColorPointer v1 v2 v3 v4
+glColorPointer v1 v2 v3 v4 = liftIO $ dyn129 ptr_glColorPointer v1 v2 v3 v4
 
 {-# NOINLINE ptr_glColorPointer #-}
 ptr_glColorPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1406,7 +1476,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
   -> m ()
-glColorPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glColorPointerEXT v1 v2 v3 v4 v5
+glColorPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn130 ptr_glColorPointerEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorPointerEXT #-}
 ptr_glColorPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
@@ -1422,7 +1492,7 @@
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
   -> GLint -- ^ @ptrstride@.
   -> m ()
-glColorPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn128 ptr_glColorPointerListIBM v1 v2 v3 v4 v5
+glColorPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn131 ptr_glColorPointerListIBM v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glColorPointerListIBM #-}
 ptr_glColorPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
@@ -1436,7 +1506,7 @@
   -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
   -> m ()
-glColorPointervINTEL v1 v2 v3 = liftIO $ dyn129 ptr_glColorPointervINTEL v1 v2 v3
+glColorPointervINTEL v1 v2 v3 = liftIO $ dyn132 ptr_glColorPointervINTEL v1 v2 v3
 
 {-# NOINLINE ptr_glColorPointervINTEL #-}
 ptr_glColorPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -1454,7 +1524,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type,count)@ elements of type @a@.
   -> m ()
-glColorSubTable v1 v2 v3 v4 v5 v6 = liftIO $ dyn130 ptr_glColorSubTable v1 v2 v3 v4 v5 v6
+glColorSubTable v1 v2 v3 v4 v5 v6 = liftIO $ dyn133 ptr_glColorSubTable v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColorSubTable #-}
 ptr_glColorSubTable :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1472,7 +1542,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type,count)@ elements of type @a@.
   -> m ()
-glColorSubTableEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn130 ptr_glColorSubTableEXT v1 v2 v3 v4 v5 v6
+glColorSubTableEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn133 ptr_glColorSubTableEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColorSubTableEXT #-}
 ptr_glColorSubTableEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1490,7 +1560,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
   -> m ()
-glColorTable v1 v2 v3 v4 v5 v6 = liftIO $ dyn131 ptr_glColorTable v1 v2 v3 v4 v5 v6
+glColorTable v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glColorTable v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColorTable #-}
 ptr_glColorTable :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1508,7 +1578,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
   -> m ()
-glColorTableEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn131 ptr_glColorTableEXT v1 v2 v3 v4 v5 v6
+glColorTableEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glColorTableEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glColorTableEXT #-}
 ptr_glColorTableEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1523,7 +1593,7 @@
   -> GLenum -- ^ @pname@ of type @ColorTableParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glColorTableParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glColorTableParameterfv v1 v2 v3
+glColorTableParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glColorTableParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glColorTableParameterfv #-}
 ptr_glColorTableParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1538,7 +1608,7 @@
   -> GLenum -- ^ @pname@ of type [ColorTableParameterPNameSGI](Graphics-GL-Groups.html#ColorTableParameterPNameSGI).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glColorTableParameterfvSGI v1 v2 v3 = liftIO $ dyn132 ptr_glColorTableParameterfvSGI v1 v2 v3
+glColorTableParameterfvSGI v1 v2 v3 = liftIO $ dyn135 ptr_glColorTableParameterfvSGI v1 v2 v3
 
 {-# NOINLINE ptr_glColorTableParameterfvSGI #-}
 ptr_glColorTableParameterfvSGI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1553,80 +1623,9 @@
   -> GLenum -- ^ @pname@ of type @ColorTableParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glColorTableParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glColorTableParameteriv v1 v2 v3
+glColorTableParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glColorTableParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glColorTableParameteriv #-}
 ptr_glColorTableParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
 ptr_glColorTableParameteriv = unsafePerformIO $ getCommand "glColorTableParameteriv"
-
--- glColorTableParameterivSGI --------------------------------------------------
-
--- | This command is an alias for 'glColorTableParameteriv'.
-glColorTableParameterivSGI
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [ColorTableTargetSGI](Graphics-GL-Groups.html#ColorTableTargetSGI).
-  -> GLenum -- ^ @pname@ of type [ColorTableParameterPNameSGI](Graphics-GL-Groups.html#ColorTableParameterPNameSGI).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glColorTableParameterivSGI v1 v2 v3 = liftIO $ dyn133 ptr_glColorTableParameterivSGI v1 v2 v3
-
-{-# NOINLINE ptr_glColorTableParameterivSGI #-}
-ptr_glColorTableParameterivSGI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glColorTableParameterivSGI = unsafePerformIO $ getCommand "glColorTableParameterivSGI"
-
--- glColorTableSGI -------------------------------------------------------------
-
--- | This command is an alias for 'glColorTable'.
-glColorTableSGI
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [ColorTableTargetSGI](Graphics-GL-Groups.html#ColorTableTargetSGI).
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glColorTableSGI v1 v2 v3 v4 v5 v6 = liftIO $ dyn131 ptr_glColorTableSGI v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glColorTableSGI #-}
-ptr_glColorTableSGI :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glColorTableSGI = unsafePerformIO $ getCommand "glColorTableSGI"
-
--- glCombinerInputNV -----------------------------------------------------------
-
-glCombinerInputNV
-  :: MonadIO m
-  => GLenum -- ^ @stage@ of type @CombinerStageNV@.
-  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
-  -> GLenum -- ^ @variable@ of type @CombinerVariableNV@.
-  -> GLenum -- ^ @input@ of type @CombinerRegisterNV@.
-  -> GLenum -- ^ @mapping@ of type @CombinerMappingNV@.
-  -> GLenum -- ^ @componentUsage@ of type @CombinerComponentUsageNV@.
-  -> m ()
-glCombinerInputNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glCombinerInputNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glCombinerInputNV #-}
-ptr_glCombinerInputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glCombinerInputNV = unsafePerformIO $ getCommand "glCombinerInputNV"
-
--- glCombinerOutputNV ----------------------------------------------------------
-
-glCombinerOutputNV
-  :: MonadIO m
-  => GLenum -- ^ @stage@ of type @CombinerStageNV@.
-  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
-  -> GLenum -- ^ @abOutput@ of type @CombinerRegisterNV@.
-  -> GLenum -- ^ @cdOutput@ of type @CombinerRegisterNV@.
-  -> GLenum -- ^ @sumOutput@ of type @CombinerRegisterNV@.
-  -> GLenum -- ^ @scale@ of type @CombinerScaleNV@.
-  -> GLenum -- ^ @bias@ of type @CombinerBiasNV@.
-  -> GLboolean -- ^ @abDotProduct@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLboolean -- ^ @cdDotProduct@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLboolean -- ^ @muxSum@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glCombinerOutputNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn135 ptr_glCombinerOutputNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glCombinerOutputNV #-}
-ptr_glCombinerOutputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
-ptr_glCombinerOutputNV = unsafePerformIO $ getCommand "glCombinerOutputNV"
 
diff --git a/src/Graphics/GL/Functions/F04.hs b/src/Graphics/GL/Functions/F04.hs
--- a/src/Graphics/GL/Functions/F04.hs
+++ b/src/Graphics/GL/Functions/F04.hs
@@ -15,6 +15,10 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F04 (
+  glColorTableParameterivSGI,
+  glColorTableSGI,
+  glCombinerInputNV,
+  glCombinerOutputNV,
   glCombinerParameterfNV,
   glCombinerParameterfvNV,
   glCombinerParameteriNV,
@@ -110,11 +114,7 @@
   glCopyTextureSubImage1DEXT,
   glCopyTextureSubImage2D,
   glCopyTextureSubImage2DEXT,
-  glCopyTextureSubImage3D,
-  glCopyTextureSubImage3DEXT,
-  glCoverFillPathInstancedNV,
-  glCoverFillPathNV,
-  glCoverStrokePathInstancedNV
+  glCopyTextureSubImage3D
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,77 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glColorTableParameterivSGI --------------------------------------------------
+
+-- | This command is an alias for 'glColorTableParameteriv'.
+glColorTableParameterivSGI
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [ColorTableTargetSGI](Graphics-GL-Groups.html#ColorTableTargetSGI).
+  -> GLenum -- ^ @pname@ of type [ColorTableParameterPNameSGI](Graphics-GL-Groups.html#ColorTableParameterPNameSGI).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glColorTableParameterivSGI v1 v2 v3 = liftIO $ dyn136 ptr_glColorTableParameterivSGI v1 v2 v3
+
+{-# NOINLINE ptr_glColorTableParameterivSGI #-}
+ptr_glColorTableParameterivSGI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glColorTableParameterivSGI = unsafePerformIO $ getCommand "glColorTableParameterivSGI"
+
+-- glColorTableSGI -------------------------------------------------------------
+
+-- | This command is an alias for 'glColorTable'.
+glColorTableSGI
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [ColorTableTargetSGI](Graphics-GL-Groups.html#ColorTableTargetSGI).
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glColorTableSGI v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glColorTableSGI v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glColorTableSGI #-}
+ptr_glColorTableSGI :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glColorTableSGI = unsafePerformIO $ getCommand "glColorTableSGI"
+
+-- glCombinerInputNV -----------------------------------------------------------
+
+glCombinerInputNV
+  :: MonadIO m
+  => GLenum -- ^ @stage@ of type @CombinerStageNV@.
+  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
+  -> GLenum -- ^ @variable@ of type @CombinerVariableNV@.
+  -> GLenum -- ^ @input@ of type @CombinerRegisterNV@.
+  -> GLenum -- ^ @mapping@ of type @CombinerMappingNV@.
+  -> GLenum -- ^ @componentUsage@ of type @CombinerComponentUsageNV@.
+  -> m ()
+glCombinerInputNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn137 ptr_glCombinerInputNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glCombinerInputNV #-}
+ptr_glCombinerInputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glCombinerInputNV = unsafePerformIO $ getCommand "glCombinerInputNV"
+
+-- glCombinerOutputNV ----------------------------------------------------------
+
+glCombinerOutputNV
+  :: MonadIO m
+  => GLenum -- ^ @stage@ of type @CombinerStageNV@.
+  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
+  -> GLenum -- ^ @abOutput@ of type @CombinerRegisterNV@.
+  -> GLenum -- ^ @cdOutput@ of type @CombinerRegisterNV@.
+  -> GLenum -- ^ @sumOutput@ of type @CombinerRegisterNV@.
+  -> GLenum -- ^ @scale@ of type @CombinerScaleNV@.
+  -> GLenum -- ^ @bias@ of type @CombinerBiasNV@.
+  -> GLboolean -- ^ @abDotProduct@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLboolean -- ^ @cdDotProduct@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLboolean -- ^ @muxSum@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glCombinerOutputNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn138 ptr_glCombinerOutputNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glCombinerOutputNV #-}
+ptr_glCombinerOutputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
+ptr_glCombinerOutputNV = unsafePerformIO $ getCommand "glCombinerOutputNV"
+
 -- glCombinerParameterfNV ------------------------------------------------------
 
 glCombinerParameterfNV
@@ -143,7 +214,7 @@
   => GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glCombinerParameterfvNV v1 v2 = liftIO $ dyn94 ptr_glCombinerParameterfvNV v1 v2
+glCombinerParameterfvNV v1 v2 = liftIO $ dyn97 ptr_glCombinerParameterfvNV v1 v2
 
 {-# NOINLINE ptr_glCombinerParameterfvNV #-}
 ptr_glCombinerParameterfvNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -156,7 +227,7 @@
   => GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> GLint -- ^ @param@.
   -> m ()
-glCombinerParameteriNV v1 v2 = liftIO $ dyn55 ptr_glCombinerParameteriNV v1 v2
+glCombinerParameteriNV v1 v2 = liftIO $ dyn56 ptr_glCombinerParameteriNV v1 v2
 
 {-# NOINLINE ptr_glCombinerParameteriNV #-}
 ptr_glCombinerParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
@@ -169,7 +240,7 @@
   => GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glCombinerParameterivNV v1 v2 = liftIO $ dyn136 ptr_glCombinerParameterivNV v1 v2
+glCombinerParameterivNV v1 v2 = liftIO $ dyn139 ptr_glCombinerParameterivNV v1 v2
 
 {-# NOINLINE ptr_glCombinerParameterivNV #-}
 ptr_glCombinerParameterivNV :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -183,7 +254,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glCombinerStageParameterfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glCombinerStageParameterfvNV v1 v2 v3
+glCombinerStageParameterfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glCombinerStageParameterfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glCombinerStageParameterfvNV #-}
 ptr_glCombinerStageParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -196,7 +267,7 @@
   => GLuint -- ^ @list@.
   -> GLuint -- ^ @segments@.
   -> m ()
-glCommandListSegmentsNV v1 v2 = liftIO $ dyn3 ptr_glCommandListSegmentsNV v1 v2
+glCommandListSegmentsNV v1 v2 = liftIO $ dyn4 ptr_glCommandListSegmentsNV v1 v2
 
 {-# NOINLINE ptr_glCommandListSegmentsNV #-}
 ptr_glCommandListSegmentsNV :: FunPtr (GLuint -> GLuint -> IO ())
@@ -208,7 +279,7 @@
   :: MonadIO m
   => GLuint -- ^ @list@.
   -> m ()
-glCompileCommandListNV v1 = liftIO $ dyn2 ptr_glCompileCommandListNV v1
+glCompileCommandListNV v1 = liftIO $ dyn3 ptr_glCompileCommandListNV v1
 
 {-# NOINLINE ptr_glCompileCommandListNV #-}
 ptr_glCompileCommandListNV :: FunPtr (GLuint -> IO ())
@@ -221,7 +292,7 @@
   :: MonadIO m
   => GLuint -- ^ @shader@.
   -> m ()
-glCompileShader v1 = liftIO $ dyn2 ptr_glCompileShader v1
+glCompileShader v1 = liftIO $ dyn3 ptr_glCompileShader v1
 
 {-# NOINLINE ptr_glCompileShader #-}
 ptr_glCompileShader :: FunPtr (GLuint -> IO ())
@@ -234,7 +305,7 @@
   :: MonadIO m
   => GLhandleARB -- ^ @shaderObj@ of type @handleARB@.
   -> m ()
-glCompileShaderARB v1 = liftIO $ dyn137 ptr_glCompileShaderARB v1
+glCompileShaderARB v1 = liftIO $ dyn140 ptr_glCompileShaderARB v1
 
 {-# NOINLINE ptr_glCompileShaderARB #-}
 ptr_glCompileShaderARB :: FunPtr (GLhandleARB -> IO ())
@@ -249,7 +320,7 @@
   -> Ptr (Ptr GLchar) -- ^ @path@ pointing to @count@ elements of type @Ptr GLchar@.
   -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
   -> m ()
-glCompileShaderIncludeARB v1 v2 v3 v4 = liftIO $ dyn138 ptr_glCompileShaderIncludeARB v1 v2 v3 v4
+glCompileShaderIncludeARB v1 v2 v3 v4 = liftIO $ dyn141 ptr_glCompileShaderIncludeARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glCompileShaderIncludeARB #-}
 ptr_glCompileShaderIncludeARB :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
@@ -268,7 +339,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn139 ptr_glCompressedMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn142 ptr_glCompressedMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedMultiTexImage1DEXT #-}
 ptr_glCompressedMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -288,7 +359,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn140 ptr_glCompressedMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn143 ptr_glCompressedMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedMultiTexImage2DEXT #-}
 ptr_glCompressedMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -309,7 +380,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn141 ptr_glCompressedMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glCompressedMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn144 ptr_glCompressedMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glCompressedMultiTexImage3DEXT #-}
 ptr_glCompressedMultiTexImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -328,7 +399,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn142 ptr_glCompressedMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn145 ptr_glCompressedMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedMultiTexSubImage1DEXT #-}
 ptr_glCompressedMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -349,7 +420,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn143 ptr_glCompressedMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glCompressedMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn146 ptr_glCompressedMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glCompressedMultiTexSubImage2DEXT #-}
 ptr_glCompressedMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -372,7 +443,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn144 ptr_glCompressedMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+glCompressedMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn147 ptr_glCompressedMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
 
 {-# NOINLINE ptr_glCompressedMultiTexSubImage3DEXT #-}
 ptr_glCompressedMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -391,7 +462,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn145 ptr_glCompressedTexImage1D v1 v2 v3 v4 v5 v6 v7
+glCompressedTexImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn148 ptr_glCompressedTexImage1D v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCompressedTexImage1D #-}
 ptr_glCompressedTexImage1D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -410,7 +481,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage1DARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn145 ptr_glCompressedTexImage1DARB v1 v2 v3 v4 v5 v6 v7
+glCompressedTexImage1DARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn148 ptr_glCompressedTexImage1DARB v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCompressedTexImage1DARB #-}
 ptr_glCompressedTexImage1DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -430,7 +501,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn146 ptr_glCompressedTexImage2D v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn149 ptr_glCompressedTexImage2D v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedTexImage2D #-}
 ptr_glCompressedTexImage2D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -450,7 +521,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn146 ptr_glCompressedTexImage2DARB v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedTexImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn149 ptr_glCompressedTexImage2DARB v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedTexImage2DARB #-}
 ptr_glCompressedTexImage2DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -471,7 +542,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn147 ptr_glCompressedTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn150 ptr_glCompressedTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTexImage3D #-}
 ptr_glCompressedTexImage3D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -492,7 +563,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn147 ptr_glCompressedTexImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTexImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn150 ptr_glCompressedTexImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTexImage3DARB #-}
 ptr_glCompressedTexImage3DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -500,7 +571,6 @@
 
 -- glCompressedTexImage3DOES ---------------------------------------------------
 
--- | This command is an alias for 'glCompressedTexImage3D'.
 glCompressedTexImage3DOES
   :: MonadIO m
   => GLenum -- ^ @target@.
@@ -513,7 +583,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn147 ptr_glCompressedTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn150 ptr_glCompressedTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTexImage3DOES #-}
 ptr_glCompressedTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -532,7 +602,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn148 ptr_glCompressedTexSubImage1D v1 v2 v3 v4 v5 v6 v7
+glCompressedTexSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn151 ptr_glCompressedTexSubImage1D v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCompressedTexSubImage1D #-}
 ptr_glCompressedTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -551,7 +621,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage1DARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn148 ptr_glCompressedTexSubImage1DARB v1 v2 v3 v4 v5 v6 v7
+glCompressedTexSubImage1DARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn151 ptr_glCompressedTexSubImage1DARB v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCompressedTexSubImage1DARB #-}
 ptr_glCompressedTexSubImage1DARB :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -572,7 +642,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn149 ptr_glCompressedTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn152 ptr_glCompressedTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTexSubImage2D #-}
 ptr_glCompressedTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -593,7 +663,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn149 ptr_glCompressedTexSubImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTexSubImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn152 ptr_glCompressedTexSubImage2DARB v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTexSubImage2DARB #-}
 ptr_glCompressedTexSubImage2DARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -616,7 +686,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn150 ptr_glCompressedTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glCompressedTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn153 ptr_glCompressedTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glCompressedTexSubImage3D #-}
 ptr_glCompressedTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -639,7 +709,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
   -> m ()
-glCompressedTexSubImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn150 ptr_glCompressedTexSubImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glCompressedTexSubImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn153 ptr_glCompressedTexSubImage3DARB v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glCompressedTexSubImage3DARB #-}
 ptr_glCompressedTexSubImage3DARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -647,7 +717,6 @@
 
 -- glCompressedTexSubImage3DOES ------------------------------------------------
 
--- | This command is an alias for 'glCompressedTexSubImage3D'.
 glCompressedTexSubImage3DOES
   :: MonadIO m
   => GLenum -- ^ @target@.
@@ -662,7 +731,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn150 ptr_glCompressedTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glCompressedTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn153 ptr_glCompressedTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glCompressedTexSubImage3DOES #-}
 ptr_glCompressedTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -681,7 +750,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn151 ptr_glCompressedTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn154 ptr_glCompressedTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedTextureImage1DEXT #-}
 ptr_glCompressedTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -701,7 +770,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn152 ptr_glCompressedTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn155 ptr_glCompressedTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTextureImage2DEXT #-}
 ptr_glCompressedTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -722,7 +791,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn153 ptr_glCompressedTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glCompressedTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn156 ptr_glCompressedTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glCompressedTextureImage3DEXT #-}
 ptr_glCompressedTextureImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -741,7 +810,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@.
   -> m ()
-glCompressedTextureSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn154 ptr_glCompressedTextureSubImage1D v1 v2 v3 v4 v5 v6 v7
+glCompressedTextureSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn157 ptr_glCompressedTextureSubImage1D v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCompressedTextureSubImage1D #-}
 ptr_glCompressedTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -760,7 +829,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn155 ptr_glCompressedTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCompressedTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn158 ptr_glCompressedTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCompressedTextureSubImage1DEXT #-}
 ptr_glCompressedTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -781,7 +850,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@.
   -> m ()
-glCompressedTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn156 ptr_glCompressedTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCompressedTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn159 ptr_glCompressedTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCompressedTextureSubImage2D #-}
 ptr_glCompressedTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -802,7 +871,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn157 ptr_glCompressedTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glCompressedTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn160 ptr_glCompressedTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glCompressedTextureSubImage2DEXT #-}
 ptr_glCompressedTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -825,7 +894,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @data@.
   -> m ()
-glCompressedTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn158 ptr_glCompressedTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glCompressedTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn161 ptr_glCompressedTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glCompressedTextureSubImage3D #-}
 ptr_glCompressedTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -848,7 +917,7 @@
   -> GLsizei -- ^ @imageSize@.
   -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
   -> m ()
-glCompressedTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn159 ptr_glCompressedTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+glCompressedTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn162 ptr_glCompressedTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
 
 {-# NOINLINE ptr_glCompressedTextureSubImage3DEXT #-}
 ptr_glCompressedTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -874,7 +943,7 @@
   => GLenum -- ^ @pname@.
   -> GLint -- ^ @param@.
   -> m ()
-glConservativeRasterParameteriNV v1 v2 = liftIO $ dyn55 ptr_glConservativeRasterParameteriNV v1 v2
+glConservativeRasterParameteriNV v1 v2 = liftIO $ dyn56 ptr_glConservativeRasterParameteriNV v1 v2
 
 {-# NOINLINE ptr_glConservativeRasterParameteriNV #-}
 ptr_glConservativeRasterParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
@@ -892,7 +961,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
   -> m ()
-glConvolutionFilter1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn131 ptr_glConvolutionFilter1D v1 v2 v3 v4 v5 v6
+glConvolutionFilter1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glConvolutionFilter1D v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glConvolutionFilter1D #-}
 ptr_glConvolutionFilter1D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -910,7 +979,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
   -> m ()
-glConvolutionFilter1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn131 ptr_glConvolutionFilter1DEXT v1 v2 v3 v4 v5 v6
+glConvolutionFilter1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn134 ptr_glConvolutionFilter1DEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glConvolutionFilter1DEXT #-}
 ptr_glConvolutionFilter1DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -929,7 +998,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
   -> m ()
-glConvolutionFilter2D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn160 ptr_glConvolutionFilter2D v1 v2 v3 v4 v5 v6 v7
+glConvolutionFilter2D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn163 ptr_glConvolutionFilter2D v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glConvolutionFilter2D #-}
 ptr_glConvolutionFilter2D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -948,7 +1017,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
   -> m ()
-glConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn160 ptr_glConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 v7
+glConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn163 ptr_glConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glConvolutionFilter2DEXT #-}
 ptr_glConvolutionFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -963,7 +1032,7 @@
   -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
   -> GLfloat -- ^ @params@ of type @CheckedFloat32@.
   -> m ()
-glConvolutionParameterf v1 v2 v3 = liftIO $ dyn161 ptr_glConvolutionParameterf v1 v2 v3
+glConvolutionParameterf v1 v2 v3 = liftIO $ dyn164 ptr_glConvolutionParameterf v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterf #-}
 ptr_glConvolutionParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
@@ -978,7 +1047,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> GLfloat -- ^ @params@ of type @CheckedFloat32@.
   -> m ()
-glConvolutionParameterfEXT v1 v2 v3 = liftIO $ dyn161 ptr_glConvolutionParameterfEXT v1 v2 v3
+glConvolutionParameterfEXT v1 v2 v3 = liftIO $ dyn164 ptr_glConvolutionParameterfEXT v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterfEXT #-}
 ptr_glConvolutionParameterfEXT :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
@@ -993,7 +1062,7 @@
   -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glConvolutionParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glConvolutionParameterfv v1 v2 v3
+glConvolutionParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glConvolutionParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterfv #-}
 ptr_glConvolutionParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1008,7 +1077,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glConvolutionParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glConvolutionParameterfvEXT v1 v2 v3
+glConvolutionParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glConvolutionParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterfvEXT #-}
 ptr_glConvolutionParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1023,7 +1092,7 @@
   -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
   -> GLint -- ^ @params@ of type @CheckedInt32@.
   -> m ()
-glConvolutionParameteri v1 v2 v3 = liftIO $ dyn62 ptr_glConvolutionParameteri v1 v2 v3
+glConvolutionParameteri v1 v2 v3 = liftIO $ dyn63 ptr_glConvolutionParameteri v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameteri #-}
 ptr_glConvolutionParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -1038,7 +1107,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> GLint -- ^ @params@ of type @CheckedInt32@.
   -> m ()
-glConvolutionParameteriEXT v1 v2 v3 = liftIO $ dyn62 ptr_glConvolutionParameteriEXT v1 v2 v3
+glConvolutionParameteriEXT v1 v2 v3 = liftIO $ dyn63 ptr_glConvolutionParameteriEXT v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameteriEXT #-}
 ptr_glConvolutionParameteriEXT :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -1053,7 +1122,7 @@
   -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glConvolutionParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glConvolutionParameteriv v1 v2 v3
+glConvolutionParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glConvolutionParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameteriv #-}
 ptr_glConvolutionParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1068,7 +1137,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glConvolutionParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glConvolutionParameterivEXT v1 v2 v3
+glConvolutionParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glConvolutionParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterivEXT #-}
 ptr_glConvolutionParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1082,7 +1151,7 @@
   -> GLenum -- ^ @pname@.
   -> GLfixed -- ^ @param@.
   -> m ()
-glConvolutionParameterxOES v1 v2 v3 = liftIO $ dyn162 ptr_glConvolutionParameterxOES v1 v2 v3
+glConvolutionParameterxOES v1 v2 v3 = liftIO $ dyn165 ptr_glConvolutionParameterxOES v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterxOES #-}
 ptr_glConvolutionParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
@@ -1096,7 +1165,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glConvolutionParameterxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glConvolutionParameterxvOES v1 v2 v3
+glConvolutionParameterxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glConvolutionParameterxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glConvolutionParameterxvOES #-}
 ptr_glConvolutionParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1113,7 +1182,7 @@
   -> GLintptr -- ^ @writeOffset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glCopyBufferSubData v1 v2 v3 v4 v5 = liftIO $ dyn164 ptr_glCopyBufferSubData v1 v2 v3 v4 v5
+glCopyBufferSubData v1 v2 v3 v4 v5 = liftIO $ dyn167 ptr_glCopyBufferSubData v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyBufferSubData #-}
 ptr_glCopyBufferSubData :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
@@ -1130,7 +1199,7 @@
   -> GLintptr -- ^ @writeOffset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glCopyBufferSubDataNV v1 v2 v3 v4 v5 = liftIO $ dyn164 ptr_glCopyBufferSubDataNV v1 v2 v3 v4 v5
+glCopyBufferSubDataNV v1 v2 v3 v4 v5 = liftIO $ dyn167 ptr_glCopyBufferSubDataNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyBufferSubDataNV #-}
 ptr_glCopyBufferSubDataNV :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
@@ -1147,7 +1216,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyColorSubTable v1 v2 v3 v4 v5 = liftIO $ dyn165 ptr_glCopyColorSubTable v1 v2 v3 v4 v5
+glCopyColorSubTable v1 v2 v3 v4 v5 = liftIO $ dyn168 ptr_glCopyColorSubTable v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyColorSubTable #-}
 ptr_glCopyColorSubTable :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
@@ -1164,7 +1233,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyColorSubTableEXT v1 v2 v3 v4 v5 = liftIO $ dyn165 ptr_glCopyColorSubTableEXT v1 v2 v3 v4 v5
+glCopyColorSubTableEXT v1 v2 v3 v4 v5 = liftIO $ dyn168 ptr_glCopyColorSubTableEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyColorSubTableEXT #-}
 ptr_glCopyColorSubTableEXT :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
@@ -1181,7 +1250,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyColorTable v1 v2 v3 v4 v5 = liftIO $ dyn166 ptr_glCopyColorTable v1 v2 v3 v4 v5
+glCopyColorTable v1 v2 v3 v4 v5 = liftIO $ dyn169 ptr_glCopyColorTable v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyColorTable #-}
 ptr_glCopyColorTable :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
@@ -1198,7 +1267,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyColorTableSGI v1 v2 v3 v4 v5 = liftIO $ dyn166 ptr_glCopyColorTableSGI v1 v2 v3 v4 v5
+glCopyColorTableSGI v1 v2 v3 v4 v5 = liftIO $ dyn169 ptr_glCopyColorTableSGI v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyColorTableSGI #-}
 ptr_glCopyColorTableSGI :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
@@ -1215,7 +1284,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyConvolutionFilter1D v1 v2 v3 v4 v5 = liftIO $ dyn166 ptr_glCopyConvolutionFilter1D v1 v2 v3 v4 v5
+glCopyConvolutionFilter1D v1 v2 v3 v4 v5 = liftIO $ dyn169 ptr_glCopyConvolutionFilter1D v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyConvolutionFilter1D #-}
 ptr_glCopyConvolutionFilter1D :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
@@ -1232,7 +1301,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyConvolutionFilter1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn166 ptr_glCopyConvolutionFilter1DEXT v1 v2 v3 v4 v5
+glCopyConvolutionFilter1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn169 ptr_glCopyConvolutionFilter1DEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyConvolutionFilter1DEXT #-}
 ptr_glCopyConvolutionFilter1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
@@ -1250,7 +1319,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyConvolutionFilter2D v1 v2 v3 v4 v5 v6 = liftIO $ dyn167 ptr_glCopyConvolutionFilter2D v1 v2 v3 v4 v5 v6
+glCopyConvolutionFilter2D v1 v2 v3 v4 v5 v6 = liftIO $ dyn170 ptr_glCopyConvolutionFilter2D v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glCopyConvolutionFilter2D #-}
 ptr_glCopyConvolutionFilter2D :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1268,7 +1337,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn167 ptr_glCopyConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6
+glCopyConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn170 ptr_glCopyConvolutionFilter2DEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glCopyConvolutionFilter2DEXT #-}
 ptr_glCopyConvolutionFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1295,7 +1364,7 @@
   -> GLsizei -- ^ @srcHeight@.
   -> GLsizei -- ^ @srcDepth@.
   -> m ()
-glCopyImageSubData v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn168 ptr_glCopyImageSubData v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
+glCopyImageSubData v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn171 ptr_glCopyImageSubData v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
 
 {-# NOINLINE ptr_glCopyImageSubData #-}
 ptr_glCopyImageSubData :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
@@ -1322,7 +1391,7 @@
   -> GLsizei -- ^ @srcHeight@.
   -> GLsizei -- ^ @srcDepth@.
   -> m ()
-glCopyImageSubDataEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn168 ptr_glCopyImageSubDataEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
+glCopyImageSubDataEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn171 ptr_glCopyImageSubDataEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
 
 {-# NOINLINE ptr_glCopyImageSubDataEXT #-}
 ptr_glCopyImageSubDataEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
@@ -1348,7 +1417,7 @@
   -> GLsizei -- ^ @height@.
   -> GLsizei -- ^ @depth@.
   -> m ()
-glCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn168 ptr_glCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
+glCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn171 ptr_glCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
 
 {-# NOINLINE ptr_glCopyImageSubDataNV #-}
 ptr_glCopyImageSubDataNV :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
@@ -1375,7 +1444,7 @@
   -> GLsizei -- ^ @srcHeight@.
   -> GLsizei -- ^ @srcDepth@.
   -> m ()
-glCopyImageSubDataOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn168 ptr_glCopyImageSubDataOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
+glCopyImageSubDataOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn171 ptr_glCopyImageSubDataOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
 
 {-# NOINLINE ptr_glCopyImageSubDataOES #-}
 ptr_glCopyImageSubDataOES :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
@@ -1394,7 +1463,7 @@
   -> GLsizei -- ^ @width@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn169 ptr_glCopyMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCopyMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn172 ptr_glCopyMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyMultiTexImage1DEXT #-}
 ptr_glCopyMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
@@ -1414,7 +1483,7 @@
   -> GLsizei -- ^ @height@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn170 ptr_glCopyMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn173 ptr_glCopyMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyMultiTexImage2DEXT #-}
 ptr_glCopyMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
@@ -1432,7 +1501,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn171 ptr_glCopyMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
+glCopyMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn174 ptr_glCopyMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCopyMultiTexSubImage1DEXT #-}
 ptr_glCopyMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1452,7 +1521,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn172 ptr_glCopyMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn175 ptr_glCopyMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyMultiTexSubImage2DEXT #-}
 ptr_glCopyMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1473,7 +1542,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn173 ptr_glCopyMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glCopyMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn176 ptr_glCopyMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glCopyMultiTexSubImage3DEXT #-}
 ptr_glCopyMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1490,7 +1559,7 @@
   -> GLintptr -- ^ @writeOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glCopyNamedBufferSubData v1 v2 v3 v4 v5 = liftIO $ dyn174 ptr_glCopyNamedBufferSubData v1 v2 v3 v4 v5
+glCopyNamedBufferSubData v1 v2 v3 v4 v5 = liftIO $ dyn177 ptr_glCopyNamedBufferSubData v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyNamedBufferSubData #-}
 ptr_glCopyNamedBufferSubData :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
@@ -1503,7 +1572,7 @@
   => GLuint -- ^ @resultPath@ of type @Path@.
   -> GLuint -- ^ @srcPath@ of type @Path@.
   -> m ()
-glCopyPathNV v1 v2 = liftIO $ dyn3 ptr_glCopyPathNV v1 v2
+glCopyPathNV v1 v2 = liftIO $ dyn4 ptr_glCopyPathNV v1 v2
 
 {-# NOINLINE ptr_glCopyPathNV #-}
 ptr_glCopyPathNV :: FunPtr (GLuint -> GLuint -> IO ())
@@ -1520,7 +1589,7 @@
   -> GLsizei -- ^ @height@.
   -> GLenum -- ^ @type@ of type [PixelCopyType](Graphics-GL-Groups.html#PixelCopyType).
   -> m ()
-glCopyPixels v1 v2 v3 v4 v5 = liftIO $ dyn175 ptr_glCopyPixels v1 v2 v3 v4 v5
+glCopyPixels v1 v2 v3 v4 v5 = liftIO $ dyn178 ptr_glCopyPixels v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glCopyPixels #-}
 ptr_glCopyPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
@@ -1539,7 +1608,7 @@
   -> GLsizei -- ^ @width@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTexImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn176 ptr_glCopyTexImage1D v1 v2 v3 v4 v5 v6 v7
+glCopyTexImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn179 ptr_glCopyTexImage1D v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCopyTexImage1D #-}
 ptr_glCopyTexImage1D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
@@ -1558,7 +1627,7 @@
   -> GLsizei -- ^ @width@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn176 ptr_glCopyTexImage1DEXT v1 v2 v3 v4 v5 v6 v7
+glCopyTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn179 ptr_glCopyTexImage1DEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCopyTexImage1DEXT #-}
 ptr_glCopyTexImage1DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
@@ -1578,7 +1647,7 @@
   -> GLsizei -- ^ @height@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn177 ptr_glCopyTexImage2D v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn180 ptr_glCopyTexImage2D v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTexImage2D #-}
 ptr_glCopyTexImage2D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
@@ -1598,7 +1667,7 @@
   -> GLsizei -- ^ @height@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn177 ptr_glCopyTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn180 ptr_glCopyTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTexImage2DEXT #-}
 ptr_glCopyTexImage2DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
@@ -1616,7 +1685,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyTexSubImage1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn178 ptr_glCopyTexSubImage1D v1 v2 v3 v4 v5 v6
+glCopyTexSubImage1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn181 ptr_glCopyTexSubImage1D v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glCopyTexSubImage1D #-}
 ptr_glCopyTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1634,7 +1703,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyTexSubImage1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn178 ptr_glCopyTexSubImage1DEXT v1 v2 v3 v4 v5 v6
+glCopyTexSubImage1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn181 ptr_glCopyTexSubImage1DEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glCopyTexSubImage1DEXT #-}
 ptr_glCopyTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1654,7 +1723,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn179 ptr_glCopyTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn182 ptr_glCopyTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTexSubImage2D #-}
 ptr_glCopyTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1674,7 +1743,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn179 ptr_glCopyTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn182 ptr_glCopyTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTexSubImage2DEXT #-}
 ptr_glCopyTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1695,7 +1764,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn180 ptr_glCopyTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn183 ptr_glCopyTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTexSubImage3D #-}
 ptr_glCopyTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1716,7 +1785,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn180 ptr_glCopyTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn183 ptr_glCopyTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTexSubImage3DEXT #-}
 ptr_glCopyTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1724,7 +1793,6 @@
 
 -- glCopyTexSubImage3DOES ------------------------------------------------------
 
--- | This command is an alias for 'glCopyTexSubImage3D'.
 glCopyTexSubImage3DOES
   :: MonadIO m
   => GLenum -- ^ @target@.
@@ -1737,7 +1805,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn180 ptr_glCopyTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn183 ptr_glCopyTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTexSubImage3DOES #-}
 ptr_glCopyTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1756,7 +1824,7 @@
   -> GLsizei -- ^ @width@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn181 ptr_glCopyTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn184 ptr_glCopyTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTextureImage1DEXT #-}
 ptr_glCopyTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
@@ -1776,7 +1844,7 @@
   -> GLsizei -- ^ @height@.
   -> GLint -- ^ @border@ of type @CheckedInt32@.
   -> m ()
-glCopyTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn182 ptr_glCopyTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn185 ptr_glCopyTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTextureImage2DEXT #-}
 ptr_glCopyTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
@@ -1791,7 +1859,7 @@
   -> GLint -- ^ @sourceBaseLevel@.
   -> GLsizei -- ^ @sourceLevelCount@.
   -> m ()
-glCopyTextureLevelsAPPLE v1 v2 v3 v4 = liftIO $ dyn183 ptr_glCopyTextureLevelsAPPLE v1 v2 v3 v4
+glCopyTextureLevelsAPPLE v1 v2 v3 v4 = liftIO $ dyn186 ptr_glCopyTextureLevelsAPPLE v1 v2 v3 v4
 
 {-# NOINLINE ptr_glCopyTextureLevelsAPPLE #-}
 ptr_glCopyTextureLevelsAPPLE :: FunPtr (GLuint -> GLuint -> GLint -> GLsizei -> IO ())
@@ -1809,7 +1877,7 @@
   -> GLint -- ^ @y@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyTextureSubImage1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn184 ptr_glCopyTextureSubImage1D v1 v2 v3 v4 v5 v6
+glCopyTextureSubImage1D v1 v2 v3 v4 v5 v6 = liftIO $ dyn187 ptr_glCopyTextureSubImage1D v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glCopyTextureSubImage1D #-}
 ptr_glCopyTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1827,7 +1895,7 @@
   -> GLint -- ^ @y@ of type @WinCoord@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glCopyTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn185 ptr_glCopyTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
+glCopyTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn188 ptr_glCopyTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glCopyTextureSubImage1DEXT #-}
 ptr_glCopyTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1847,7 +1915,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn186 ptr_glCopyTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8
+glCopyTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn189 ptr_glCopyTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glCopyTextureSubImage2D #-}
 ptr_glCopyTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1867,7 +1935,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn187 ptr_glCopyTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn190 ptr_glCopyTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTextureSubImage2DEXT #-}
 ptr_glCopyTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1888,79 +1956,9 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glCopyTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn188 ptr_glCopyTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
+glCopyTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn191 ptr_glCopyTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glCopyTextureSubImage3D #-}
 ptr_glCopyTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
 ptr_glCopyTextureSubImage3D = unsafePerformIO $ getCommand "glCopyTextureSubImage3D"
-
--- glCopyTextureSubImage3DEXT --------------------------------------------------
-
-glCopyTextureSubImage3DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @x@ of type @WinCoord@.
-  -> GLint -- ^ @y@ of type @WinCoord@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glCopyTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn189 ptr_glCopyTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glCopyTextureSubImage3DEXT #-}
-ptr_glCopyTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glCopyTextureSubImage3DEXT = unsafePerformIO $ getCommand "glCopyTextureSubImage3DEXT"
-
--- glCoverFillPathInstancedNV --------------------------------------------------
-
-glCoverFillPathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
-  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
-  -> GLuint -- ^ @pathBase@ of type @Path@.
-  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
-  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
-  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
-  -> m ()
-glCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn190 ptr_glCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glCoverFillPathInstancedNV #-}
-ptr_glCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glCoverFillPathInstancedNV"
-
--- glCoverFillPathNV -----------------------------------------------------------
-
-glCoverFillPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
-  -> m ()
-glCoverFillPathNV v1 v2 = liftIO $ dyn15 ptr_glCoverFillPathNV v1 v2
-
-{-# NOINLINE ptr_glCoverFillPathNV #-}
-ptr_glCoverFillPathNV :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glCoverFillPathNV = unsafePerformIO $ getCommand "glCoverFillPathNV"
-
--- glCoverStrokePathInstancedNV ------------------------------------------------
-
-glCoverStrokePathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
-  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
-  -> GLuint -- ^ @pathBase@ of type @Path@.
-  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
-  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
-  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
-  -> m ()
-glCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn190 ptr_glCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glCoverStrokePathInstancedNV #-}
-ptr_glCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glCoverStrokePathInstancedNV"
 
diff --git a/src/Graphics/GL/Functions/F05.hs b/src/Graphics/GL/Functions/F05.hs
--- a/src/Graphics/GL/Functions/F05.hs
+++ b/src/Graphics/GL/Functions/F05.hs
@@ -15,6 +15,10 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F05 (
+  glCopyTextureSubImage3DEXT,
+  glCoverFillPathInstancedNV,
+  glCoverFillPathNV,
+  glCoverStrokePathInstancedNV,
   glCoverStrokePathNV,
   glCoverageMaskNV,
   glCoverageModulationNV,
@@ -23,6 +27,7 @@
   glCreateBuffers,
   glCreateCommandListsNV,
   glCreateFramebuffers,
+  glCreateMemoryObjectsEXT,
   glCreatePerfQueryINTEL,
   glCreateProgram,
   glCreateProgramObjectARB,
@@ -71,6 +76,7 @@
   glDeleteFramebuffersEXT,
   glDeleteFramebuffersOES,
   glDeleteLists,
+  glDeleteMemoryObjectsEXT,
   glDeleteNamedStringARB,
   glDeleteNamesAMD,
   glDeleteObjectARB,
@@ -90,6 +96,7 @@
   glDeleteRenderbuffersEXT,
   glDeleteRenderbuffersOES,
   glDeleteSamplers,
+  glDeleteSemaphoresEXT,
   glDeleteShader,
   glDeleteStatesNV,
   glDeleteSync,
@@ -107,14 +114,7 @@
   glDepthFunc,
   glDepthMask,
   glDepthRange,
-  glDepthRangeArrayfvNV,
-  glDepthRangeArrayfvOES,
-  glDepthRangeArrayv,
-  glDepthRangeIndexed,
-  glDepthRangeIndexedfNV,
-  glDepthRangeIndexedfOES,
-  glDepthRangedNV,
-  glDepthRangef
+  glDepthRangeArrayfvNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,76 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glCopyTextureSubImage3DEXT --------------------------------------------------
+
+glCopyTextureSubImage3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @x@ of type @WinCoord@.
+  -> GLint -- ^ @y@ of type @WinCoord@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glCopyTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn192 ptr_glCopyTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glCopyTextureSubImage3DEXT #-}
+ptr_glCopyTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glCopyTextureSubImage3DEXT = unsafePerformIO $ getCommand "glCopyTextureSubImage3DEXT"
+
+-- glCoverFillPathInstancedNV --------------------------------------------------
+
+glCoverFillPathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
+  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
+  -> GLuint -- ^ @pathBase@ of type @Path@.
+  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
+  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
+  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
+  -> m ()
+glCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn193 ptr_glCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glCoverFillPathInstancedNV #-}
+ptr_glCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glCoverFillPathInstancedNV"
+
+-- glCoverFillPathNV -----------------------------------------------------------
+
+glCoverFillPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
+  -> m ()
+glCoverFillPathNV v1 v2 = liftIO $ dyn16 ptr_glCoverFillPathNV v1 v2
+
+{-# NOINLINE ptr_glCoverFillPathNV #-}
+ptr_glCoverFillPathNV :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glCoverFillPathNV = unsafePerformIO $ getCommand "glCoverFillPathNV"
+
+-- glCoverStrokePathInstancedNV ------------------------------------------------
+
+glCoverStrokePathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
+  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
+  -> GLuint -- ^ @pathBase@ of type @Path@.
+  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
+  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
+  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
+  -> m ()
+glCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn193 ptr_glCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glCoverStrokePathInstancedNV #-}
+ptr_glCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glCoverStrokePathInstancedNV"
+
 -- glCoverStrokePathNV ---------------------------------------------------------
 
 glCoverStrokePathNV
@@ -130,7 +200,7 @@
   => GLuint -- ^ @path@ of type @Path@.
   -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
   -> m ()
-glCoverStrokePathNV v1 v2 = liftIO $ dyn15 ptr_glCoverStrokePathNV v1 v2
+glCoverStrokePathNV v1 v2 = liftIO $ dyn16 ptr_glCoverStrokePathNV v1 v2
 
 {-# NOINLINE ptr_glCoverStrokePathNV #-}
 ptr_glCoverStrokePathNV :: FunPtr (GLuint -> GLenum -> IO ())
@@ -142,7 +212,7 @@
   :: MonadIO m
   => GLboolean -- ^ @mask@.
   -> m ()
-glCoverageMaskNV v1 = liftIO $ dyn191 ptr_glCoverageMaskNV v1
+glCoverageMaskNV v1 = liftIO $ dyn194 ptr_glCoverageMaskNV v1
 
 {-# NOINLINE ptr_glCoverageMaskNV #-}
 ptr_glCoverageMaskNV :: FunPtr (GLboolean -> IO ())
@@ -154,7 +224,7 @@
   :: MonadIO m
   => GLenum -- ^ @components@.
   -> m ()
-glCoverageModulationNV v1 = liftIO $ dyn4 ptr_glCoverageModulationNV v1
+glCoverageModulationNV v1 = liftIO $ dyn5 ptr_glCoverageModulationNV v1
 
 {-# NOINLINE ptr_glCoverageModulationNV #-}
 ptr_glCoverageModulationNV :: FunPtr (GLenum -> IO ())
@@ -167,7 +237,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glCoverageModulationTableNV v1 v2 = liftIO $ dyn192 ptr_glCoverageModulationTableNV v1 v2
+glCoverageModulationTableNV v1 v2 = liftIO $ dyn195 ptr_glCoverageModulationTableNV v1 v2
 
 {-# NOINLINE ptr_glCoverageModulationTableNV #-}
 ptr_glCoverageModulationTableNV :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
@@ -179,7 +249,7 @@
   :: MonadIO m
   => GLenum -- ^ @operation@.
   -> m ()
-glCoverageOperationNV v1 = liftIO $ dyn4 ptr_glCoverageOperationNV v1
+glCoverageOperationNV v1 = liftIO $ dyn5 ptr_glCoverageOperationNV v1
 
 {-# NOINLINE ptr_glCoverageOperationNV #-}
 ptr_glCoverageOperationNV :: FunPtr (GLenum -> IO ())
@@ -193,7 +263,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @buffers@.
   -> m ()
-glCreateBuffers v1 v2 = liftIO $ dyn193 ptr_glCreateBuffers v1 v2
+glCreateBuffers v1 v2 = liftIO $ dyn196 ptr_glCreateBuffers v1 v2
 
 {-# NOINLINE ptr_glCreateBuffers #-}
 ptr_glCreateBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -206,7 +276,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @lists@.
   -> m ()
-glCreateCommandListsNV v1 v2 = liftIO $ dyn193 ptr_glCreateCommandListsNV v1 v2
+glCreateCommandListsNV v1 v2 = liftIO $ dyn196 ptr_glCreateCommandListsNV v1 v2
 
 {-# NOINLINE ptr_glCreateCommandListsNV #-}
 ptr_glCreateCommandListsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -220,12 +290,25 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@.
   -> m ()
-glCreateFramebuffers v1 v2 = liftIO $ dyn193 ptr_glCreateFramebuffers v1 v2
+glCreateFramebuffers v1 v2 = liftIO $ dyn196 ptr_glCreateFramebuffers v1 v2
 
 {-# NOINLINE ptr_glCreateFramebuffers #-}
 ptr_glCreateFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
 ptr_glCreateFramebuffers = unsafePerformIO $ getCommand "glCreateFramebuffers"
 
+-- glCreateMemoryObjectsEXT ----------------------------------------------------
+
+glCreateMemoryObjectsEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @memoryObjects@.
+  -> m ()
+glCreateMemoryObjectsEXT v1 v2 = liftIO $ dyn196 ptr_glCreateMemoryObjectsEXT v1 v2
+
+{-# NOINLINE ptr_glCreateMemoryObjectsEXT #-}
+ptr_glCreateMemoryObjectsEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glCreateMemoryObjectsEXT = unsafePerformIO $ getCommand "glCreateMemoryObjectsEXT"
+
 -- glCreatePerfQueryINTEL ------------------------------------------------------
 
 glCreatePerfQueryINTEL
@@ -233,7 +316,7 @@
   => GLuint -- ^ @queryId@.
   -> Ptr GLuint -- ^ @queryHandle@.
   -> m ()
-glCreatePerfQueryINTEL v1 v2 = liftIO $ dyn194 ptr_glCreatePerfQueryINTEL v1 v2
+glCreatePerfQueryINTEL v1 v2 = liftIO $ dyn197 ptr_glCreatePerfQueryINTEL v1 v2
 
 {-# NOINLINE ptr_glCreatePerfQueryINTEL #-}
 ptr_glCreatePerfQueryINTEL :: FunPtr (GLuint -> Ptr GLuint -> IO ())
@@ -245,7 +328,7 @@
 glCreateProgram
   :: MonadIO m
   => m GLuint
-glCreateProgram = liftIO $ dyn195 ptr_glCreateProgram
+glCreateProgram = liftIO $ dyn198 ptr_glCreateProgram
 
 {-# NOINLINE ptr_glCreateProgram #-}
 ptr_glCreateProgram :: FunPtr (IO GLuint)
@@ -257,7 +340,7 @@
 glCreateProgramObjectARB
   :: MonadIO m
   => m GLhandleARB -- ^ of type @handleARB@.
-glCreateProgramObjectARB = liftIO $ dyn196 ptr_glCreateProgramObjectARB
+glCreateProgramObjectARB = liftIO $ dyn199 ptr_glCreateProgramObjectARB
 
 {-# NOINLINE ptr_glCreateProgramObjectARB #-}
 ptr_glCreateProgramObjectARB :: FunPtr (IO GLhandleARB)
@@ -271,7 +354,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @pipelines@.
   -> m ()
-glCreateProgramPipelines v1 v2 = liftIO $ dyn193 ptr_glCreateProgramPipelines v1 v2
+glCreateProgramPipelines v1 v2 = liftIO $ dyn196 ptr_glCreateProgramPipelines v1 v2
 
 {-# NOINLINE ptr_glCreateProgramPipelines #-}
 ptr_glCreateProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -286,7 +369,7 @@
   -> GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@.
   -> m ()
-glCreateQueries v1 v2 v3 = liftIO $ dyn197 ptr_glCreateQueries v1 v2 v3
+glCreateQueries v1 v2 v3 = liftIO $ dyn200 ptr_glCreateQueries v1 v2 v3
 
 {-# NOINLINE ptr_glCreateQueries #-}
 ptr_glCreateQueries :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
@@ -300,7 +383,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @renderbuffers@.
   -> m ()
-glCreateRenderbuffers v1 v2 = liftIO $ dyn193 ptr_glCreateRenderbuffers v1 v2
+glCreateRenderbuffers v1 v2 = liftIO $ dyn196 ptr_glCreateRenderbuffers v1 v2
 
 {-# NOINLINE ptr_glCreateRenderbuffers #-}
 ptr_glCreateRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -314,7 +397,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @samplers@.
   -> m ()
-glCreateSamplers v1 v2 = liftIO $ dyn193 ptr_glCreateSamplers v1 v2
+glCreateSamplers v1 v2 = liftIO $ dyn196 ptr_glCreateSamplers v1 v2
 
 {-# NOINLINE ptr_glCreateSamplers #-}
 ptr_glCreateSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -327,7 +410,7 @@
   :: MonadIO m
   => GLenum -- ^ @type@.
   -> m GLuint
-glCreateShader v1 = liftIO $ dyn30 ptr_glCreateShader v1
+glCreateShader v1 = liftIO $ dyn31 ptr_glCreateShader v1
 
 {-# NOINLINE ptr_glCreateShader #-}
 ptr_glCreateShader :: FunPtr (GLenum -> IO GLuint)
@@ -340,7 +423,7 @@
   :: MonadIO m
   => GLenum -- ^ @shaderType@.
   -> m GLhandleARB -- ^ of type @handleARB@.
-glCreateShaderObjectARB v1 = liftIO $ dyn198 ptr_glCreateShaderObjectARB v1
+glCreateShaderObjectARB v1 = liftIO $ dyn201 ptr_glCreateShaderObjectARB v1
 
 {-# NOINLINE ptr_glCreateShaderObjectARB #-}
 ptr_glCreateShaderObjectARB :: FunPtr (GLenum -> IO GLhandleARB)
@@ -353,7 +436,7 @@
   => GLenum -- ^ @type@.
   -> Ptr GLchar -- ^ @string@.
   -> m GLuint
-glCreateShaderProgramEXT v1 v2 = liftIO $ dyn199 ptr_glCreateShaderProgramEXT v1 v2
+glCreateShaderProgramEXT v1 v2 = liftIO $ dyn202 ptr_glCreateShaderProgramEXT v1 v2
 
 {-# NOINLINE ptr_glCreateShaderProgramEXT #-}
 ptr_glCreateShaderProgramEXT :: FunPtr (GLenum -> Ptr GLchar -> IO GLuint)
@@ -368,7 +451,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr (Ptr GLchar) -- ^ @strings@ pointing to @count@ elements of type @Ptr GLchar@.
   -> m GLuint
-glCreateShaderProgramv v1 v2 v3 = liftIO $ dyn200 ptr_glCreateShaderProgramv v1 v2 v3
+glCreateShaderProgramv v1 v2 v3 = liftIO $ dyn203 ptr_glCreateShaderProgramv v1 v2 v3
 
 {-# NOINLINE ptr_glCreateShaderProgramv #-}
 ptr_glCreateShaderProgramv :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
@@ -382,7 +465,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr (Ptr GLchar) -- ^ @strings@ pointing to @count@ elements of type @Ptr GLchar@.
   -> m GLuint
-glCreateShaderProgramvEXT v1 v2 v3 = liftIO $ dyn200 ptr_glCreateShaderProgramvEXT v1 v2 v3
+glCreateShaderProgramvEXT v1 v2 v3 = liftIO $ dyn203 ptr_glCreateShaderProgramvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glCreateShaderProgramvEXT #-}
 ptr_glCreateShaderProgramvEXT :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
@@ -395,7 +478,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @states@.
   -> m ()
-glCreateStatesNV v1 v2 = liftIO $ dyn193 ptr_glCreateStatesNV v1 v2
+glCreateStatesNV v1 v2 = liftIO $ dyn196 ptr_glCreateStatesNV v1 v2
 
 {-# NOINLINE ptr_glCreateStatesNV #-}
 ptr_glCreateStatesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -409,7 +492,7 @@
   -> Ptr b -- ^ @event@ pointing to elements of type @cl_event@.
   -> GLbitfield -- ^ @flags@.
   -> m GLsync -- ^ of type @sync@.
-glCreateSyncFromCLeventARB v1 v2 v3 = liftIO $ dyn201 ptr_glCreateSyncFromCLeventARB v1 v2 v3
+glCreateSyncFromCLeventARB v1 v2 v3 = liftIO $ dyn204 ptr_glCreateSyncFromCLeventARB v1 v2 v3
 
 {-# NOINLINE ptr_glCreateSyncFromCLeventARB #-}
 ptr_glCreateSyncFromCLeventARB :: FunPtr (Ptr a -> Ptr b -> GLbitfield -> IO GLsync)
@@ -424,7 +507,7 @@
   -> GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @textures@.
   -> m ()
-glCreateTextures v1 v2 v3 = liftIO $ dyn197 ptr_glCreateTextures v1 v2 v3
+glCreateTextures v1 v2 v3 = liftIO $ dyn200 ptr_glCreateTextures v1 v2 v3
 
 {-# NOINLINE ptr_glCreateTextures #-}
 ptr_glCreateTextures :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
@@ -438,7 +521,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@.
   -> m ()
-glCreateTransformFeedbacks v1 v2 = liftIO $ dyn193 ptr_glCreateTransformFeedbacks v1 v2
+glCreateTransformFeedbacks v1 v2 = liftIO $ dyn196 ptr_glCreateTransformFeedbacks v1 v2
 
 {-# NOINLINE ptr_glCreateTransformFeedbacks #-}
 ptr_glCreateTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -452,7 +535,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@.
   -> m ()
-glCreateVertexArrays v1 v2 = liftIO $ dyn193 ptr_glCreateVertexArrays v1 v2
+glCreateVertexArrays v1 v2 = liftIO $ dyn196 ptr_glCreateVertexArrays v1 v2
 
 {-# NOINLINE ptr_glCreateVertexArrays #-}
 ptr_glCreateVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -465,7 +548,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [CullFaceMode](Graphics-GL-Groups.html#CullFaceMode).
   -> m ()
-glCullFace v1 = liftIO $ dyn4 ptr_glCullFace v1
+glCullFace v1 = liftIO $ dyn5 ptr_glCullFace v1
 
 {-# NOINLINE ptr_glCullFace #-}
 ptr_glCullFace :: FunPtr (GLenum -> IO ())
@@ -478,7 +561,7 @@
   => GLenum -- ^ @pname@ of type @CullParameterEXT@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glCullParameterdvEXT v1 v2 = liftIO $ dyn93 ptr_glCullParameterdvEXT v1 v2
+glCullParameterdvEXT v1 v2 = liftIO $ dyn96 ptr_glCullParameterdvEXT v1 v2
 
 {-# NOINLINE ptr_glCullParameterdvEXT #-}
 ptr_glCullParameterdvEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
@@ -491,7 +574,7 @@
   => GLenum -- ^ @pname@ of type @CullParameterEXT@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glCullParameterfvEXT v1 v2 = liftIO $ dyn94 ptr_glCullParameterfvEXT v1 v2
+glCullParameterfvEXT v1 v2 = liftIO $ dyn97 ptr_glCullParameterfvEXT v1 v2
 
 {-# NOINLINE ptr_glCullParameterfvEXT #-}
 ptr_glCullParameterfvEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -503,7 +586,7 @@
   :: MonadIO m
   => GLint -- ^ @index@.
   -> m ()
-glCurrentPaletteMatrixARB v1 = liftIO $ dyn12 ptr_glCurrentPaletteMatrixARB v1
+glCurrentPaletteMatrixARB v1 = liftIO $ dyn13 ptr_glCurrentPaletteMatrixARB v1
 
 {-# NOINLINE ptr_glCurrentPaletteMatrixARB #-}
 ptr_glCurrentPaletteMatrixARB :: FunPtr (GLint -> IO ())
@@ -515,7 +598,7 @@
   :: MonadIO m
   => GLuint -- ^ @matrixpaletteindex@.
   -> m ()
-glCurrentPaletteMatrixOES v1 = liftIO $ dyn2 ptr_glCurrentPaletteMatrixOES v1
+glCurrentPaletteMatrixOES v1 = liftIO $ dyn3 ptr_glCurrentPaletteMatrixOES v1
 
 {-# NOINLINE ptr_glCurrentPaletteMatrixOES #-}
 ptr_glCurrentPaletteMatrixOES :: FunPtr (GLuint -> IO ())
@@ -529,7 +612,7 @@
   => GLDEBUGPROC -- ^ @callback@.
   -> Ptr a -- ^ @userParam@.
   -> m ()
-glDebugMessageCallback v1 v2 = liftIO $ dyn202 ptr_glDebugMessageCallback v1 v2
+glDebugMessageCallback v1 v2 = liftIO $ dyn205 ptr_glDebugMessageCallback v1 v2
 
 {-# NOINLINE ptr_glDebugMessageCallback #-}
 ptr_glDebugMessageCallback :: FunPtr (GLDEBUGPROC -> Ptr a -> IO ())
@@ -542,7 +625,7 @@
   => GLDEBUGPROCAMD -- ^ @callback@.
   -> Ptr a -- ^ @userParam@.
   -> m ()
-glDebugMessageCallbackAMD v1 v2 = liftIO $ dyn203 ptr_glDebugMessageCallbackAMD v1 v2
+glDebugMessageCallbackAMD v1 v2 = liftIO $ dyn206 ptr_glDebugMessageCallbackAMD v1 v2
 
 {-# NOINLINE ptr_glDebugMessageCallbackAMD #-}
 ptr_glDebugMessageCallbackAMD :: FunPtr (GLDEBUGPROCAMD -> Ptr a -> IO ())
@@ -556,7 +639,7 @@
   => GLDEBUGPROCARB -- ^ @callback@.
   -> Ptr a -- ^ @userParam@ pointing to @COMPSIZE(callback)@ elements of type @a@.
   -> m ()
-glDebugMessageCallbackARB v1 v2 = liftIO $ dyn204 ptr_glDebugMessageCallbackARB v1 v2
+glDebugMessageCallbackARB v1 v2 = liftIO $ dyn207 ptr_glDebugMessageCallbackARB v1 v2
 
 {-# NOINLINE ptr_glDebugMessageCallbackARB #-}
 ptr_glDebugMessageCallbackARB :: FunPtr (GLDEBUGPROCARB -> Ptr a -> IO ())
@@ -570,7 +653,7 @@
   => GLDEBUGPROCKHR -- ^ @callback@.
   -> Ptr a -- ^ @userParam@.
   -> m ()
-glDebugMessageCallbackKHR v1 v2 = liftIO $ dyn205 ptr_glDebugMessageCallbackKHR v1 v2
+glDebugMessageCallbackKHR v1 v2 = liftIO $ dyn208 ptr_glDebugMessageCallbackKHR v1 v2
 
 {-# NOINLINE ptr_glDebugMessageCallbackKHR #-}
 ptr_glDebugMessageCallbackKHR :: FunPtr (GLDEBUGPROCKHR -> Ptr a -> IO ())
@@ -588,7 +671,7 @@
   -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
   -> GLboolean -- ^ @enabled@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glDebugMessageControl v1 v2 v3 v4 v5 v6 = liftIO $ dyn206 ptr_glDebugMessageControl v1 v2 v3 v4 v5 v6
+glDebugMessageControl v1 v2 v3 v4 v5 v6 = liftIO $ dyn209 ptr_glDebugMessageControl v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageControl #-}
 ptr_glDebugMessageControl :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
@@ -606,7 +689,7 @@
   -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
   -> GLboolean -- ^ @enabled@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glDebugMessageControlARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn206 ptr_glDebugMessageControlARB v1 v2 v3 v4 v5 v6
+glDebugMessageControlARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn209 ptr_glDebugMessageControlARB v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageControlARB #-}
 ptr_glDebugMessageControlARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
@@ -624,7 +707,7 @@
   -> Ptr GLuint -- ^ @ids@.
   -> GLboolean -- ^ @enabled@.
   -> m ()
-glDebugMessageControlKHR v1 v2 v3 v4 v5 v6 = liftIO $ dyn206 ptr_glDebugMessageControlKHR v1 v2 v3 v4 v5 v6
+glDebugMessageControlKHR v1 v2 v3 v4 v5 v6 = liftIO $ dyn209 ptr_glDebugMessageControlKHR v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageControlKHR #-}
 ptr_glDebugMessageControlKHR :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
@@ -640,7 +723,7 @@
   -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
   -> GLboolean -- ^ @enabled@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glDebugMessageEnableAMD v1 v2 v3 v4 v5 = liftIO $ dyn207 ptr_glDebugMessageEnableAMD v1 v2 v3 v4 v5
+glDebugMessageEnableAMD v1 v2 v3 v4 v5 = liftIO $ dyn210 ptr_glDebugMessageEnableAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDebugMessageEnableAMD #-}
 ptr_glDebugMessageEnableAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
@@ -658,7 +741,7 @@
   -> GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @buf@ pointing to @COMPSIZE(buf,length)@ elements of type @GLchar@.
   -> m ()
-glDebugMessageInsert v1 v2 v3 v4 v5 v6 = liftIO $ dyn208 ptr_glDebugMessageInsert v1 v2 v3 v4 v5 v6
+glDebugMessageInsert v1 v2 v3 v4 v5 v6 = liftIO $ dyn211 ptr_glDebugMessageInsert v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageInsert #-}
 ptr_glDebugMessageInsert :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
@@ -674,7 +757,7 @@
   -> GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @buf@ pointing to @length@ elements of type @GLchar@.
   -> m ()
-glDebugMessageInsertAMD v1 v2 v3 v4 v5 = liftIO $ dyn209 ptr_glDebugMessageInsertAMD v1 v2 v3 v4 v5
+glDebugMessageInsertAMD v1 v2 v3 v4 v5 = liftIO $ dyn212 ptr_glDebugMessageInsertAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDebugMessageInsertAMD #-}
 ptr_glDebugMessageInsertAMD :: FunPtr (GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
@@ -692,7 +775,7 @@
   -> GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @buf@ pointing to @length@ elements of type @GLchar@.
   -> m ()
-glDebugMessageInsertARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn208 ptr_glDebugMessageInsertARB v1 v2 v3 v4 v5 v6
+glDebugMessageInsertARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn211 ptr_glDebugMessageInsertARB v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageInsertARB #-}
 ptr_glDebugMessageInsertARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
@@ -710,7 +793,7 @@
   -> GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @buf@.
   -> m ()
-glDebugMessageInsertKHR v1 v2 v3 v4 v5 v6 = liftIO $ dyn208 ptr_glDebugMessageInsertKHR v1 v2 v3 v4 v5 v6
+glDebugMessageInsertKHR v1 v2 v3 v4 v5 v6 = liftIO $ dyn211 ptr_glDebugMessageInsertKHR v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDebugMessageInsertKHR #-}
 ptr_glDebugMessageInsertKHR :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
@@ -722,7 +805,7 @@
   :: MonadIO m
   => GLbitfield -- ^ @mask@ of type [FfdMaskSGIX](Graphics-GL-Groups.html#FfdMaskSGIX).
   -> m ()
-glDeformSGIX v1 = liftIO $ dyn69 ptr_glDeformSGIX v1
+glDeformSGIX v1 = liftIO $ dyn72 ptr_glDeformSGIX v1
 
 {-# NOINLINE ptr_glDeformSGIX #-}
 ptr_glDeformSGIX :: FunPtr (GLbitfield -> IO ())
@@ -747,7 +830,7 @@
   -> GLint -- ^ @worder@ of type @CheckedInt32@.
   -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder,wstride,worder)@ elements of type @CoordD@.
   -> m ()
-glDeformationMap3dSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 = liftIO $ dyn210 ptr_glDeformationMap3dSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14
+glDeformationMap3dSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 = liftIO $ dyn213 ptr_glDeformationMap3dSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14
 
 {-# NOINLINE ptr_glDeformationMap3dSGIX #-}
 ptr_glDeformationMap3dSGIX :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
@@ -772,7 +855,7 @@
   -> GLint -- ^ @worder@ of type @CheckedInt32@.
   -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder,wstride,worder)@ elements of type @CoordF@.
   -> m ()
-glDeformationMap3fSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 = liftIO $ dyn211 ptr_glDeformationMap3fSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14
+glDeformationMap3fSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 = liftIO $ dyn214 ptr_glDeformationMap3fSGIX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14
 
 {-# NOINLINE ptr_glDeformationMap3fSGIX #-}
 ptr_glDeformationMap3fSGIX :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
@@ -785,7 +868,7 @@
   => GLuint -- ^ @marker@.
   -> GLsizei -- ^ @range@.
   -> m ()
-glDeleteAsyncMarkersSGIX v1 v2 = liftIO $ dyn212 ptr_glDeleteAsyncMarkersSGIX v1 v2
+glDeleteAsyncMarkersSGIX v1 v2 = liftIO $ dyn215 ptr_glDeleteAsyncMarkersSGIX v1 v2
 
 {-# NOINLINE ptr_glDeleteAsyncMarkersSGIX #-}
 ptr_glDeleteAsyncMarkersSGIX :: FunPtr (GLuint -> GLsizei -> IO ())
@@ -799,7 +882,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteBuffers v1 v2 = liftIO $ dyn193 ptr_glDeleteBuffers v1 v2
+glDeleteBuffers v1 v2 = liftIO $ dyn196 ptr_glDeleteBuffers v1 v2
 
 {-# NOINLINE ptr_glDeleteBuffers #-}
 ptr_glDeleteBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -813,7 +896,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteBuffersARB v1 v2 = liftIO $ dyn193 ptr_glDeleteBuffersARB v1 v2
+glDeleteBuffersARB v1 v2 = liftIO $ dyn196 ptr_glDeleteBuffersARB v1 v2
 
 {-# NOINLINE ptr_glDeleteBuffersARB #-}
 ptr_glDeleteBuffersARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -826,7 +909,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @lists@.
   -> m ()
-glDeleteCommandListsNV v1 v2 = liftIO $ dyn193 ptr_glDeleteCommandListsNV v1 v2
+glDeleteCommandListsNV v1 v2 = liftIO $ dyn196 ptr_glDeleteCommandListsNV v1 v2
 
 {-# NOINLINE ptr_glDeleteCommandListsNV #-}
 ptr_glDeleteCommandListsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -839,7 +922,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
   -> m ()
-glDeleteFencesAPPLE v1 v2 = liftIO $ dyn193 ptr_glDeleteFencesAPPLE v1 v2
+glDeleteFencesAPPLE v1 v2 = liftIO $ dyn196 ptr_glDeleteFencesAPPLE v1 v2
 
 {-# NOINLINE ptr_glDeleteFencesAPPLE #-}
 ptr_glDeleteFencesAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -852,7 +935,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
   -> m ()
-glDeleteFencesNV v1 v2 = liftIO $ dyn193 ptr_glDeleteFencesNV v1 v2
+glDeleteFencesNV v1 v2 = liftIO $ dyn196 ptr_glDeleteFencesNV v1 v2
 
 {-# NOINLINE ptr_glDeleteFencesNV #-}
 ptr_glDeleteFencesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -864,7 +947,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glDeleteFragmentShaderATI v1 = liftIO $ dyn2 ptr_glDeleteFragmentShaderATI v1
+glDeleteFragmentShaderATI v1 = liftIO $ dyn3 ptr_glDeleteFragmentShaderATI v1
 
 {-# NOINLINE ptr_glDeleteFragmentShaderATI #-}
 ptr_glDeleteFragmentShaderATI :: FunPtr (GLuint -> IO ())
@@ -878,7 +961,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteFramebuffers v1 v2 = liftIO $ dyn193 ptr_glDeleteFramebuffers v1 v2
+glDeleteFramebuffers v1 v2 = liftIO $ dyn196 ptr_glDeleteFramebuffers v1 v2
 
 {-# NOINLINE ptr_glDeleteFramebuffers #-}
 ptr_glDeleteFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -892,7 +975,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteFramebuffersEXT v1 v2 = liftIO $ dyn193 ptr_glDeleteFramebuffersEXT v1 v2
+glDeleteFramebuffersEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteFramebuffersEXT v1 v2
 
 {-# NOINLINE ptr_glDeleteFramebuffersEXT #-}
 ptr_glDeleteFramebuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -905,7 +988,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteFramebuffersOES v1 v2 = liftIO $ dyn193 ptr_glDeleteFramebuffersOES v1 v2
+glDeleteFramebuffersOES v1 v2 = liftIO $ dyn196 ptr_glDeleteFramebuffersOES v1 v2
 
 {-# NOINLINE ptr_glDeleteFramebuffersOES #-}
 ptr_glDeleteFramebuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -919,12 +1002,25 @@
   => GLuint -- ^ @list@ of type @List@.
   -> GLsizei -- ^ @range@.
   -> m ()
-glDeleteLists v1 v2 = liftIO $ dyn212 ptr_glDeleteLists v1 v2
+glDeleteLists v1 v2 = liftIO $ dyn215 ptr_glDeleteLists v1 v2
 
 {-# NOINLINE ptr_glDeleteLists #-}
 ptr_glDeleteLists :: FunPtr (GLuint -> GLsizei -> IO ())
 ptr_glDeleteLists = unsafePerformIO $ getCommand "glDeleteLists"
 
+-- glDeleteMemoryObjectsEXT ----------------------------------------------------
+
+glDeleteMemoryObjectsEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @memoryObjects@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glDeleteMemoryObjectsEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteMemoryObjectsEXT v1 v2
+
+{-# NOINLINE ptr_glDeleteMemoryObjectsEXT #-}
+ptr_glDeleteMemoryObjectsEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glDeleteMemoryObjectsEXT = unsafePerformIO $ getCommand "glDeleteMemoryObjectsEXT"
+
 -- glDeleteNamedStringARB ------------------------------------------------------
 
 glDeleteNamedStringARB
@@ -932,7 +1028,7 @@
   => GLint -- ^ @namelen@.
   -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
   -> m ()
-glDeleteNamedStringARB v1 v2 = liftIO $ dyn213 ptr_glDeleteNamedStringARB v1 v2
+glDeleteNamedStringARB v1 v2 = liftIO $ dyn216 ptr_glDeleteNamedStringARB v1 v2
 
 {-# NOINLINE ptr_glDeleteNamedStringARB #-}
 ptr_glDeleteNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> IO ())
@@ -946,7 +1042,7 @@
   -> GLuint -- ^ @num@.
   -> Ptr GLuint -- ^ @names@ pointing to @num@ elements of type @GLuint@.
   -> m ()
-glDeleteNamesAMD v1 v2 v3 = liftIO $ dyn214 ptr_glDeleteNamesAMD v1 v2 v3
+glDeleteNamesAMD v1 v2 v3 = liftIO $ dyn217 ptr_glDeleteNamesAMD v1 v2 v3
 
 {-# NOINLINE ptr_glDeleteNamesAMD #-}
 ptr_glDeleteNamesAMD :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
@@ -958,7 +1054,7 @@
   :: MonadIO m
   => GLhandleARB -- ^ @obj@ of type @handleARB@.
   -> m ()
-glDeleteObjectARB v1 = liftIO $ dyn137 ptr_glDeleteObjectARB v1
+glDeleteObjectARB v1 = liftIO $ dyn140 ptr_glDeleteObjectARB v1
 
 {-# NOINLINE ptr_glDeleteObjectARB #-}
 ptr_glDeleteObjectARB :: FunPtr (GLhandleARB -> IO ())
@@ -971,7 +1067,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteOcclusionQueriesNV v1 v2 = liftIO $ dyn193 ptr_glDeleteOcclusionQueriesNV v1 v2
+glDeleteOcclusionQueriesNV v1 v2 = liftIO $ dyn196 ptr_glDeleteOcclusionQueriesNV v1 v2
 
 {-# NOINLINE ptr_glDeleteOcclusionQueriesNV #-}
 ptr_glDeleteOcclusionQueriesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -984,7 +1080,7 @@
   => GLuint -- ^ @path@ of type @Path@.
   -> GLsizei -- ^ @range@.
   -> m ()
-glDeletePathsNV v1 v2 = liftIO $ dyn212 ptr_glDeletePathsNV v1 v2
+glDeletePathsNV v1 v2 = liftIO $ dyn215 ptr_glDeletePathsNV v1 v2
 
 {-# NOINLINE ptr_glDeletePathsNV #-}
 ptr_glDeletePathsNV :: FunPtr (GLuint -> GLsizei -> IO ())
@@ -997,7 +1093,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @monitors@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeletePerfMonitorsAMD v1 v2 = liftIO $ dyn193 ptr_glDeletePerfMonitorsAMD v1 v2
+glDeletePerfMonitorsAMD v1 v2 = liftIO $ dyn196 ptr_glDeletePerfMonitorsAMD v1 v2
 
 {-# NOINLINE ptr_glDeletePerfMonitorsAMD #-}
 ptr_glDeletePerfMonitorsAMD :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1009,7 +1105,7 @@
   :: MonadIO m
   => GLuint -- ^ @queryHandle@.
   -> m ()
-glDeletePerfQueryINTEL v1 = liftIO $ dyn2 ptr_glDeletePerfQueryINTEL v1
+glDeletePerfQueryINTEL v1 = liftIO $ dyn3 ptr_glDeletePerfQueryINTEL v1
 
 {-# NOINLINE ptr_glDeletePerfQueryINTEL #-}
 ptr_glDeletePerfQueryINTEL :: FunPtr (GLuint -> IO ())
@@ -1022,7 +1118,7 @@
   :: MonadIO m
   => GLuint -- ^ @program@.
   -> m ()
-glDeleteProgram v1 = liftIO $ dyn2 ptr_glDeleteProgram v1
+glDeleteProgram v1 = liftIO $ dyn3 ptr_glDeleteProgram v1
 
 {-# NOINLINE ptr_glDeleteProgram #-}
 ptr_glDeleteProgram :: FunPtr (GLuint -> IO ())
@@ -1036,7 +1132,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteProgramPipelines v1 v2 = liftIO $ dyn193 ptr_glDeleteProgramPipelines v1 v2
+glDeleteProgramPipelines v1 v2 = liftIO $ dyn196 ptr_glDeleteProgramPipelines v1 v2
 
 {-# NOINLINE ptr_glDeleteProgramPipelines #-}
 ptr_glDeleteProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1049,7 +1145,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteProgramPipelinesEXT v1 v2 = liftIO $ dyn193 ptr_glDeleteProgramPipelinesEXT v1 v2
+glDeleteProgramPipelinesEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteProgramPipelinesEXT v1 v2
 
 {-# NOINLINE ptr_glDeleteProgramPipelinesEXT #-}
 ptr_glDeleteProgramPipelinesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1062,7 +1158,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteProgramsARB v1 v2 = liftIO $ dyn193 ptr_glDeleteProgramsARB v1 v2
+glDeleteProgramsARB v1 v2 = liftIO $ dyn196 ptr_glDeleteProgramsARB v1 v2
 
 {-# NOINLINE ptr_glDeleteProgramsARB #-}
 ptr_glDeleteProgramsARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1076,7 +1172,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteProgramsNV v1 v2 = liftIO $ dyn193 ptr_glDeleteProgramsNV v1 v2
+glDeleteProgramsNV v1 v2 = liftIO $ dyn196 ptr_glDeleteProgramsNV v1 v2
 
 {-# NOINLINE ptr_glDeleteProgramsNV #-}
 ptr_glDeleteProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1090,7 +1186,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteQueries v1 v2 = liftIO $ dyn193 ptr_glDeleteQueries v1 v2
+glDeleteQueries v1 v2 = liftIO $ dyn196 ptr_glDeleteQueries v1 v2
 
 {-# NOINLINE ptr_glDeleteQueries #-}
 ptr_glDeleteQueries :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1104,7 +1200,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteQueriesARB v1 v2 = liftIO $ dyn193 ptr_glDeleteQueriesARB v1 v2
+glDeleteQueriesARB v1 v2 = liftIO $ dyn196 ptr_glDeleteQueriesARB v1 v2
 
 {-# NOINLINE ptr_glDeleteQueriesARB #-}
 ptr_glDeleteQueriesARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1117,7 +1213,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteQueriesEXT v1 v2 = liftIO $ dyn193 ptr_glDeleteQueriesEXT v1 v2
+glDeleteQueriesEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteQueriesEXT v1 v2
 
 {-# NOINLINE ptr_glDeleteQueriesEXT #-}
 ptr_glDeleteQueriesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1131,7 +1227,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteRenderbuffers v1 v2 = liftIO $ dyn193 ptr_glDeleteRenderbuffers v1 v2
+glDeleteRenderbuffers v1 v2 = liftIO $ dyn196 ptr_glDeleteRenderbuffers v1 v2
 
 {-# NOINLINE ptr_glDeleteRenderbuffers #-}
 ptr_glDeleteRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1145,7 +1241,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteRenderbuffersEXT v1 v2 = liftIO $ dyn193 ptr_glDeleteRenderbuffersEXT v1 v2
+glDeleteRenderbuffersEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteRenderbuffersEXT v1 v2
 
 {-# NOINLINE ptr_glDeleteRenderbuffersEXT #-}
 ptr_glDeleteRenderbuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1158,7 +1254,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteRenderbuffersOES v1 v2 = liftIO $ dyn193 ptr_glDeleteRenderbuffersOES v1 v2
+glDeleteRenderbuffersOES v1 v2 = liftIO $ dyn196 ptr_glDeleteRenderbuffersOES v1 v2
 
 {-# NOINLINE ptr_glDeleteRenderbuffersOES #-}
 ptr_glDeleteRenderbuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1172,12 +1268,25 @@
   => GLsizei -- ^ @count@.
   -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
   -> m ()
-glDeleteSamplers v1 v2 = liftIO $ dyn193 ptr_glDeleteSamplers v1 v2
+glDeleteSamplers v1 v2 = liftIO $ dyn196 ptr_glDeleteSamplers v1 v2
 
 {-# NOINLINE ptr_glDeleteSamplers #-}
 ptr_glDeleteSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
 ptr_glDeleteSamplers = unsafePerformIO $ getCommand "glDeleteSamplers"
 
+-- glDeleteSemaphoresEXT -------------------------------------------------------
+
+glDeleteSemaphoresEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @semaphores@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glDeleteSemaphoresEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteSemaphoresEXT v1 v2
+
+{-# NOINLINE ptr_glDeleteSemaphoresEXT #-}
+ptr_glDeleteSemaphoresEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glDeleteSemaphoresEXT = unsafePerformIO $ getCommand "glDeleteSemaphoresEXT"
+
 -- glDeleteShader --------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteShader.xhtml OpenGL 4.x>.
@@ -1185,7 +1294,7 @@
   :: MonadIO m
   => GLuint -- ^ @shader@.
   -> m ()
-glDeleteShader v1 = liftIO $ dyn2 ptr_glDeleteShader v1
+glDeleteShader v1 = liftIO $ dyn3 ptr_glDeleteShader v1
 
 {-# NOINLINE ptr_glDeleteShader #-}
 ptr_glDeleteShader :: FunPtr (GLuint -> IO ())
@@ -1198,7 +1307,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @states@.
   -> m ()
-glDeleteStatesNV v1 v2 = liftIO $ dyn193 ptr_glDeleteStatesNV v1 v2
+glDeleteStatesNV v1 v2 = liftIO $ dyn196 ptr_glDeleteStatesNV v1 v2
 
 {-# NOINLINE ptr_glDeleteStatesNV #-}
 ptr_glDeleteStatesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1211,7 +1320,7 @@
   :: MonadIO m
   => GLsync -- ^ @sync@ of type @sync@.
   -> m ()
-glDeleteSync v1 = liftIO $ dyn215 ptr_glDeleteSync v1
+glDeleteSync v1 = liftIO $ dyn218 ptr_glDeleteSync v1
 
 {-# NOINLINE ptr_glDeleteSync #-}
 ptr_glDeleteSync :: FunPtr (GLsync -> IO ())
@@ -1224,7 +1333,7 @@
   :: MonadIO m
   => GLsync -- ^ @sync@.
   -> m ()
-glDeleteSyncAPPLE v1 = liftIO $ dyn215 ptr_glDeleteSyncAPPLE v1
+glDeleteSyncAPPLE v1 = liftIO $ dyn218 ptr_glDeleteSyncAPPLE v1
 
 {-# NOINLINE ptr_glDeleteSyncAPPLE #-}
 ptr_glDeleteSyncAPPLE :: FunPtr (GLsync -> IO ())
@@ -1238,7 +1347,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
   -> m ()
-glDeleteTextures v1 v2 = liftIO $ dyn193 ptr_glDeleteTextures v1 v2
+glDeleteTextures v1 v2 = liftIO $ dyn196 ptr_glDeleteTextures v1 v2
 
 {-# NOINLINE ptr_glDeleteTextures #-}
 ptr_glDeleteTextures :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1251,7 +1360,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
   -> m ()
-glDeleteTexturesEXT v1 v2 = liftIO $ dyn193 ptr_glDeleteTexturesEXT v1 v2
+glDeleteTexturesEXT v1 v2 = liftIO $ dyn196 ptr_glDeleteTexturesEXT v1 v2
 
 {-# NOINLINE ptr_glDeleteTexturesEXT #-}
 ptr_glDeleteTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1265,7 +1374,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteTransformFeedbacks v1 v2 = liftIO $ dyn193 ptr_glDeleteTransformFeedbacks v1 v2
+glDeleteTransformFeedbacks v1 v2 = liftIO $ dyn196 ptr_glDeleteTransformFeedbacks v1 v2
 
 {-# NOINLINE ptr_glDeleteTransformFeedbacks #-}
 ptr_glDeleteTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1279,7 +1388,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteTransformFeedbacksNV v1 v2 = liftIO $ dyn193 ptr_glDeleteTransformFeedbacksNV v1 v2
+glDeleteTransformFeedbacksNV v1 v2 = liftIO $ dyn196 ptr_glDeleteTransformFeedbacksNV v1 v2
 
 {-# NOINLINE ptr_glDeleteTransformFeedbacksNV #-}
 ptr_glDeleteTransformFeedbacksNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1293,7 +1402,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteVertexArrays v1 v2 = liftIO $ dyn193 ptr_glDeleteVertexArrays v1 v2
+glDeleteVertexArrays v1 v2 = liftIO $ dyn196 ptr_glDeleteVertexArrays v1 v2
 
 {-# NOINLINE ptr_glDeleteVertexArrays #-}
 ptr_glDeleteVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1307,7 +1416,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteVertexArraysAPPLE v1 v2 = liftIO $ dyn193 ptr_glDeleteVertexArraysAPPLE v1 v2
+glDeleteVertexArraysAPPLE v1 v2 = liftIO $ dyn196 ptr_glDeleteVertexArraysAPPLE v1 v2
 
 {-# NOINLINE ptr_glDeleteVertexArraysAPPLE #-}
 ptr_glDeleteVertexArraysAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1321,7 +1430,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glDeleteVertexArraysOES v1 v2 = liftIO $ dyn193 ptr_glDeleteVertexArraysOES v1 v2
+glDeleteVertexArraysOES v1 v2 = liftIO $ dyn196 ptr_glDeleteVertexArraysOES v1 v2
 
 {-# NOINLINE ptr_glDeleteVertexArraysOES #-}
 ptr_glDeleteVertexArraysOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1333,7 +1442,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glDeleteVertexShaderEXT v1 = liftIO $ dyn2 ptr_glDeleteVertexShaderEXT v1
+glDeleteVertexShaderEXT v1 = liftIO $ dyn3 ptr_glDeleteVertexShaderEXT v1
 
 {-# NOINLINE ptr_glDeleteVertexShaderEXT #-}
 ptr_glDeleteVertexShaderEXT :: FunPtr (GLuint -> IO ())
@@ -1346,7 +1455,7 @@
   => GLclampd -- ^ @zmin@ of type @ClampedFloat64@.
   -> GLclampd -- ^ @zmax@ of type @ClampedFloat64@.
   -> m ()
-glDepthBoundsEXT v1 v2 = liftIO $ dyn216 ptr_glDepthBoundsEXT v1 v2
+glDepthBoundsEXT v1 v2 = liftIO $ dyn219 ptr_glDepthBoundsEXT v1 v2
 
 {-# NOINLINE ptr_glDepthBoundsEXT #-}
 ptr_glDepthBoundsEXT :: FunPtr (GLclampd -> GLclampd -> IO ())
@@ -1359,7 +1468,7 @@
   => GLdouble -- ^ @zmin@.
   -> GLdouble -- ^ @zmax@.
   -> m ()
-glDepthBoundsdNV v1 v2 = liftIO $ dyn217 ptr_glDepthBoundsdNV v1 v2
+glDepthBoundsdNV v1 v2 = liftIO $ dyn220 ptr_glDepthBoundsdNV v1 v2
 
 {-# NOINLINE ptr_glDepthBoundsdNV #-}
 ptr_glDepthBoundsdNV :: FunPtr (GLdouble -> GLdouble -> IO ())
@@ -1372,7 +1481,7 @@
   :: MonadIO m
   => GLenum -- ^ @func@ of type [DepthFunction](Graphics-GL-Groups.html#DepthFunction).
   -> m ()
-glDepthFunc v1 = liftIO $ dyn4 ptr_glDepthFunc v1
+glDepthFunc v1 = liftIO $ dyn5 ptr_glDepthFunc v1
 
 {-# NOINLINE ptr_glDepthFunc #-}
 ptr_glDepthFunc :: FunPtr (GLenum -> IO ())
@@ -1385,7 +1494,7 @@
   :: MonadIO m
   => GLboolean -- ^ @flag@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glDepthMask v1 = liftIO $ dyn191 ptr_glDepthMask v1
+glDepthMask v1 = liftIO $ dyn194 ptr_glDepthMask v1
 
 {-# NOINLINE ptr_glDepthMask #-}
 ptr_glDepthMask :: FunPtr (GLboolean -> IO ())
@@ -1399,7 +1508,7 @@
   => GLdouble -- ^ @near@.
   -> GLdouble -- ^ @far@.
   -> m ()
-glDepthRange v1 v2 = liftIO $ dyn217 ptr_glDepthRange v1 v2
+glDepthRange v1 v2 = liftIO $ dyn220 ptr_glDepthRange v1 v2
 
 {-# NOINLINE ptr_glDepthRange #-}
 ptr_glDepthRange :: FunPtr (GLdouble -> GLdouble -> IO ())
@@ -1413,108 +1522,9 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glDepthRangeArrayfvNV v1 v2 v3 = liftIO $ dyn218 ptr_glDepthRangeArrayfvNV v1 v2 v3
+glDepthRangeArrayfvNV v1 v2 v3 = liftIO $ dyn221 ptr_glDepthRangeArrayfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glDepthRangeArrayfvNV #-}
 ptr_glDepthRangeArrayfvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glDepthRangeArrayfvNV = unsafePerformIO $ getCommand "glDepthRangeArrayfvNV"
-
--- glDepthRangeArrayfvOES ------------------------------------------------------
-
-glDepthRangeArrayfvOES
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@.
-  -> m ()
-glDepthRangeArrayfvOES v1 v2 v3 = liftIO $ dyn218 ptr_glDepthRangeArrayfvOES v1 v2 v3
-
-{-# NOINLINE ptr_glDepthRangeArrayfvOES #-}
-ptr_glDepthRangeArrayfvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glDepthRangeArrayfvOES = unsafePerformIO $ getCommand "glDepthRangeArrayfvOES"
-
--- glDepthRangeArrayv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeArray.xhtml OpenGL 4.x>.
-glDepthRangeArrayv
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLdouble@.
-  -> m ()
-glDepthRangeArrayv v1 v2 v3 = liftIO $ dyn219 ptr_glDepthRangeArrayv v1 v2 v3
-
-{-# NOINLINE ptr_glDepthRangeArrayv #-}
-ptr_glDepthRangeArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glDepthRangeArrayv = unsafePerformIO $ getCommand "glDepthRangeArrayv"
-
--- glDepthRangeIndexed ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeIndexed.xhtml OpenGL 4.x>.
-glDepthRangeIndexed
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @n@.
-  -> GLdouble -- ^ @f@.
-  -> m ()
-glDepthRangeIndexed v1 v2 v3 = liftIO $ dyn220 ptr_glDepthRangeIndexed v1 v2 v3
-
-{-# NOINLINE ptr_glDepthRangeIndexed #-}
-ptr_glDepthRangeIndexed :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glDepthRangeIndexed = unsafePerformIO $ getCommand "glDepthRangeIndexed"
-
--- glDepthRangeIndexedfNV ------------------------------------------------------
-
-glDepthRangeIndexedfNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @n@.
-  -> GLfloat -- ^ @f@.
-  -> m ()
-glDepthRangeIndexedfNV v1 v2 v3 = liftIO $ dyn221 ptr_glDepthRangeIndexedfNV v1 v2 v3
-
-{-# NOINLINE ptr_glDepthRangeIndexedfNV #-}
-ptr_glDepthRangeIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glDepthRangeIndexedfNV = unsafePerformIO $ getCommand "glDepthRangeIndexedfNV"
-
--- glDepthRangeIndexedfOES -----------------------------------------------------
-
-glDepthRangeIndexedfOES
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @n@.
-  -> GLfloat -- ^ @f@.
-  -> m ()
-glDepthRangeIndexedfOES v1 v2 v3 = liftIO $ dyn221 ptr_glDepthRangeIndexedfOES v1 v2 v3
-
-{-# NOINLINE ptr_glDepthRangeIndexedfOES #-}
-ptr_glDepthRangeIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glDepthRangeIndexedfOES = unsafePerformIO $ getCommand "glDepthRangeIndexedfOES"
-
--- glDepthRangedNV -------------------------------------------------------------
-
-glDepthRangedNV
-  :: MonadIO m
-  => GLdouble -- ^ @zNear@.
-  -> GLdouble -- ^ @zFar@.
-  -> m ()
-glDepthRangedNV v1 v2 = liftIO $ dyn217 ptr_glDepthRangedNV v1 v2
-
-{-# NOINLINE ptr_glDepthRangedNV #-}
-ptr_glDepthRangedNV :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glDepthRangedNV = unsafePerformIO $ getCommand "glDepthRangedNV"
-
--- glDepthRangef ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRange.xhtml OpenGL 4.x>.
-glDepthRangef
-  :: MonadIO m
-  => GLfloat -- ^ @n@.
-  -> GLfloat -- ^ @f@.
-  -> m ()
-glDepthRangef v1 v2 = liftIO $ dyn222 ptr_glDepthRangef v1 v2
-
-{-# NOINLINE ptr_glDepthRangef #-}
-ptr_glDepthRangef :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glDepthRangef = unsafePerformIO $ getCommand "glDepthRangef"
 
diff --git a/src/Graphics/GL/Functions/F06.hs b/src/Graphics/GL/Functions/F06.hs
--- a/src/Graphics/GL/Functions/F06.hs
+++ b/src/Graphics/GL/Functions/F06.hs
@@ -15,6 +15,13 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F06 (
+  glDepthRangeArrayfvOES,
+  glDepthRangeArrayv,
+  glDepthRangeIndexed,
+  glDepthRangeIndexedfNV,
+  glDepthRangeIndexedfOES,
+  glDepthRangedNV,
+  glDepthRangef,
   glDepthRangefOES,
   glDepthRangex,
   glDepthRangexOES,
@@ -107,14 +114,7 @@
   glDrawTransformFeedbackNV,
   glDrawTransformFeedbackStream,
   glDrawTransformFeedbackStreamInstanced,
-  glEGLImageTargetRenderbufferStorageOES,
-  glEGLImageTargetTexture2DOES,
-  glEdgeFlag,
-  glEdgeFlagFormatNV,
-  glEdgeFlagPointer,
-  glEdgeFlagPointerEXT,
-  glEdgeFlagPointerListIBM,
-  glEdgeFlagv
+  glDrawVkImageNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,105 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glDepthRangeArrayfvOES ------------------------------------------------------
+
+glDepthRangeArrayfvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@.
+  -> m ()
+glDepthRangeArrayfvOES v1 v2 v3 = liftIO $ dyn221 ptr_glDepthRangeArrayfvOES v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeArrayfvOES #-}
+ptr_glDepthRangeArrayfvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glDepthRangeArrayfvOES = unsafePerformIO $ getCommand "glDepthRangeArrayfvOES"
+
+-- glDepthRangeArrayv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeArray.xhtml OpenGL 4.x>.
+glDepthRangeArrayv
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLdouble@.
+  -> m ()
+glDepthRangeArrayv v1 v2 v3 = liftIO $ dyn222 ptr_glDepthRangeArrayv v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeArrayv #-}
+ptr_glDepthRangeArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glDepthRangeArrayv = unsafePerformIO $ getCommand "glDepthRangeArrayv"
+
+-- glDepthRangeIndexed ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeIndexed.xhtml OpenGL 4.x>.
+glDepthRangeIndexed
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @n@.
+  -> GLdouble -- ^ @f@.
+  -> m ()
+glDepthRangeIndexed v1 v2 v3 = liftIO $ dyn223 ptr_glDepthRangeIndexed v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeIndexed #-}
+ptr_glDepthRangeIndexed :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glDepthRangeIndexed = unsafePerformIO $ getCommand "glDepthRangeIndexed"
+
+-- glDepthRangeIndexedfNV ------------------------------------------------------
+
+glDepthRangeIndexedfNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glDepthRangeIndexedfNV v1 v2 v3 = liftIO $ dyn224 ptr_glDepthRangeIndexedfNV v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeIndexedfNV #-}
+ptr_glDepthRangeIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glDepthRangeIndexedfNV = unsafePerformIO $ getCommand "glDepthRangeIndexedfNV"
+
+-- glDepthRangeIndexedfOES -----------------------------------------------------
+
+glDepthRangeIndexedfOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glDepthRangeIndexedfOES v1 v2 v3 = liftIO $ dyn224 ptr_glDepthRangeIndexedfOES v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeIndexedfOES #-}
+ptr_glDepthRangeIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glDepthRangeIndexedfOES = unsafePerformIO $ getCommand "glDepthRangeIndexedfOES"
+
+-- glDepthRangedNV -------------------------------------------------------------
+
+glDepthRangedNV
+  :: MonadIO m
+  => GLdouble -- ^ @zNear@.
+  -> GLdouble -- ^ @zFar@.
+  -> m ()
+glDepthRangedNV v1 v2 = liftIO $ dyn220 ptr_glDepthRangedNV v1 v2
+
+{-# NOINLINE ptr_glDepthRangedNV #-}
+ptr_glDepthRangedNV :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glDepthRangedNV = unsafePerformIO $ getCommand "glDepthRangedNV"
+
+-- glDepthRangef ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRange.xhtml OpenGL 4.x>.
+glDepthRangef
+  :: MonadIO m
+  => GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glDepthRangef v1 v2 = liftIO $ dyn225 ptr_glDepthRangef v1 v2
+
+{-# NOINLINE ptr_glDepthRangef #-}
+ptr_glDepthRangef :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glDepthRangef = unsafePerformIO $ getCommand "glDepthRangef"
+
 -- glDepthRangefOES ------------------------------------------------------------
 
 -- | This command is an alias for 'glDepthRangef'.
@@ -131,7 +230,7 @@
   => GLclampf -- ^ @n@ of type @ClampedFloat32@.
   -> GLclampf -- ^ @f@ of type @ClampedFloat32@.
   -> m ()
-glDepthRangefOES v1 v2 = liftIO $ dyn223 ptr_glDepthRangefOES v1 v2
+glDepthRangefOES v1 v2 = liftIO $ dyn226 ptr_glDepthRangefOES v1 v2
 
 {-# NOINLINE ptr_glDepthRangefOES #-}
 ptr_glDepthRangefOES :: FunPtr (GLclampf -> GLclampf -> IO ())
@@ -144,7 +243,7 @@
   => GLfixed -- ^ @n@.
   -> GLfixed -- ^ @f@.
   -> m ()
-glDepthRangex v1 v2 = liftIO $ dyn224 ptr_glDepthRangex v1 v2
+glDepthRangex v1 v2 = liftIO $ dyn227 ptr_glDepthRangex v1 v2
 
 {-# NOINLINE ptr_glDepthRangex #-}
 ptr_glDepthRangex :: FunPtr (GLfixed -> GLfixed -> IO ())
@@ -157,7 +256,7 @@
   => GLfixed -- ^ @n@ of type @ClampedFixed@.
   -> GLfixed -- ^ @f@ of type @ClampedFixed@.
   -> m ()
-glDepthRangexOES v1 v2 = liftIO $ dyn224 ptr_glDepthRangexOES v1 v2
+glDepthRangexOES v1 v2 = liftIO $ dyn227 ptr_glDepthRangexOES v1 v2
 
 {-# NOINLINE ptr_glDepthRangexOES #-}
 ptr_glDepthRangexOES :: FunPtr (GLfixed -> GLfixed -> IO ())
@@ -171,7 +270,7 @@
   => GLhandleARB -- ^ @containerObj@ of type @handleARB@.
   -> GLhandleARB -- ^ @attachedObj@ of type @handleARB@.
   -> m ()
-glDetachObjectARB v1 v2 = liftIO $ dyn14 ptr_glDetachObjectARB v1 v2
+glDetachObjectARB v1 v2 = liftIO $ dyn15 ptr_glDetachObjectARB v1 v2
 
 {-# NOINLINE ptr_glDetachObjectARB #-}
 ptr_glDetachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
@@ -185,7 +284,7 @@
   => GLuint -- ^ @program@.
   -> GLuint -- ^ @shader@.
   -> m ()
-glDetachShader v1 v2 = liftIO $ dyn3 ptr_glDetachShader v1 v2
+glDetachShader v1 v2 = liftIO $ dyn4 ptr_glDetachShader v1 v2
 
 {-# NOINLINE ptr_glDetachShader #-}
 ptr_glDetachShader :: FunPtr (GLuint -> GLuint -> IO ())
@@ -199,7 +298,7 @@
   -> GLsizei -- ^ @n@.
   -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
   -> m ()
-glDetailTexFuncSGIS v1 v2 v3 = liftIO $ dyn225 ptr_glDetailTexFuncSGIS v1 v2 v3
+glDetailTexFuncSGIS v1 v2 v3 = liftIO $ dyn228 ptr_glDetailTexFuncSGIS v1 v2 v3
 
 {-# NOINLINE ptr_glDetailTexFuncSGIS #-}
 ptr_glDetailTexFuncSGIS :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
@@ -212,7 +311,7 @@
   :: MonadIO m
   => GLenum -- ^ @cap@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glDisable v1 = liftIO $ dyn4 ptr_glDisable v1
+glDisable v1 = liftIO $ dyn5 ptr_glDisable v1
 
 {-# NOINLINE ptr_glDisable #-}
 ptr_glDisable :: FunPtr (GLenum -> IO ())
@@ -225,7 +324,7 @@
   :: MonadIO m
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glDisableClientState v1 = liftIO $ dyn4 ptr_glDisableClientState v1
+glDisableClientState v1 = liftIO $ dyn5 ptr_glDisableClientState v1
 
 {-# NOINLINE ptr_glDisableClientState #-}
 ptr_glDisableClientState :: FunPtr (GLenum -> IO ())
@@ -238,7 +337,7 @@
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableClientStateIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glDisableClientStateIndexedEXT v1 v2
+glDisableClientStateIndexedEXT v1 v2 = liftIO $ dyn17 ptr_glDisableClientStateIndexedEXT v1 v2
 
 {-# NOINLINE ptr_glDisableClientStateIndexedEXT #-}
 ptr_glDisableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -251,7 +350,7 @@
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableClientStateiEXT v1 v2 = liftIO $ dyn16 ptr_glDisableClientStateiEXT v1 v2
+glDisableClientStateiEXT v1 v2 = liftIO $ dyn17 ptr_glDisableClientStateiEXT v1 v2
 
 {-# NOINLINE ptr_glDisableClientStateiEXT #-}
 ptr_glDisableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -263,7 +362,7 @@
   :: MonadIO m
   => GLuint -- ^ @driverControl@.
   -> m ()
-glDisableDriverControlQCOM v1 = liftIO $ dyn2 ptr_glDisableDriverControlQCOM v1
+glDisableDriverControlQCOM v1 = liftIO $ dyn3 ptr_glDisableDriverControlQCOM v1
 
 {-# NOINLINE ptr_glDisableDriverControlQCOM #-}
 ptr_glDisableDriverControlQCOM :: FunPtr (GLuint -> IO ())
@@ -277,7 +376,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glDisableIndexedEXT v1 v2
+glDisableIndexedEXT v1 v2 = liftIO $ dyn17 ptr_glDisableIndexedEXT v1 v2
 
 {-# NOINLINE ptr_glDisableIndexedEXT #-}
 ptr_glDisableIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -289,7 +388,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glDisableVariantClientStateEXT v1 = liftIO $ dyn2 ptr_glDisableVariantClientStateEXT v1
+glDisableVariantClientStateEXT v1 = liftIO $ dyn3 ptr_glDisableVariantClientStateEXT v1
 
 {-# NOINLINE ptr_glDisableVariantClientStateEXT #-}
 ptr_glDisableVariantClientStateEXT :: FunPtr (GLuint -> IO ())
@@ -303,7 +402,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableVertexArrayAttrib v1 v2 = liftIO $ dyn3 ptr_glDisableVertexArrayAttrib v1 v2
+glDisableVertexArrayAttrib v1 v2 = liftIO $ dyn4 ptr_glDisableVertexArrayAttrib v1 v2
 
 {-# NOINLINE ptr_glDisableVertexArrayAttrib #-}
 ptr_glDisableVertexArrayAttrib :: FunPtr (GLuint -> GLuint -> IO ())
@@ -316,7 +415,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableVertexArrayAttribEXT v1 v2 = liftIO $ dyn3 ptr_glDisableVertexArrayAttribEXT v1 v2
+glDisableVertexArrayAttribEXT v1 v2 = liftIO $ dyn4 ptr_glDisableVertexArrayAttribEXT v1 v2
 
 {-# NOINLINE ptr_glDisableVertexArrayAttribEXT #-}
 ptr_glDisableVertexArrayAttribEXT :: FunPtr (GLuint -> GLuint -> IO ())
@@ -329,7 +428,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glDisableVertexArrayEXT v1 v2 = liftIO $ dyn15 ptr_glDisableVertexArrayEXT v1 v2
+glDisableVertexArrayEXT v1 v2 = liftIO $ dyn16 ptr_glDisableVertexArrayEXT v1 v2
 
 {-# NOINLINE ptr_glDisableVertexArrayEXT #-}
 ptr_glDisableVertexArrayEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -342,7 +441,7 @@
   => GLuint -- ^ @index@.
   -> GLenum -- ^ @pname@.
   -> m ()
-glDisableVertexAttribAPPLE v1 v2 = liftIO $ dyn15 ptr_glDisableVertexAttribAPPLE v1 v2
+glDisableVertexAttribAPPLE v1 v2 = liftIO $ dyn16 ptr_glDisableVertexAttribAPPLE v1 v2
 
 {-# NOINLINE ptr_glDisableVertexAttribAPPLE #-}
 ptr_glDisableVertexAttribAPPLE :: FunPtr (GLuint -> GLenum -> IO ())
@@ -355,7 +454,7 @@
   :: MonadIO m
   => GLuint -- ^ @index@.
   -> m ()
-glDisableVertexAttribArray v1 = liftIO $ dyn2 ptr_glDisableVertexAttribArray v1
+glDisableVertexAttribArray v1 = liftIO $ dyn3 ptr_glDisableVertexAttribArray v1
 
 {-# NOINLINE ptr_glDisableVertexAttribArray #-}
 ptr_glDisableVertexAttribArray :: FunPtr (GLuint -> IO ())
@@ -368,7 +467,7 @@
   :: MonadIO m
   => GLuint -- ^ @index@.
   -> m ()
-glDisableVertexAttribArrayARB v1 = liftIO $ dyn2 ptr_glDisableVertexAttribArrayARB v1
+glDisableVertexAttribArrayARB v1 = liftIO $ dyn3 ptr_glDisableVertexAttribArrayARB v1
 
 {-# NOINLINE ptr_glDisableVertexAttribArrayARB #-}
 ptr_glDisableVertexAttribArrayARB :: FunPtr (GLuint -> IO ())
@@ -382,7 +481,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisablei v1 v2 = liftIO $ dyn16 ptr_glDisablei v1 v2
+glDisablei v1 v2 = liftIO $ dyn17 ptr_glDisablei v1 v2
 
 {-# NOINLINE ptr_glDisablei #-}
 ptr_glDisablei :: FunPtr (GLenum -> GLuint -> IO ())
@@ -396,7 +495,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableiEXT v1 v2 = liftIO $ dyn16 ptr_glDisableiEXT v1 v2
+glDisableiEXT v1 v2 = liftIO $ dyn17 ptr_glDisableiEXT v1 v2
 
 {-# NOINLINE ptr_glDisableiEXT #-}
 ptr_glDisableiEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -410,7 +509,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableiNV v1 v2 = liftIO $ dyn16 ptr_glDisableiNV v1 v2
+glDisableiNV v1 v2 = liftIO $ dyn17 ptr_glDisableiNV v1 v2
 
 {-# NOINLINE ptr_glDisableiNV #-}
 ptr_glDisableiNV :: FunPtr (GLenum -> GLuint -> IO ())
@@ -424,7 +523,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glDisableiOES v1 v2 = liftIO $ dyn16 ptr_glDisableiOES v1 v2
+glDisableiOES v1 v2 = liftIO $ dyn17 ptr_glDisableiOES v1 v2
 
 {-# NOINLINE ptr_glDisableiOES #-}
 ptr_glDisableiOES :: FunPtr (GLenum -> GLuint -> IO ())
@@ -438,7 +537,7 @@
   -> GLsizei -- ^ @numAttachments@.
   -> Ptr GLenum -- ^ @attachments@ pointing to @numAttachments@ elements of type @GLenum@.
   -> m ()
-glDiscardFramebufferEXT v1 v2 v3 = liftIO $ dyn226 ptr_glDiscardFramebufferEXT v1 v2 v3
+glDiscardFramebufferEXT v1 v2 v3 = liftIO $ dyn229 ptr_glDiscardFramebufferEXT v1 v2 v3
 
 {-# NOINLINE ptr_glDiscardFramebufferEXT #-}
 ptr_glDiscardFramebufferEXT :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
@@ -453,7 +552,7 @@
   -> GLuint -- ^ @num_groups_y@.
   -> GLuint -- ^ @num_groups_z@.
   -> m ()
-glDispatchCompute v1 v2 v3 = liftIO $ dyn102 ptr_glDispatchCompute v1 v2 v3
+glDispatchCompute v1 v2 v3 = liftIO $ dyn105 ptr_glDispatchCompute v1 v2 v3
 
 {-# NOINLINE ptr_glDispatchCompute #-}
 ptr_glDispatchCompute :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
@@ -470,7 +569,7 @@
   -> GLuint -- ^ @group_size_y@.
   -> GLuint -- ^ @group_size_z@.
   -> m ()
-glDispatchComputeGroupSizeARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn227 ptr_glDispatchComputeGroupSizeARB v1 v2 v3 v4 v5 v6
+glDispatchComputeGroupSizeARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn230 ptr_glDispatchComputeGroupSizeARB v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDispatchComputeGroupSizeARB #-}
 ptr_glDispatchComputeGroupSizeARB :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
@@ -483,7 +582,7 @@
   :: MonadIO m
   => GLintptr -- ^ @indirect@ of type @BufferOffset@.
   -> m ()
-glDispatchComputeIndirect v1 = liftIO $ dyn228 ptr_glDispatchComputeIndirect v1
+glDispatchComputeIndirect v1 = liftIO $ dyn231 ptr_glDispatchComputeIndirect v1
 
 {-# NOINLINE ptr_glDispatchComputeIndirect #-}
 ptr_glDispatchComputeIndirect :: FunPtr (GLintptr -> IO ())
@@ -498,7 +597,7 @@
   -> GLint -- ^ @first@.
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawArrays v1 v2 v3 = liftIO $ dyn229 ptr_glDrawArrays v1 v2 v3
+glDrawArrays v1 v2 v3 = liftIO $ dyn232 ptr_glDrawArrays v1 v2 v3
 
 {-# NOINLINE ptr_glDrawArrays #-}
 ptr_glDrawArrays :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
@@ -513,7 +612,7 @@
   -> GLint -- ^ @first@.
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawArraysEXT v1 v2 v3 = liftIO $ dyn229 ptr_glDrawArraysEXT v1 v2 v3
+glDrawArraysEXT v1 v2 v3 = liftIO $ dyn232 ptr_glDrawArraysEXT v1 v2 v3
 
 {-# NOINLINE ptr_glDrawArraysEXT #-}
 ptr_glDrawArraysEXT :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
@@ -527,7 +626,7 @@
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> Ptr a -- ^ @indirect@.
   -> m ()
-glDrawArraysIndirect v1 v2 = liftIO $ dyn230 ptr_glDrawArraysIndirect v1 v2
+glDrawArraysIndirect v1 v2 = liftIO $ dyn233 ptr_glDrawArraysIndirect v1 v2
 
 {-# NOINLINE ptr_glDrawArraysIndirect #-}
 ptr_glDrawArraysIndirect :: FunPtr (GLenum -> Ptr a -> IO ())
@@ -543,7 +642,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @instancecount@.
   -> m ()
-glDrawArraysInstanced v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawArraysInstanced v1 v2 v3 v4
+glDrawArraysInstanced v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawArraysInstanced v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawArraysInstanced #-}
 ptr_glDrawArraysInstanced :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -559,7 +658,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawArraysInstancedANGLE v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawArraysInstancedANGLE v1 v2 v3 v4
+glDrawArraysInstancedANGLE v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawArraysInstancedANGLE v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawArraysInstancedANGLE #-}
 ptr_glDrawArraysInstancedANGLE :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -575,7 +674,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawArraysInstancedARB v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawArraysInstancedARB v1 v2 v3 v4
+glDrawArraysInstancedARB v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawArraysInstancedARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawArraysInstancedARB #-}
 ptr_glDrawArraysInstancedARB :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -592,7 +691,7 @@
   -> GLsizei -- ^ @instancecount@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawArraysInstancedBaseInstance v1 v2 v3 v4 v5 = liftIO $ dyn232 ptr_glDrawArraysInstancedBaseInstance v1 v2 v3 v4 v5
+glDrawArraysInstancedBaseInstance v1 v2 v3 v4 v5 = liftIO $ dyn235 ptr_glDrawArraysInstancedBaseInstance v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawArraysInstancedBaseInstance #-}
 ptr_glDrawArraysInstancedBaseInstance :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
@@ -609,7 +708,7 @@
   -> GLsizei -- ^ @instancecount@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawArraysInstancedBaseInstanceEXT v1 v2 v3 v4 v5 = liftIO $ dyn232 ptr_glDrawArraysInstancedBaseInstanceEXT v1 v2 v3 v4 v5
+glDrawArraysInstancedBaseInstanceEXT v1 v2 v3 v4 v5 = liftIO $ dyn235 ptr_glDrawArraysInstancedBaseInstanceEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawArraysInstancedBaseInstanceEXT #-}
 ptr_glDrawArraysInstancedBaseInstanceEXT :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
@@ -625,7 +724,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawArraysInstancedEXT v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawArraysInstancedEXT v1 v2 v3 v4
+glDrawArraysInstancedEXT v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawArraysInstancedEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawArraysInstancedEXT #-}
 ptr_glDrawArraysInstancedEXT :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -641,7 +740,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawArraysInstancedNV v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawArraysInstancedNV v1 v2 v3 v4
+glDrawArraysInstancedNV v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawArraysInstancedNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawArraysInstancedNV #-}
 ptr_glDrawArraysInstancedNV :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -654,7 +753,7 @@
   :: MonadIO m
   => GLenum -- ^ @buf@ of type [DrawBufferMode](Graphics-GL-Groups.html#DrawBufferMode).
   -> m ()
-glDrawBuffer v1 = liftIO $ dyn4 ptr_glDrawBuffer v1
+glDrawBuffer v1 = liftIO $ dyn5 ptr_glDrawBuffer v1
 
 {-# NOINLINE ptr_glDrawBuffer #-}
 ptr_glDrawBuffer :: FunPtr (GLenum -> IO ())
@@ -668,7 +767,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
   -> m ()
-glDrawBuffers v1 v2 = liftIO $ dyn233 ptr_glDrawBuffers v1 v2
+glDrawBuffers v1 v2 = liftIO $ dyn236 ptr_glDrawBuffers v1 v2
 
 {-# NOINLINE ptr_glDrawBuffers #-}
 ptr_glDrawBuffers :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
@@ -682,7 +781,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
   -> m ()
-glDrawBuffersARB v1 v2 = liftIO $ dyn233 ptr_glDrawBuffersARB v1 v2
+glDrawBuffersARB v1 v2 = liftIO $ dyn236 ptr_glDrawBuffersARB v1 v2
 
 {-# NOINLINE ptr_glDrawBuffersARB #-}
 ptr_glDrawBuffersARB :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
@@ -696,7 +795,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
   -> m ()
-glDrawBuffersATI v1 v2 = liftIO $ dyn233 ptr_glDrawBuffersATI v1 v2
+glDrawBuffersATI v1 v2 = liftIO $ dyn236 ptr_glDrawBuffersATI v1 v2
 
 {-# NOINLINE ptr_glDrawBuffersATI #-}
 ptr_glDrawBuffersATI :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
@@ -710,7 +809,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@.
   -> m ()
-glDrawBuffersEXT v1 v2 = liftIO $ dyn233 ptr_glDrawBuffersEXT v1 v2
+glDrawBuffersEXT v1 v2 = liftIO $ dyn236 ptr_glDrawBuffersEXT v1 v2
 
 {-# NOINLINE ptr_glDrawBuffersEXT #-}
 ptr_glDrawBuffersEXT :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
@@ -724,7 +823,7 @@
   -> Ptr GLenum -- ^ @location@ pointing to @n@ elements of type @GLenum@.
   -> Ptr GLint -- ^ @indices@ pointing to @n@ elements of type @GLint@.
   -> m ()
-glDrawBuffersIndexedEXT v1 v2 v3 = liftIO $ dyn234 ptr_glDrawBuffersIndexedEXT v1 v2 v3
+glDrawBuffersIndexedEXT v1 v2 v3 = liftIO $ dyn237 ptr_glDrawBuffersIndexedEXT v1 v2 v3
 
 {-# NOINLINE ptr_glDrawBuffersIndexedEXT #-}
 ptr_glDrawBuffersIndexedEXT :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
@@ -737,7 +836,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @GLenum@.
   -> m ()
-glDrawBuffersNV v1 v2 = liftIO $ dyn233 ptr_glDrawBuffersNV v1 v2
+glDrawBuffersNV v1 v2 = liftIO $ dyn236 ptr_glDrawBuffersNV v1 v2
 
 {-# NOINLINE ptr_glDrawBuffersNV #-}
 ptr_glDrawBuffersNV :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
@@ -752,7 +851,7 @@
   -> Ptr GLsizei -- ^ @sizes@.
   -> GLuint -- ^ @count@.
   -> m ()
-glDrawCommandsAddressNV v1 v2 v3 v4 = liftIO $ dyn235 ptr_glDrawCommandsAddressNV v1 v2 v3 v4
+glDrawCommandsAddressNV v1 v2 v3 v4 = liftIO $ dyn238 ptr_glDrawCommandsAddressNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawCommandsAddressNV #-}
 ptr_glDrawCommandsAddressNV :: FunPtr (GLenum -> Ptr GLuint64 -> Ptr GLsizei -> GLuint -> IO ())
@@ -768,7 +867,7 @@
   -> Ptr GLsizei -- ^ @sizes@.
   -> GLuint -- ^ @count@.
   -> m ()
-glDrawCommandsNV v1 v2 v3 v4 v5 = liftIO $ dyn236 ptr_glDrawCommandsNV v1 v2 v3 v4 v5
+glDrawCommandsNV v1 v2 v3 v4 v5 = liftIO $ dyn239 ptr_glDrawCommandsNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawCommandsNV #-}
 ptr_glDrawCommandsNV :: FunPtr (GLenum -> GLuint -> Ptr GLintptr -> Ptr GLsizei -> GLuint -> IO ())
@@ -784,7 +883,7 @@
   -> Ptr GLuint -- ^ @fbos@.
   -> GLuint -- ^ @count@.
   -> m ()
-glDrawCommandsStatesAddressNV v1 v2 v3 v4 v5 = liftIO $ dyn237 ptr_glDrawCommandsStatesAddressNV v1 v2 v3 v4 v5
+glDrawCommandsStatesAddressNV v1 v2 v3 v4 v5 = liftIO $ dyn240 ptr_glDrawCommandsStatesAddressNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawCommandsStatesAddressNV #-}
 ptr_glDrawCommandsStatesAddressNV :: FunPtr (Ptr GLuint64 -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
@@ -801,7 +900,7 @@
   -> Ptr GLuint -- ^ @fbos@.
   -> GLuint -- ^ @count@.
   -> m ()
-glDrawCommandsStatesNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn238 ptr_glDrawCommandsStatesNV v1 v2 v3 v4 v5 v6
+glDrawCommandsStatesNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn241 ptr_glDrawCommandsStatesNV v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawCommandsStatesNV #-}
 ptr_glDrawCommandsStatesNV :: FunPtr (GLuint -> Ptr GLintptr -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
@@ -815,7 +914,7 @@
   -> GLint -- ^ @first@.
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawElementArrayAPPLE v1 v2 v3 = liftIO $ dyn229 ptr_glDrawElementArrayAPPLE v1 v2 v3
+glDrawElementArrayAPPLE v1 v2 v3 = liftIO $ dyn232 ptr_glDrawElementArrayAPPLE v1 v2 v3
 
 {-# NOINLINE ptr_glDrawElementArrayAPPLE #-}
 ptr_glDrawElementArrayAPPLE :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
@@ -828,7 +927,7 @@
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawElementArrayATI v1 v2 = liftIO $ dyn239 ptr_glDrawElementArrayATI v1 v2
+glDrawElementArrayATI v1 v2 = liftIO $ dyn242 ptr_glDrawElementArrayATI v1 v2
 
 {-# NOINLINE ptr_glDrawElementArrayATI #-}
 ptr_glDrawElementArrayATI :: FunPtr (GLenum -> GLsizei -> IO ())
@@ -841,10 +940,10 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> m ()
-glDrawElements v1 v2 v3 v4 = liftIO $ dyn240 ptr_glDrawElements v1 v2 v3 v4
+glDrawElements v1 v2 v3 v4 = liftIO $ dyn243 ptr_glDrawElements v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawElements #-}
 ptr_glDrawElements :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> IO ())
@@ -857,11 +956,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsBaseVertex v1 v2 v3 v4 v5 = liftIO $ dyn241 ptr_glDrawElementsBaseVertex v1 v2 v3 v4 v5
+glDrawElementsBaseVertex v1 v2 v3 v4 v5 = liftIO $ dyn244 ptr_glDrawElementsBaseVertex v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsBaseVertex #-}
 ptr_glDrawElementsBaseVertex :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -874,11 +973,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 = liftIO $ dyn241 ptr_glDrawElementsBaseVertexEXT v1 v2 v3 v4 v5
+glDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 = liftIO $ dyn244 ptr_glDrawElementsBaseVertexEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsBaseVertexEXT #-}
 ptr_glDrawElementsBaseVertexEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -891,11 +990,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsBaseVertexOES v1 v2 v3 v4 v5 = liftIO $ dyn241 ptr_glDrawElementsBaseVertexOES v1 v2 v3 v4 v5
+glDrawElementsBaseVertexOES v1 v2 v3 v4 v5 = liftIO $ dyn244 ptr_glDrawElementsBaseVertexOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsBaseVertexOES #-}
 ptr_glDrawElementsBaseVertexOES :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -910,7 +1009,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @indirect@.
   -> m ()
-glDrawElementsIndirect v1 v2 v3 = liftIO $ dyn242 ptr_glDrawElementsIndirect v1 v2 v3
+glDrawElementsIndirect v1 v2 v3 = liftIO $ dyn245 ptr_glDrawElementsIndirect v1 v2 v3
 
 {-# NOINLINE ptr_glDrawElementsIndirect #-}
 ptr_glDrawElementsIndirect :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
@@ -923,11 +1022,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @instancecount@.
   -> m ()
-glDrawElementsInstanced v1 v2 v3 v4 v5 = liftIO $ dyn243 ptr_glDrawElementsInstanced v1 v2 v3 v4 v5
+glDrawElementsInstanced v1 v2 v3 v4 v5 = liftIO $ dyn246 ptr_glDrawElementsInstanced v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsInstanced #-}
 ptr_glDrawElementsInstanced :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
@@ -944,7 +1043,7 @@
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawElementsInstancedANGLE v1 v2 v3 v4 v5 = liftIO $ dyn243 ptr_glDrawElementsInstancedANGLE v1 v2 v3 v4 v5
+glDrawElementsInstancedANGLE v1 v2 v3 v4 v5 = liftIO $ dyn246 ptr_glDrawElementsInstancedANGLE v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsInstancedANGLE #-}
 ptr_glDrawElementsInstancedANGLE :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
@@ -957,11 +1056,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawElementsInstancedARB v1 v2 v3 v4 v5 = liftIO $ dyn243 ptr_glDrawElementsInstancedARB v1 v2 v3 v4 v5
+glDrawElementsInstancedARB v1 v2 v3 v4 v5 = liftIO $ dyn246 ptr_glDrawElementsInstancedARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsInstancedARB #-}
 ptr_glDrawElementsInstancedARB :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
@@ -979,7 +1078,7 @@
   -> GLsizei -- ^ @instancecount@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawElementsInstancedBaseInstance v1 v2 v3 v4 v5 v6 = liftIO $ dyn244 ptr_glDrawElementsInstancedBaseInstance v1 v2 v3 v4 v5 v6
+glDrawElementsInstancedBaseInstance v1 v2 v3 v4 v5 v6 = liftIO $ dyn247 ptr_glDrawElementsInstancedBaseInstance v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseInstance #-}
 ptr_glDrawElementsInstancedBaseInstance :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
@@ -997,7 +1096,7 @@
   -> GLsizei -- ^ @instancecount@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawElementsInstancedBaseInstanceEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn244 ptr_glDrawElementsInstancedBaseInstanceEXT v1 v2 v3 v4 v5 v6
+glDrawElementsInstancedBaseInstanceEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn247 ptr_glDrawElementsInstancedBaseInstanceEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseInstanceEXT #-}
 ptr_glDrawElementsInstancedBaseInstanceEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
@@ -1010,12 +1109,12 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @instancecount@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsInstancedBaseVertex v1 v2 v3 v4 v5 v6 = liftIO $ dyn245 ptr_glDrawElementsInstancedBaseVertex v1 v2 v3 v4 v5 v6
+glDrawElementsInstancedBaseVertex v1 v2 v3 v4 v5 v6 = liftIO $ dyn248 ptr_glDrawElementsInstancedBaseVertex v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseVertex #-}
 ptr_glDrawElementsInstancedBaseVertex :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
@@ -1034,7 +1133,7 @@
   -> GLint -- ^ @basevertex@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawElementsInstancedBaseVertexBaseInstance v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn246 ptr_glDrawElementsInstancedBaseVertexBaseInstance v1 v2 v3 v4 v5 v6 v7
+glDrawElementsInstancedBaseVertexBaseInstance v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn249 ptr_glDrawElementsInstancedBaseVertexBaseInstance v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseVertexBaseInstance #-}
 ptr_glDrawElementsInstancedBaseVertexBaseInstance :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
@@ -1053,7 +1152,7 @@
   -> GLint -- ^ @basevertex@.
   -> GLuint -- ^ @baseinstance@.
   -> m ()
-glDrawElementsInstancedBaseVertexBaseInstanceEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn246 ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT v1 v2 v3 v4 v5 v6 v7
+glDrawElementsInstancedBaseVertexBaseInstanceEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn249 ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT #-}
 ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
@@ -1066,12 +1165,12 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @instancecount@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsInstancedBaseVertexEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn245 ptr_glDrawElementsInstancedBaseVertexEXT v1 v2 v3 v4 v5 v6
+glDrawElementsInstancedBaseVertexEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn248 ptr_glDrawElementsInstancedBaseVertexEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseVertexEXT #-}
 ptr_glDrawElementsInstancedBaseVertexEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
@@ -1084,12 +1183,12 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @instancecount@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawElementsInstancedBaseVertexOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn245 ptr_glDrawElementsInstancedBaseVertexOES v1 v2 v3 v4 v5 v6
+glDrawElementsInstancedBaseVertexOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn248 ptr_glDrawElementsInstancedBaseVertexOES v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawElementsInstancedBaseVertexOES #-}
 ptr_glDrawElementsInstancedBaseVertexOES :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
@@ -1102,11 +1201,11 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawElementsInstancedEXT v1 v2 v3 v4 v5 = liftIO $ dyn243 ptr_glDrawElementsInstancedEXT v1 v2 v3 v4 v5
+glDrawElementsInstancedEXT v1 v2 v3 v4 v5 = liftIO $ dyn246 ptr_glDrawElementsInstancedEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsInstancedEXT #-}
 ptr_glDrawElementsInstancedEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
@@ -1123,7 +1222,7 @@
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLsizei -- ^ @primcount@.
   -> m ()
-glDrawElementsInstancedNV v1 v2 v3 v4 v5 = liftIO $ dyn243 ptr_glDrawElementsInstancedNV v1 v2 v3 v4 v5
+glDrawElementsInstancedNV v1 v2 v3 v4 v5 = liftIO $ dyn246 ptr_glDrawElementsInstancedNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawElementsInstancedNV #-}
 ptr_glDrawElementsInstancedNV :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
@@ -1138,7 +1237,7 @@
   -> GLsizei -- ^ @count@.
   -> GLsizei -- ^ @width@.
   -> m ()
-glDrawMeshArraysSUN v1 v2 v3 v4 = liftIO $ dyn231 ptr_glDrawMeshArraysSUN v1 v2 v3 v4
+glDrawMeshArraysSUN v1 v2 v3 v4 = liftIO $ dyn234 ptr_glDrawMeshArraysSUN v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawMeshArraysSUN #-}
 ptr_glDrawMeshArraysSUN :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -1155,7 +1254,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
   -> m ()
-glDrawPixels v1 v2 v3 v4 v5 = liftIO $ dyn247 ptr_glDrawPixels v1 v2 v3 v4 v5
+glDrawPixels v1 v2 v3 v4 v5 = liftIO $ dyn250 ptr_glDrawPixels v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawPixels #-}
 ptr_glDrawPixels :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1171,7 +1270,7 @@
   -> GLint -- ^ @first@.
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn248 ptr_glDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5
+glDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn251 ptr_glDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawRangeElementArrayAPPLE #-}
 ptr_glDrawRangeElementArrayAPPLE :: FunPtr (GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ())
@@ -1186,7 +1285,7 @@
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
   -> m ()
-glDrawRangeElementArrayATI v1 v2 v3 v4 = liftIO $ dyn249 ptr_glDrawRangeElementArrayATI v1 v2 v3 v4
+glDrawRangeElementArrayATI v1 v2 v3 v4 = liftIO $ dyn252 ptr_glDrawRangeElementArrayATI v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawRangeElementArrayATI #-}
 ptr_glDrawRangeElementArrayATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
@@ -1201,10 +1300,10 @@
   -> GLuint -- ^ @start@.
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> m ()
-glDrawRangeElements v1 v2 v3 v4 v5 v6 = liftIO $ dyn250 ptr_glDrawRangeElements v1 v2 v3 v4 v5 v6
+glDrawRangeElements v1 v2 v3 v4 v5 v6 = liftIO $ dyn253 ptr_glDrawRangeElements v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawRangeElements #-}
 ptr_glDrawRangeElements :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
@@ -1219,11 +1318,11 @@
   -> GLuint -- ^ @start@.
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawRangeElementsBaseVertex v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn251 ptr_glDrawRangeElementsBaseVertex v1 v2 v3 v4 v5 v6 v7
+glDrawRangeElementsBaseVertex v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn254 ptr_glDrawRangeElementsBaseVertex v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glDrawRangeElementsBaseVertex #-}
 ptr_glDrawRangeElementsBaseVertex :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -1238,11 +1337,11 @@
   -> GLuint -- ^ @start@.
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawRangeElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn251 ptr_glDrawRangeElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 v7
+glDrawRangeElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn254 ptr_glDrawRangeElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glDrawRangeElementsBaseVertexEXT #-}
 ptr_glDrawRangeElementsBaseVertexEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -1257,11 +1356,11 @@
   -> GLuint -- ^ @start@.
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> GLint -- ^ @basevertex@.
   -> m ()
-glDrawRangeElementsBaseVertexOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn251 ptr_glDrawRangeElementsBaseVertexOES v1 v2 v3 v4 v5 v6 v7
+glDrawRangeElementsBaseVertexOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn254 ptr_glDrawRangeElementsBaseVertexOES v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glDrawRangeElementsBaseVertexOES #-}
 ptr_glDrawRangeElementsBaseVertexOES :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
@@ -1276,10 +1375,10 @@
   -> GLuint -- ^ @start@.
   -> GLuint -- ^ @end@.
   -> GLsizei -- ^ @count@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
   -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
   -> m ()
-glDrawRangeElementsEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn250 ptr_glDrawRangeElementsEXT v1 v2 v3 v4 v5 v6
+glDrawRangeElementsEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn253 ptr_glDrawRangeElementsEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glDrawRangeElementsEXT #-}
 ptr_glDrawRangeElementsEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
@@ -1295,7 +1394,7 @@
   -> GLfloat -- ^ @width@.
   -> GLfloat -- ^ @height@.
   -> m ()
-glDrawTexfOES v1 v2 v3 v4 v5 = liftIO $ dyn252 ptr_glDrawTexfOES v1 v2 v3 v4 v5
+glDrawTexfOES v1 v2 v3 v4 v5 = liftIO $ dyn255 ptr_glDrawTexfOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawTexfOES #-}
 ptr_glDrawTexfOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1307,7 +1406,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @coords@.
   -> m ()
-glDrawTexfvOES v1 = liftIO $ dyn41 ptr_glDrawTexfvOES v1
+glDrawTexfvOES v1 = liftIO $ dyn42 ptr_glDrawTexfvOES v1
 
 {-# NOINLINE ptr_glDrawTexfvOES #-}
 ptr_glDrawTexfvOES :: FunPtr (Ptr GLfloat -> IO ())
@@ -1323,7 +1422,7 @@
   -> GLint -- ^ @width@.
   -> GLint -- ^ @height@.
   -> m ()
-glDrawTexiOES v1 v2 v3 v4 v5 = liftIO $ dyn253 ptr_glDrawTexiOES v1 v2 v3 v4 v5
+glDrawTexiOES v1 v2 v3 v4 v5 = liftIO $ dyn256 ptr_glDrawTexiOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawTexiOES #-}
 ptr_glDrawTexiOES :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
@@ -1335,7 +1434,7 @@
   :: MonadIO m
   => Ptr GLint -- ^ @coords@.
   -> m ()
-glDrawTexivOES v1 = liftIO $ dyn43 ptr_glDrawTexivOES v1
+glDrawTexivOES v1 = liftIO $ dyn44 ptr_glDrawTexivOES v1
 
 {-# NOINLINE ptr_glDrawTexivOES #-}
 ptr_glDrawTexivOES :: FunPtr (Ptr GLint -> IO ())
@@ -1351,7 +1450,7 @@
   -> GLshort -- ^ @width@.
   -> GLshort -- ^ @height@.
   -> m ()
-glDrawTexsOES v1 v2 v3 v4 v5 = liftIO $ dyn254 ptr_glDrawTexsOES v1 v2 v3 v4 v5
+glDrawTexsOES v1 v2 v3 v4 v5 = liftIO $ dyn257 ptr_glDrawTexsOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawTexsOES #-}
 ptr_glDrawTexsOES :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
@@ -1363,7 +1462,7 @@
   :: MonadIO m
   => Ptr GLshort -- ^ @coords@.
   -> m ()
-glDrawTexsvOES v1 = liftIO $ dyn45 ptr_glDrawTexsvOES v1
+glDrawTexsvOES v1 = liftIO $ dyn46 ptr_glDrawTexsvOES v1
 
 {-# NOINLINE ptr_glDrawTexsvOES #-}
 ptr_glDrawTexsvOES :: FunPtr (Ptr GLshort -> IO ())
@@ -1385,7 +1484,7 @@
   -> GLfloat -- ^ @s1@.
   -> GLfloat -- ^ @t1@.
   -> m ()
-glDrawTextureNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn255 ptr_glDrawTextureNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glDrawTextureNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn258 ptr_glDrawTextureNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glDrawTextureNV #-}
 ptr_glDrawTextureNV :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1401,7 +1500,7 @@
   -> GLfixed -- ^ @width@.
   -> GLfixed -- ^ @height@.
   -> m ()
-glDrawTexxOES v1 v2 v3 v4 v5 = liftIO $ dyn256 ptr_glDrawTexxOES v1 v2 v3 v4 v5
+glDrawTexxOES v1 v2 v3 v4 v5 = liftIO $ dyn259 ptr_glDrawTexxOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glDrawTexxOES #-}
 ptr_glDrawTexxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1413,7 +1512,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @coords@.
   -> m ()
-glDrawTexxvOES v1 = liftIO $ dyn107 ptr_glDrawTexxvOES v1
+glDrawTexxvOES v1 = liftIO $ dyn110 ptr_glDrawTexxvOES v1
 
 {-# NOINLINE ptr_glDrawTexxvOES #-}
 ptr_glDrawTexxvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -1427,7 +1526,7 @@
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLuint -- ^ @id@.
   -> m ()
-glDrawTransformFeedback v1 v2 = liftIO $ dyn16 ptr_glDrawTransformFeedback v1 v2
+glDrawTransformFeedback v1 v2 = liftIO $ dyn17 ptr_glDrawTransformFeedback v1 v2
 
 {-# NOINLINE ptr_glDrawTransformFeedback #-}
 ptr_glDrawTransformFeedback :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1441,7 +1540,7 @@
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLuint -- ^ @id@.
   -> m ()
-glDrawTransformFeedbackEXT v1 v2 = liftIO $ dyn16 ptr_glDrawTransformFeedbackEXT v1 v2
+glDrawTransformFeedbackEXT v1 v2 = liftIO $ dyn17 ptr_glDrawTransformFeedbackEXT v1 v2
 
 {-# NOINLINE ptr_glDrawTransformFeedbackEXT #-}
 ptr_glDrawTransformFeedbackEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1456,7 +1555,7 @@
   -> GLuint -- ^ @id@.
   -> GLsizei -- ^ @instancecount@.
   -> m ()
-glDrawTransformFeedbackInstanced v1 v2 v3 = liftIO $ dyn257 ptr_glDrawTransformFeedbackInstanced v1 v2 v3
+glDrawTransformFeedbackInstanced v1 v2 v3 = liftIO $ dyn260 ptr_glDrawTransformFeedbackInstanced v1 v2 v3
 
 {-# NOINLINE ptr_glDrawTransformFeedbackInstanced #-}
 ptr_glDrawTransformFeedbackInstanced :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
@@ -1471,7 +1570,7 @@
   -> GLuint -- ^ @id@.
   -> GLsizei -- ^ @instancecount@.
   -> m ()
-glDrawTransformFeedbackInstancedEXT v1 v2 v3 = liftIO $ dyn257 ptr_glDrawTransformFeedbackInstancedEXT v1 v2 v3
+glDrawTransformFeedbackInstancedEXT v1 v2 v3 = liftIO $ dyn260 ptr_glDrawTransformFeedbackInstancedEXT v1 v2 v3
 
 {-# NOINLINE ptr_glDrawTransformFeedbackInstancedEXT #-}
 ptr_glDrawTransformFeedbackInstancedEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
@@ -1485,7 +1584,7 @@
   => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
   -> GLuint -- ^ @id@.
   -> m ()
-glDrawTransformFeedbackNV v1 v2 = liftIO $ dyn16 ptr_glDrawTransformFeedbackNV v1 v2
+glDrawTransformFeedbackNV v1 v2 = liftIO $ dyn17 ptr_glDrawTransformFeedbackNV v1 v2
 
 {-# NOINLINE ptr_glDrawTransformFeedbackNV #-}
 ptr_glDrawTransformFeedbackNV :: FunPtr (GLenum -> GLuint -> IO ())
@@ -1500,7 +1599,7 @@
   -> GLuint -- ^ @id@.
   -> GLuint -- ^ @stream@.
   -> m ()
-glDrawTransformFeedbackStream v1 v2 v3 = liftIO $ dyn17 ptr_glDrawTransformFeedbackStream v1 v2 v3
+glDrawTransformFeedbackStream v1 v2 v3 = liftIO $ dyn18 ptr_glDrawTransformFeedbackStream v1 v2 v3
 
 {-# NOINLINE ptr_glDrawTransformFeedbackStream #-}
 ptr_glDrawTransformFeedbackStream :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
@@ -1516,115 +1615,31 @@
   -> GLuint -- ^ @stream@.
   -> GLsizei -- ^ @instancecount@.
   -> m ()
-glDrawTransformFeedbackStreamInstanced v1 v2 v3 v4 = liftIO $ dyn249 ptr_glDrawTransformFeedbackStreamInstanced v1 v2 v3 v4
+glDrawTransformFeedbackStreamInstanced v1 v2 v3 v4 = liftIO $ dyn252 ptr_glDrawTransformFeedbackStreamInstanced v1 v2 v3 v4
 
 {-# NOINLINE ptr_glDrawTransformFeedbackStreamInstanced #-}
 ptr_glDrawTransformFeedbackStreamInstanced :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
 ptr_glDrawTransformFeedbackStreamInstanced = unsafePerformIO $ getCommand "glDrawTransformFeedbackStreamInstanced"
 
--- glEGLImageTargetRenderbufferStorageOES --------------------------------------
-
-glEGLImageTargetRenderbufferStorageOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLeglImageOES -- ^ @image@.
-  -> m ()
-glEGLImageTargetRenderbufferStorageOES v1 v2 = liftIO $ dyn258 ptr_glEGLImageTargetRenderbufferStorageOES v1 v2
-
-{-# NOINLINE ptr_glEGLImageTargetRenderbufferStorageOES #-}
-ptr_glEGLImageTargetRenderbufferStorageOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
-ptr_glEGLImageTargetRenderbufferStorageOES = unsafePerformIO $ getCommand "glEGLImageTargetRenderbufferStorageOES"
-
--- glEGLImageTargetTexture2DOES ------------------------------------------------
-
-glEGLImageTargetTexture2DOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLeglImageOES -- ^ @image@.
-  -> m ()
-glEGLImageTargetTexture2DOES v1 v2 = liftIO $ dyn258 ptr_glEGLImageTargetTexture2DOES v1 v2
-
-{-# NOINLINE ptr_glEGLImageTargetTexture2DOES #-}
-ptr_glEGLImageTargetTexture2DOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
-ptr_glEGLImageTargetTexture2DOES = unsafePerformIO $ getCommand "glEGLImageTargetTexture2DOES"
-
--- glEdgeFlag ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>. The vector equivalent of this command is 'glEdgeFlagv'.
-glEdgeFlag
-  :: MonadIO m
-  => GLboolean -- ^ @flag@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glEdgeFlag v1 = liftIO $ dyn191 ptr_glEdgeFlag v1
-
-{-# NOINLINE ptr_glEdgeFlag #-}
-ptr_glEdgeFlag :: FunPtr (GLboolean -> IO ())
-ptr_glEdgeFlag = unsafePerformIO $ getCommand "glEdgeFlag"
-
--- glEdgeFlagFormatNV ----------------------------------------------------------
-
-glEdgeFlagFormatNV
-  :: MonadIO m
-  => GLsizei -- ^ @stride@.
-  -> m ()
-glEdgeFlagFormatNV v1 = liftIO $ dyn259 ptr_glEdgeFlagFormatNV v1
-
-{-# NOINLINE ptr_glEdgeFlagFormatNV #-}
-ptr_glEdgeFlagFormatNV :: FunPtr (GLsizei -> IO ())
-ptr_glEdgeFlagFormatNV = unsafePerformIO $ getCommand "glEdgeFlagFormatNV"
-
--- glEdgeFlagPointer -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlagPointer.xml OpenGL 2.x>.
-glEdgeFlagPointer
-  :: MonadIO m
-  => GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @a@.
-  -> m ()
-glEdgeFlagPointer v1 v2 = liftIO $ dyn260 ptr_glEdgeFlagPointer v1 v2
-
-{-# NOINLINE ptr_glEdgeFlagPointer #-}
-ptr_glEdgeFlagPointer :: FunPtr (GLsizei -> Ptr a -> IO ())
-ptr_glEdgeFlagPointer = unsafePerformIO $ getCommand "glEdgeFlagPointer"
-
--- glEdgeFlagPointerEXT --------------------------------------------------------
-
-glEdgeFlagPointerEXT
-  :: MonadIO m
-  => GLsizei -- ^ @stride@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLboolean -- ^ @pointer@ pointing to @COMPSIZE(stride,count)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glEdgeFlagPointerEXT v1 v2 v3 = liftIO $ dyn261 ptr_glEdgeFlagPointerEXT v1 v2 v3
-
-{-# NOINLINE ptr_glEdgeFlagPointerEXT #-}
-ptr_glEdgeFlagPointerEXT :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
-ptr_glEdgeFlagPointerEXT = unsafePerformIO $ getCommand "glEdgeFlagPointerEXT"
-
--- glEdgeFlagPointerListIBM ----------------------------------------------------
-
-glEdgeFlagPointerListIBM
-  :: MonadIO m
-  => GLint -- ^ @stride@.
-  -> Ptr (Ptr GLboolean) -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @Ptr BooleanPointer@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glEdgeFlagPointerListIBM v1 v2 v3 = liftIO $ dyn262 ptr_glEdgeFlagPointerListIBM v1 v2 v3
-
-{-# NOINLINE ptr_glEdgeFlagPointerListIBM #-}
-ptr_glEdgeFlagPointerListIBM :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
-ptr_glEdgeFlagPointerListIBM = unsafePerformIO $ getCommand "glEdgeFlagPointerListIBM"
-
--- glEdgeFlagv -----------------------------------------------------------------
+-- glDrawVkImageNV -------------------------------------------------------------
 
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>.
-glEdgeFlagv
+glDrawVkImageNV
   :: MonadIO m
-  => Ptr GLboolean -- ^ @flag@ pointing to @1@ element of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  => GLuint64 -- ^ @vkImage@.
+  -> GLuint -- ^ @sampler@.
+  -> GLfloat -- ^ @x0@.
+  -> GLfloat -- ^ @y0@.
+  -> GLfloat -- ^ @x1@.
+  -> GLfloat -- ^ @y1@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @s0@.
+  -> GLfloat -- ^ @t0@.
+  -> GLfloat -- ^ @s1@.
+  -> GLfloat -- ^ @t1@.
   -> m ()
-glEdgeFlagv v1 = liftIO $ dyn263 ptr_glEdgeFlagv v1
+glDrawVkImageNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn261 ptr_glDrawVkImageNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
-{-# NOINLINE ptr_glEdgeFlagv #-}
-ptr_glEdgeFlagv :: FunPtr (Ptr GLboolean -> IO ())
-ptr_glEdgeFlagv = unsafePerformIO $ getCommand "glEdgeFlagv"
+{-# NOINLINE ptr_glDrawVkImageNV #-}
+ptr_glDrawVkImageNV :: FunPtr (GLuint64 -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glDrawVkImageNV = unsafePerformIO $ getCommand "glDrawVkImageNV"
 
diff --git a/src/Graphics/GL/Functions/F07.hs b/src/Graphics/GL/Functions/F07.hs
--- a/src/Graphics/GL/Functions/F07.hs
+++ b/src/Graphics/GL/Functions/F07.hs
@@ -15,6 +15,14 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F07 (
+  glEGLImageTargetRenderbufferStorageOES,
+  glEGLImageTargetTexture2DOES,
+  glEdgeFlag,
+  glEdgeFlagFormatNV,
+  glEdgeFlagPointer,
+  glEdgeFlagPointerEXT,
+  glEdgeFlagPointerListIBM,
+  glEdgeFlagv,
   glElementPointerAPPLE,
   glElementPointerATI,
   glEnable,
@@ -106,15 +114,7 @@
   glFlushRasterSGIX,
   glFlushStaticDataIBM,
   glFlushVertexArrayRangeAPPLE,
-  glFlushVertexArrayRangeNV,
-  glFogCoordFormatNV,
-  glFogCoordPointer,
-  glFogCoordPointerEXT,
-  glFogCoordPointerListIBM,
-  glFogCoordd,
-  glFogCoorddEXT,
-  glFogCoorddv,
-  glFogCoorddvEXT
+  glFlushVertexArrayRangeNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,112 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glEGLImageTargetRenderbufferStorageOES --------------------------------------
+
+glEGLImageTargetRenderbufferStorageOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLeglImageOES -- ^ @image@.
+  -> m ()
+glEGLImageTargetRenderbufferStorageOES v1 v2 = liftIO $ dyn262 ptr_glEGLImageTargetRenderbufferStorageOES v1 v2
+
+{-# NOINLINE ptr_glEGLImageTargetRenderbufferStorageOES #-}
+ptr_glEGLImageTargetRenderbufferStorageOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
+ptr_glEGLImageTargetRenderbufferStorageOES = unsafePerformIO $ getCommand "glEGLImageTargetRenderbufferStorageOES"
+
+-- glEGLImageTargetTexture2DOES ------------------------------------------------
+
+glEGLImageTargetTexture2DOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLeglImageOES -- ^ @image@.
+  -> m ()
+glEGLImageTargetTexture2DOES v1 v2 = liftIO $ dyn262 ptr_glEGLImageTargetTexture2DOES v1 v2
+
+{-# NOINLINE ptr_glEGLImageTargetTexture2DOES #-}
+ptr_glEGLImageTargetTexture2DOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
+ptr_glEGLImageTargetTexture2DOES = unsafePerformIO $ getCommand "glEGLImageTargetTexture2DOES"
+
+-- glEdgeFlag ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>. The vector equivalent of this command is 'glEdgeFlagv'.
+glEdgeFlag
+  :: MonadIO m
+  => GLboolean -- ^ @flag@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glEdgeFlag v1 = liftIO $ dyn194 ptr_glEdgeFlag v1
+
+{-# NOINLINE ptr_glEdgeFlag #-}
+ptr_glEdgeFlag :: FunPtr (GLboolean -> IO ())
+ptr_glEdgeFlag = unsafePerformIO $ getCommand "glEdgeFlag"
+
+-- glEdgeFlagFormatNV ----------------------------------------------------------
+
+glEdgeFlagFormatNV
+  :: MonadIO m
+  => GLsizei -- ^ @stride@.
+  -> m ()
+glEdgeFlagFormatNV v1 = liftIO $ dyn263 ptr_glEdgeFlagFormatNV v1
+
+{-# NOINLINE ptr_glEdgeFlagFormatNV #-}
+ptr_glEdgeFlagFormatNV :: FunPtr (GLsizei -> IO ())
+ptr_glEdgeFlagFormatNV = unsafePerformIO $ getCommand "glEdgeFlagFormatNV"
+
+-- glEdgeFlagPointer -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlagPointer.xml OpenGL 2.x>.
+glEdgeFlagPointer
+  :: MonadIO m
+  => GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @a@.
+  -> m ()
+glEdgeFlagPointer v1 v2 = liftIO $ dyn264 ptr_glEdgeFlagPointer v1 v2
+
+{-# NOINLINE ptr_glEdgeFlagPointer #-}
+ptr_glEdgeFlagPointer :: FunPtr (GLsizei -> Ptr a -> IO ())
+ptr_glEdgeFlagPointer = unsafePerformIO $ getCommand "glEdgeFlagPointer"
+
+-- glEdgeFlagPointerEXT --------------------------------------------------------
+
+glEdgeFlagPointerEXT
+  :: MonadIO m
+  => GLsizei -- ^ @stride@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLboolean -- ^ @pointer@ pointing to @COMPSIZE(stride,count)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glEdgeFlagPointerEXT v1 v2 v3 = liftIO $ dyn265 ptr_glEdgeFlagPointerEXT v1 v2 v3
+
+{-# NOINLINE ptr_glEdgeFlagPointerEXT #-}
+ptr_glEdgeFlagPointerEXT :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
+ptr_glEdgeFlagPointerEXT = unsafePerformIO $ getCommand "glEdgeFlagPointerEXT"
+
+-- glEdgeFlagPointerListIBM ----------------------------------------------------
+
+glEdgeFlagPointerListIBM
+  :: MonadIO m
+  => GLint -- ^ @stride@.
+  -> Ptr (Ptr GLboolean) -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @Ptr BooleanPointer@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glEdgeFlagPointerListIBM v1 v2 v3 = liftIO $ dyn266 ptr_glEdgeFlagPointerListIBM v1 v2 v3
+
+{-# NOINLINE ptr_glEdgeFlagPointerListIBM #-}
+ptr_glEdgeFlagPointerListIBM :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
+ptr_glEdgeFlagPointerListIBM = unsafePerformIO $ getCommand "glEdgeFlagPointerListIBM"
+
+-- glEdgeFlagv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>.
+glEdgeFlagv
+  :: MonadIO m
+  => Ptr GLboolean -- ^ @flag@ pointing to @1@ element of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glEdgeFlagv v1 = liftIO $ dyn267 ptr_glEdgeFlagv v1
+
+{-# NOINLINE ptr_glEdgeFlagv #-}
+ptr_glEdgeFlagv :: FunPtr (Ptr GLboolean -> IO ())
+ptr_glEdgeFlagv = unsafePerformIO $ getCommand "glEdgeFlagv"
+
 -- glElementPointerAPPLE -------------------------------------------------------
 
 glElementPointerAPPLE
@@ -130,7 +236,7 @@
   => GLenum -- ^ @type@ of type @ElementPointerTypeATI@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type)@ elements of type @a@.
   -> m ()
-glElementPointerAPPLE v1 v2 = liftIO $ dyn230 ptr_glElementPointerAPPLE v1 v2
+glElementPointerAPPLE v1 v2 = liftIO $ dyn233 ptr_glElementPointerAPPLE v1 v2
 
 {-# NOINLINE ptr_glElementPointerAPPLE #-}
 ptr_glElementPointerAPPLE :: FunPtr (GLenum -> Ptr a -> IO ())
@@ -143,7 +249,7 @@
   => GLenum -- ^ @type@ of type @ElementPointerTypeATI@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type)@ elements of type @a@.
   -> m ()
-glElementPointerATI v1 v2 = liftIO $ dyn230 ptr_glElementPointerATI v1 v2
+glElementPointerATI v1 v2 = liftIO $ dyn233 ptr_glElementPointerATI v1 v2
 
 {-# NOINLINE ptr_glElementPointerATI #-}
 ptr_glElementPointerATI :: FunPtr (GLenum -> Ptr a -> IO ())
@@ -156,7 +262,7 @@
   :: MonadIO m
   => GLenum -- ^ @cap@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glEnable v1 = liftIO $ dyn4 ptr_glEnable v1
+glEnable v1 = liftIO $ dyn5 ptr_glEnable v1
 
 {-# NOINLINE ptr_glEnable #-}
 ptr_glEnable :: FunPtr (GLenum -> IO ())
@@ -169,7 +275,7 @@
   :: MonadIO m
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glEnableClientState v1 = liftIO $ dyn4 ptr_glEnableClientState v1
+glEnableClientState v1 = liftIO $ dyn5 ptr_glEnableClientState v1
 
 {-# NOINLINE ptr_glEnableClientState #-}
 ptr_glEnableClientState :: FunPtr (GLenum -> IO ())
@@ -182,7 +288,7 @@
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableClientStateIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateIndexedEXT v1 v2
+glEnableClientStateIndexedEXT v1 v2 = liftIO $ dyn17 ptr_glEnableClientStateIndexedEXT v1 v2
 
 {-# NOINLINE ptr_glEnableClientStateIndexedEXT #-}
 ptr_glEnableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -195,7 +301,7 @@
   => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableClientStateiEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateiEXT v1 v2
+glEnableClientStateiEXT v1 v2 = liftIO $ dyn17 ptr_glEnableClientStateiEXT v1 v2
 
 {-# NOINLINE ptr_glEnableClientStateiEXT #-}
 ptr_glEnableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -207,7 +313,7 @@
   :: MonadIO m
   => GLuint -- ^ @driverControl@.
   -> m ()
-glEnableDriverControlQCOM v1 = liftIO $ dyn2 ptr_glEnableDriverControlQCOM v1
+glEnableDriverControlQCOM v1 = liftIO $ dyn3 ptr_glEnableDriverControlQCOM v1
 
 {-# NOINLINE ptr_glEnableDriverControlQCOM #-}
 ptr_glEnableDriverControlQCOM :: FunPtr (GLuint -> IO ())
@@ -221,7 +327,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glEnableIndexedEXT v1 v2
+glEnableIndexedEXT v1 v2 = liftIO $ dyn17 ptr_glEnableIndexedEXT v1 v2
 
 {-# NOINLINE ptr_glEnableIndexedEXT #-}
 ptr_glEnableIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -233,7 +339,7 @@
   :: MonadIO m
   => GLuint -- ^ @id@.
   -> m ()
-glEnableVariantClientStateEXT v1 = liftIO $ dyn2 ptr_glEnableVariantClientStateEXT v1
+glEnableVariantClientStateEXT v1 = liftIO $ dyn3 ptr_glEnableVariantClientStateEXT v1
 
 {-# NOINLINE ptr_glEnableVariantClientStateEXT #-}
 ptr_glEnableVariantClientStateEXT :: FunPtr (GLuint -> IO ())
@@ -247,7 +353,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableVertexArrayAttrib v1 v2 = liftIO $ dyn3 ptr_glEnableVertexArrayAttrib v1 v2
+glEnableVertexArrayAttrib v1 v2 = liftIO $ dyn4 ptr_glEnableVertexArrayAttrib v1 v2
 
 {-# NOINLINE ptr_glEnableVertexArrayAttrib #-}
 ptr_glEnableVertexArrayAttrib :: FunPtr (GLuint -> GLuint -> IO ())
@@ -260,7 +366,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableVertexArrayAttribEXT v1 v2 = liftIO $ dyn3 ptr_glEnableVertexArrayAttribEXT v1 v2
+glEnableVertexArrayAttribEXT v1 v2 = liftIO $ dyn4 ptr_glEnableVertexArrayAttribEXT v1 v2
 
 {-# NOINLINE ptr_glEnableVertexArrayAttribEXT #-}
 ptr_glEnableVertexArrayAttribEXT :: FunPtr (GLuint -> GLuint -> IO ())
@@ -273,7 +379,7 @@
   => GLuint -- ^ @vaobj@.
   -> GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m ()
-glEnableVertexArrayEXT v1 v2 = liftIO $ dyn15 ptr_glEnableVertexArrayEXT v1 v2
+glEnableVertexArrayEXT v1 v2 = liftIO $ dyn16 ptr_glEnableVertexArrayEXT v1 v2
 
 {-# NOINLINE ptr_glEnableVertexArrayEXT #-}
 ptr_glEnableVertexArrayEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -286,7 +392,7 @@
   => GLuint -- ^ @index@.
   -> GLenum -- ^ @pname@.
   -> m ()
-glEnableVertexAttribAPPLE v1 v2 = liftIO $ dyn15 ptr_glEnableVertexAttribAPPLE v1 v2
+glEnableVertexAttribAPPLE v1 v2 = liftIO $ dyn16 ptr_glEnableVertexAttribAPPLE v1 v2
 
 {-# NOINLINE ptr_glEnableVertexAttribAPPLE #-}
 ptr_glEnableVertexAttribAPPLE :: FunPtr (GLuint -> GLenum -> IO ())
@@ -299,7 +405,7 @@
   :: MonadIO m
   => GLuint -- ^ @index@.
   -> m ()
-glEnableVertexAttribArray v1 = liftIO $ dyn2 ptr_glEnableVertexAttribArray v1
+glEnableVertexAttribArray v1 = liftIO $ dyn3 ptr_glEnableVertexAttribArray v1
 
 {-# NOINLINE ptr_glEnableVertexAttribArray #-}
 ptr_glEnableVertexAttribArray :: FunPtr (GLuint -> IO ())
@@ -312,7 +418,7 @@
   :: MonadIO m
   => GLuint -- ^ @index@.
   -> m ()
-glEnableVertexAttribArrayARB v1 = liftIO $ dyn2 ptr_glEnableVertexAttribArrayARB v1
+glEnableVertexAttribArrayARB v1 = liftIO $ dyn3 ptr_glEnableVertexAttribArrayARB v1
 
 {-# NOINLINE ptr_glEnableVertexAttribArrayARB #-}
 ptr_glEnableVertexAttribArrayARB :: FunPtr (GLuint -> IO ())
@@ -326,7 +432,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnablei v1 v2 = liftIO $ dyn16 ptr_glEnablei v1 v2
+glEnablei v1 v2 = liftIO $ dyn17 ptr_glEnablei v1 v2
 
 {-# NOINLINE ptr_glEnablei #-}
 ptr_glEnablei :: FunPtr (GLenum -> GLuint -> IO ())
@@ -340,7 +446,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableiEXT v1 v2 = liftIO $ dyn16 ptr_glEnableiEXT v1 v2
+glEnableiEXT v1 v2 = liftIO $ dyn17 ptr_glEnableiEXT v1 v2
 
 {-# NOINLINE ptr_glEnableiEXT #-}
 ptr_glEnableiEXT :: FunPtr (GLenum -> GLuint -> IO ())
@@ -354,7 +460,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableiNV v1 v2 = liftIO $ dyn16 ptr_glEnableiNV v1 v2
+glEnableiNV v1 v2 = liftIO $ dyn17 ptr_glEnableiNV v1 v2
 
 {-# NOINLINE ptr_glEnableiNV #-}
 ptr_glEnableiNV :: FunPtr (GLenum -> GLuint -> IO ())
@@ -368,7 +474,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEnableiOES v1 v2 = liftIO $ dyn16 ptr_glEnableiOES v1 v2
+glEnableiOES v1 v2 = liftIO $ dyn17 ptr_glEnableiOES v1 v2
 
 {-# NOINLINE ptr_glEnableiOES #-}
 ptr_glEnableiOES :: FunPtr (GLenum -> GLuint -> IO ())
@@ -380,7 +486,7 @@
 glEnd
   :: MonadIO m
   => m ()
-glEnd = liftIO $ dyn10 ptr_glEnd
+glEnd = liftIO $ dyn11 ptr_glEnd
 
 {-# NOINLINE ptr_glEnd #-}
 ptr_glEnd :: FunPtr (IO ())
@@ -392,7 +498,7 @@
 glEndConditionalRender
   :: MonadIO m
   => m ()
-glEndConditionalRender = liftIO $ dyn10 ptr_glEndConditionalRender
+glEndConditionalRender = liftIO $ dyn11 ptr_glEndConditionalRender
 
 {-# NOINLINE ptr_glEndConditionalRender #-}
 ptr_glEndConditionalRender :: FunPtr (IO ())
@@ -404,7 +510,7 @@
 glEndConditionalRenderNV
   :: MonadIO m
   => m ()
-glEndConditionalRenderNV = liftIO $ dyn10 ptr_glEndConditionalRenderNV
+glEndConditionalRenderNV = liftIO $ dyn11 ptr_glEndConditionalRenderNV
 
 {-# NOINLINE ptr_glEndConditionalRenderNV #-}
 ptr_glEndConditionalRenderNV :: FunPtr (IO ())
@@ -416,7 +522,7 @@
 glEndConditionalRenderNVX
   :: MonadIO m
   => m ()
-glEndConditionalRenderNVX = liftIO $ dyn10 ptr_glEndConditionalRenderNVX
+glEndConditionalRenderNVX = liftIO $ dyn11 ptr_glEndConditionalRenderNVX
 
 {-# NOINLINE ptr_glEndConditionalRenderNVX #-}
 ptr_glEndConditionalRenderNVX :: FunPtr (IO ())
@@ -427,7 +533,7 @@
 glEndFragmentShaderATI
   :: MonadIO m
   => m ()
-glEndFragmentShaderATI = liftIO $ dyn10 ptr_glEndFragmentShaderATI
+glEndFragmentShaderATI = liftIO $ dyn11 ptr_glEndFragmentShaderATI
 
 {-# NOINLINE ptr_glEndFragmentShaderATI #-}
 ptr_glEndFragmentShaderATI :: FunPtr (IO ())
@@ -439,7 +545,7 @@
 glEndList
   :: MonadIO m
   => m ()
-glEndList = liftIO $ dyn10 ptr_glEndList
+glEndList = liftIO $ dyn11 ptr_glEndList
 
 {-# NOINLINE ptr_glEndList #-}
 ptr_glEndList :: FunPtr (IO ())
@@ -450,7 +556,7 @@
 glEndOcclusionQueryNV
   :: MonadIO m
   => m ()
-glEndOcclusionQueryNV = liftIO $ dyn10 ptr_glEndOcclusionQueryNV
+glEndOcclusionQueryNV = liftIO $ dyn11 ptr_glEndOcclusionQueryNV
 
 {-# NOINLINE ptr_glEndOcclusionQueryNV #-}
 ptr_glEndOcclusionQueryNV :: FunPtr (IO ())
@@ -462,7 +568,7 @@
   :: MonadIO m
   => GLuint -- ^ @monitor@.
   -> m ()
-glEndPerfMonitorAMD v1 = liftIO $ dyn2 ptr_glEndPerfMonitorAMD v1
+glEndPerfMonitorAMD v1 = liftIO $ dyn3 ptr_glEndPerfMonitorAMD v1
 
 {-# NOINLINE ptr_glEndPerfMonitorAMD #-}
 ptr_glEndPerfMonitorAMD :: FunPtr (GLuint -> IO ())
@@ -474,7 +580,7 @@
   :: MonadIO m
   => GLuint -- ^ @queryHandle@.
   -> m ()
-glEndPerfQueryINTEL v1 = liftIO $ dyn2 ptr_glEndPerfQueryINTEL v1
+glEndPerfQueryINTEL v1 = liftIO $ dyn3 ptr_glEndPerfQueryINTEL v1
 
 {-# NOINLINE ptr_glEndPerfQueryINTEL #-}
 ptr_glEndPerfQueryINTEL :: FunPtr (GLuint -> IO ())
@@ -487,7 +593,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glEndQuery v1 = liftIO $ dyn4 ptr_glEndQuery v1
+glEndQuery v1 = liftIO $ dyn5 ptr_glEndQuery v1
 
 {-# NOINLINE ptr_glEndQuery #-}
 ptr_glEndQuery :: FunPtr (GLenum -> IO ())
@@ -500,7 +606,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glEndQueryARB v1 = liftIO $ dyn4 ptr_glEndQueryARB v1
+glEndQueryARB v1 = liftIO $ dyn5 ptr_glEndQueryARB v1
 
 {-# NOINLINE ptr_glEndQueryARB #-}
 ptr_glEndQueryARB :: FunPtr (GLenum -> IO ())
@@ -512,7 +618,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glEndQueryEXT v1 = liftIO $ dyn4 ptr_glEndQueryEXT v1
+glEndQueryEXT v1 = liftIO $ dyn5 ptr_glEndQueryEXT v1
 
 {-# NOINLINE ptr_glEndQueryEXT #-}
 ptr_glEndQueryEXT :: FunPtr (GLenum -> IO ())
@@ -526,7 +632,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m ()
-glEndQueryIndexed v1 v2 = liftIO $ dyn16 ptr_glEndQueryIndexed v1 v2
+glEndQueryIndexed v1 v2 = liftIO $ dyn17 ptr_glEndQueryIndexed v1 v2
 
 {-# NOINLINE ptr_glEndQueryIndexed #-}
 ptr_glEndQueryIndexed :: FunPtr (GLenum -> GLuint -> IO ())
@@ -538,7 +644,7 @@
   :: MonadIO m
   => GLbitfield -- ^ @preserveMask@.
   -> m ()
-glEndTilingQCOM v1 = liftIO $ dyn69 ptr_glEndTilingQCOM v1
+glEndTilingQCOM v1 = liftIO $ dyn72 ptr_glEndTilingQCOM v1
 
 {-# NOINLINE ptr_glEndTilingQCOM #-}
 ptr_glEndTilingQCOM :: FunPtr (GLbitfield -> IO ())
@@ -550,7 +656,7 @@
 glEndTransformFeedback
   :: MonadIO m
   => m ()
-glEndTransformFeedback = liftIO $ dyn10 ptr_glEndTransformFeedback
+glEndTransformFeedback = liftIO $ dyn11 ptr_glEndTransformFeedback
 
 {-# NOINLINE ptr_glEndTransformFeedback #-}
 ptr_glEndTransformFeedback :: FunPtr (IO ())
@@ -562,7 +668,7 @@
 glEndTransformFeedbackEXT
   :: MonadIO m
   => m ()
-glEndTransformFeedbackEXT = liftIO $ dyn10 ptr_glEndTransformFeedbackEXT
+glEndTransformFeedbackEXT = liftIO $ dyn11 ptr_glEndTransformFeedbackEXT
 
 {-# NOINLINE ptr_glEndTransformFeedbackEXT #-}
 ptr_glEndTransformFeedbackEXT :: FunPtr (IO ())
@@ -574,7 +680,7 @@
 glEndTransformFeedbackNV
   :: MonadIO m
   => m ()
-glEndTransformFeedbackNV = liftIO $ dyn10 ptr_glEndTransformFeedbackNV
+glEndTransformFeedbackNV = liftIO $ dyn11 ptr_glEndTransformFeedbackNV
 
 {-# NOINLINE ptr_glEndTransformFeedbackNV #-}
 ptr_glEndTransformFeedbackNV :: FunPtr (IO ())
@@ -585,7 +691,7 @@
 glEndVertexShaderEXT
   :: MonadIO m
   => m ()
-glEndVertexShaderEXT = liftIO $ dyn10 ptr_glEndVertexShaderEXT
+glEndVertexShaderEXT = liftIO $ dyn11 ptr_glEndVertexShaderEXT
 
 {-# NOINLINE ptr_glEndVertexShaderEXT #-}
 ptr_glEndVertexShaderEXT :: FunPtr (IO ())
@@ -597,7 +703,7 @@
   :: MonadIO m
   => GLuint -- ^ @video_capture_slot@.
   -> m ()
-glEndVideoCaptureNV v1 = liftIO $ dyn2 ptr_glEndVideoCaptureNV v1
+glEndVideoCaptureNV v1 = liftIO $ dyn3 ptr_glEndVideoCaptureNV v1
 
 {-# NOINLINE ptr_glEndVideoCaptureNV #-}
 ptr_glEndVideoCaptureNV :: FunPtr (GLuint -> IO ())
@@ -610,7 +716,7 @@
   :: MonadIO m
   => GLdouble -- ^ @u@ of type @CoordD@.
   -> m ()
-glEvalCoord1d v1 = liftIO $ dyn78 ptr_glEvalCoord1d v1
+glEvalCoord1d v1 = liftIO $ dyn81 ptr_glEvalCoord1d v1
 
 {-# NOINLINE ptr_glEvalCoord1d #-}
 ptr_glEvalCoord1d :: FunPtr (GLdouble -> IO ())
@@ -623,7 +729,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @u@ pointing to @1@ element of type @CoordD@.
   -> m ()
-glEvalCoord1dv v1 = liftIO $ dyn39 ptr_glEvalCoord1dv v1
+glEvalCoord1dv v1 = liftIO $ dyn40 ptr_glEvalCoord1dv v1
 
 {-# NOINLINE ptr_glEvalCoord1dv #-}
 ptr_glEvalCoord1dv :: FunPtr (Ptr GLdouble -> IO ())
@@ -636,7 +742,7 @@
   :: MonadIO m
   => GLfloat -- ^ @u@ of type @CoordF@.
   -> m ()
-glEvalCoord1f v1 = liftIO $ dyn79 ptr_glEvalCoord1f v1
+glEvalCoord1f v1 = liftIO $ dyn82 ptr_glEvalCoord1f v1
 
 {-# NOINLINE ptr_glEvalCoord1f #-}
 ptr_glEvalCoord1f :: FunPtr (GLfloat -> IO ())
@@ -649,7 +755,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @u@ pointing to @1@ element of type @CoordF@.
   -> m ()
-glEvalCoord1fv v1 = liftIO $ dyn41 ptr_glEvalCoord1fv v1
+glEvalCoord1fv v1 = liftIO $ dyn42 ptr_glEvalCoord1fv v1
 
 {-# NOINLINE ptr_glEvalCoord1fv #-}
 ptr_glEvalCoord1fv :: FunPtr (Ptr GLfloat -> IO ())
@@ -661,7 +767,7 @@
   :: MonadIO m
   => GLfixed -- ^ @u@.
   -> m ()
-glEvalCoord1xOES v1 = liftIO $ dyn81 ptr_glEvalCoord1xOES v1
+glEvalCoord1xOES v1 = liftIO $ dyn84 ptr_glEvalCoord1xOES v1
 
 {-# NOINLINE ptr_glEvalCoord1xOES #-}
 ptr_glEvalCoord1xOES :: FunPtr (GLfixed -> IO ())
@@ -673,7 +779,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @coords@ pointing to @1@ element of type @GLfixed@.
   -> m ()
-glEvalCoord1xvOES v1 = liftIO $ dyn107 ptr_glEvalCoord1xvOES v1
+glEvalCoord1xvOES v1 = liftIO $ dyn110 ptr_glEvalCoord1xvOES v1
 
 {-# NOINLINE ptr_glEvalCoord1xvOES #-}
 ptr_glEvalCoord1xvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -687,7 +793,7 @@
   => GLdouble -- ^ @u@ of type @CoordD@.
   -> GLdouble -- ^ @v@ of type @CoordD@.
   -> m ()
-glEvalCoord2d v1 v2 = liftIO $ dyn217 ptr_glEvalCoord2d v1 v2
+glEvalCoord2d v1 v2 = liftIO $ dyn220 ptr_glEvalCoord2d v1 v2
 
 {-# NOINLINE ptr_glEvalCoord2d #-}
 ptr_glEvalCoord2d :: FunPtr (GLdouble -> GLdouble -> IO ())
@@ -700,7 +806,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @u@ pointing to @2@ elements of type @CoordD@.
   -> m ()
-glEvalCoord2dv v1 = liftIO $ dyn39 ptr_glEvalCoord2dv v1
+glEvalCoord2dv v1 = liftIO $ dyn40 ptr_glEvalCoord2dv v1
 
 {-# NOINLINE ptr_glEvalCoord2dv #-}
 ptr_glEvalCoord2dv :: FunPtr (Ptr GLdouble -> IO ())
@@ -714,7 +820,7 @@
   => GLfloat -- ^ @u@ of type @CoordF@.
   -> GLfloat -- ^ @v@ of type @CoordF@.
   -> m ()
-glEvalCoord2f v1 v2 = liftIO $ dyn222 ptr_glEvalCoord2f v1 v2
+glEvalCoord2f v1 v2 = liftIO $ dyn225 ptr_glEvalCoord2f v1 v2
 
 {-# NOINLINE ptr_glEvalCoord2f #-}
 ptr_glEvalCoord2f :: FunPtr (GLfloat -> GLfloat -> IO ())
@@ -727,7 +833,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @u@ pointing to @2@ elements of type @CoordF@.
   -> m ()
-glEvalCoord2fv v1 = liftIO $ dyn41 ptr_glEvalCoord2fv v1
+glEvalCoord2fv v1 = liftIO $ dyn42 ptr_glEvalCoord2fv v1
 
 {-# NOINLINE ptr_glEvalCoord2fv #-}
 ptr_glEvalCoord2fv :: FunPtr (Ptr GLfloat -> IO ())
@@ -740,7 +846,7 @@
   => GLfixed -- ^ @u@.
   -> GLfixed -- ^ @v@.
   -> m ()
-glEvalCoord2xOES v1 v2 = liftIO $ dyn224 ptr_glEvalCoord2xOES v1 v2
+glEvalCoord2xOES v1 v2 = liftIO $ dyn227 ptr_glEvalCoord2xOES v1 v2
 
 {-# NOINLINE ptr_glEvalCoord2xOES #-}
 ptr_glEvalCoord2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
@@ -752,7 +858,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
   -> m ()
-glEvalCoord2xvOES v1 = liftIO $ dyn107 ptr_glEvalCoord2xvOES v1
+glEvalCoord2xvOES v1 = liftIO $ dyn110 ptr_glEvalCoord2xvOES v1
 
 {-# NOINLINE ptr_glEvalCoord2xvOES #-}
 ptr_glEvalCoord2xvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -765,7 +871,7 @@
   => GLenum -- ^ @target@ of type @EvalTargetNV@.
   -> GLenum -- ^ @mode@ of type @EvalMapsModeNV@.
   -> m ()
-glEvalMapsNV v1 v2 = liftIO $ dyn51 ptr_glEvalMapsNV v1 v2
+glEvalMapsNV v1 v2 = liftIO $ dyn52 ptr_glEvalMapsNV v1 v2
 
 {-# NOINLINE ptr_glEvalMapsNV #-}
 ptr_glEvalMapsNV :: FunPtr (GLenum -> GLenum -> IO ())
@@ -780,7 +886,7 @@
   -> GLint -- ^ @i1@ of type @CheckedInt32@.
   -> GLint -- ^ @i2@ of type @CheckedInt32@.
   -> m ()
-glEvalMesh1 v1 v2 v3 = liftIO $ dyn264 ptr_glEvalMesh1 v1 v2 v3
+glEvalMesh1 v1 v2 v3 = liftIO $ dyn268 ptr_glEvalMesh1 v1 v2 v3
 
 {-# NOINLINE ptr_glEvalMesh1 #-}
 ptr_glEvalMesh1 :: FunPtr (GLenum -> GLint -> GLint -> IO ())
@@ -797,7 +903,7 @@
   -> GLint -- ^ @j1@ of type @CheckedInt32@.
   -> GLint -- ^ @j2@ of type @CheckedInt32@.
   -> m ()
-glEvalMesh2 v1 v2 v3 v4 v5 = liftIO $ dyn265 ptr_glEvalMesh2 v1 v2 v3 v4 v5
+glEvalMesh2 v1 v2 v3 v4 v5 = liftIO $ dyn269 ptr_glEvalMesh2 v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glEvalMesh2 #-}
 ptr_glEvalMesh2 :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
@@ -810,7 +916,7 @@
   :: MonadIO m
   => GLint -- ^ @i@.
   -> m ()
-glEvalPoint1 v1 = liftIO $ dyn12 ptr_glEvalPoint1 v1
+glEvalPoint1 v1 = liftIO $ dyn13 ptr_glEvalPoint1 v1
 
 {-# NOINLINE ptr_glEvalPoint1 #-}
 ptr_glEvalPoint1 :: FunPtr (GLint -> IO ())
@@ -824,7 +930,7 @@
   => GLint -- ^ @i@ of type @CheckedInt32@.
   -> GLint -- ^ @j@ of type @CheckedInt32@.
   -> m ()
-glEvalPoint2 v1 v2 = liftIO $ dyn266 ptr_glEvalPoint2 v1 v2
+glEvalPoint2 v1 v2 = liftIO $ dyn270 ptr_glEvalPoint2 v1 v2
 
 {-# NOINLINE ptr_glEvalPoint2 #-}
 ptr_glEvalPoint2 :: FunPtr (GLint -> GLint -> IO ())
@@ -835,7 +941,7 @@
 glEvaluateDepthValuesARB
   :: MonadIO m
   => m ()
-glEvaluateDepthValuesARB = liftIO $ dyn10 ptr_glEvaluateDepthValuesARB
+glEvaluateDepthValuesARB = liftIO $ dyn11 ptr_glEvaluateDepthValuesARB
 
 {-# NOINLINE ptr_glEvaluateDepthValuesARB #-}
 ptr_glEvaluateDepthValuesARB :: FunPtr (IO ())
@@ -849,7 +955,7 @@
   -> GLuint -- ^ @id@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glExecuteProgramNV v1 v2 v3 = liftIO $ dyn267 ptr_glExecuteProgramNV v1 v2 v3
+glExecuteProgramNV v1 v2 v3 = liftIO $ dyn271 ptr_glExecuteProgramNV v1 v2 v3
 
 {-# NOINLINE ptr_glExecuteProgramNV #-}
 ptr_glExecuteProgramNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
@@ -862,7 +968,7 @@
   => GLenum -- ^ @target@.
   -> Ptr (Ptr a) -- ^ @params@.
   -> m ()
-glExtGetBufferPointervQCOM v1 v2 = liftIO $ dyn268 ptr_glExtGetBufferPointervQCOM v1 v2
+glExtGetBufferPointervQCOM v1 v2 = liftIO $ dyn272 ptr_glExtGetBufferPointervQCOM v1 v2
 
 {-# NOINLINE ptr_glExtGetBufferPointervQCOM #-}
 ptr_glExtGetBufferPointervQCOM :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
@@ -876,7 +982,7 @@
   -> GLint -- ^ @maxBuffers@.
   -> Ptr GLint -- ^ @numBuffers@ pointing to @1@ element of type @GLint@.
   -> m ()
-glExtGetBuffersQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetBuffersQCOM v1 v2 v3
+glExtGetBuffersQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetBuffersQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetBuffersQCOM #-}
 ptr_glExtGetBuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -890,7 +996,7 @@
   -> GLint -- ^ @maxFramebuffers@.
   -> Ptr GLint -- ^ @numFramebuffers@ pointing to @1@ element of type @GLint@.
   -> m ()
-glExtGetFramebuffersQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetFramebuffersQCOM v1 v2 v3
+glExtGetFramebuffersQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetFramebuffersQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetFramebuffersQCOM #-}
 ptr_glExtGetFramebuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -905,7 +1011,7 @@
   -> Ptr GLchar -- ^ @source@.
   -> Ptr GLint -- ^ @length@.
   -> m ()
-glExtGetProgramBinarySourceQCOM v1 v2 v3 v4 = liftIO $ dyn270 ptr_glExtGetProgramBinarySourceQCOM v1 v2 v3 v4
+glExtGetProgramBinarySourceQCOM v1 v2 v3 v4 = liftIO $ dyn274 ptr_glExtGetProgramBinarySourceQCOM v1 v2 v3 v4
 
 {-# NOINLINE ptr_glExtGetProgramBinarySourceQCOM #-}
 ptr_glExtGetProgramBinarySourceQCOM :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ())
@@ -919,7 +1025,7 @@
   -> GLint -- ^ @maxPrograms@.
   -> Ptr GLint -- ^ @numPrograms@ pointing to @1@ element of type @GLint@.
   -> m ()
-glExtGetProgramsQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetProgramsQCOM v1 v2 v3
+glExtGetProgramsQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetProgramsQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetProgramsQCOM #-}
 ptr_glExtGetProgramsQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -933,7 +1039,7 @@
   -> GLint -- ^ @maxRenderbuffers@.
   -> Ptr GLint -- ^ @numRenderbuffers@ pointing to @1@ element of type @GLint@.
   -> m ()
-glExtGetRenderbuffersQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetRenderbuffersQCOM v1 v2 v3
+glExtGetRenderbuffersQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetRenderbuffersQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetRenderbuffersQCOM #-}
 ptr_glExtGetRenderbuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -947,7 +1053,7 @@
   -> GLint -- ^ @maxShaders@.
   -> Ptr GLint -- ^ @numShaders@ pointing to @1@ element of type @GLint@.
   -> m ()
-glExtGetShadersQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetShadersQCOM v1 v2 v3
+glExtGetShadersQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetShadersQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetShadersQCOM #-}
 ptr_glExtGetShadersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -963,7 +1069,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glExtGetTexLevelParameterivQCOM v1 v2 v3 v4 v5 = liftIO $ dyn271 ptr_glExtGetTexLevelParameterivQCOM v1 v2 v3 v4 v5
+glExtGetTexLevelParameterivQCOM v1 v2 v3 v4 v5 = liftIO $ dyn275 ptr_glExtGetTexLevelParameterivQCOM v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glExtGetTexLevelParameterivQCOM #-}
 ptr_glExtGetTexLevelParameterivQCOM :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
@@ -985,7 +1091,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr a -- ^ @texels@.
   -> m ()
-glExtGetTexSubImageQCOM v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn272 ptr_glExtGetTexSubImageQCOM v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glExtGetTexSubImageQCOM v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn276 ptr_glExtGetTexSubImageQCOM v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glExtGetTexSubImageQCOM #-}
 ptr_glExtGetTexSubImageQCOM :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -999,7 +1105,7 @@
   -> GLint -- ^ @maxTextures@.
   -> Ptr GLint -- ^ @numTextures@.
   -> m ()
-glExtGetTexturesQCOM v1 v2 v3 = liftIO $ dyn269 ptr_glExtGetTexturesQCOM v1 v2 v3
+glExtGetTexturesQCOM v1 v2 v3 = liftIO $ dyn273 ptr_glExtGetTexturesQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtGetTexturesQCOM #-}
 ptr_glExtGetTexturesQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
@@ -1011,7 +1117,7 @@
   :: MonadIO m
   => GLuint -- ^ @program@.
   -> m GLboolean
-glExtIsProgramBinaryQCOM v1 = liftIO $ dyn273 ptr_glExtIsProgramBinaryQCOM v1
+glExtIsProgramBinaryQCOM v1 = liftIO $ dyn277 ptr_glExtIsProgramBinaryQCOM v1
 
 {-# NOINLINE ptr_glExtIsProgramBinaryQCOM #-}
 ptr_glExtIsProgramBinaryQCOM :: FunPtr (GLuint -> IO GLboolean)
@@ -1025,7 +1131,7 @@
   -> GLenum -- ^ @pname@.
   -> GLint -- ^ @param@.
   -> m ()
-glExtTexObjectStateOverrideiQCOM v1 v2 v3 = liftIO $ dyn62 ptr_glExtTexObjectStateOverrideiQCOM v1 v2 v3
+glExtTexObjectStateOverrideiQCOM v1 v2 v3 = liftIO $ dyn63 ptr_glExtTexObjectStateOverrideiQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glExtTexObjectStateOverrideiQCOM #-}
 ptr_glExtTexObjectStateOverrideiQCOM :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -1039,7 +1145,7 @@
   -> GLuint -- ^ @src@.
   -> GLuint -- ^ @num@.
   -> m ()
-glExtractComponentEXT v1 v2 v3 = liftIO $ dyn102 ptr_glExtractComponentEXT v1 v2 v3
+glExtractComponentEXT v1 v2 v3 = liftIO $ dyn105 ptr_glExtractComponentEXT v1 v2 v3
 
 {-# NOINLINE ptr_glExtractComponentEXT #-}
 ptr_glExtractComponentEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
@@ -1054,7 +1160,7 @@
   -> GLenum -- ^ @type@ of type [FeedbackType](Graphics-GL-Groups.html#FeedbackType).
   -> Ptr GLfloat -- ^ @buffer@ pointing to @size@ elements of type @FeedbackElement@.
   -> m ()
-glFeedbackBuffer v1 v2 v3 = liftIO $ dyn274 ptr_glFeedbackBuffer v1 v2 v3
+glFeedbackBuffer v1 v2 v3 = liftIO $ dyn278 ptr_glFeedbackBuffer v1 v2 v3
 
 {-# NOINLINE ptr_glFeedbackBuffer #-}
 ptr_glFeedbackBuffer :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
@@ -1068,7 +1174,7 @@
   -> GLenum -- ^ @type@.
   -> Ptr GLfixed -- ^ @buffer@ pointing to @n@ elements of type @GLfixed@.
   -> m ()
-glFeedbackBufferxOES v1 v2 v3 = liftIO $ dyn275 ptr_glFeedbackBufferxOES v1 v2 v3
+glFeedbackBufferxOES v1 v2 v3 = liftIO $ dyn279 ptr_glFeedbackBufferxOES v1 v2 v3
 
 {-# NOINLINE ptr_glFeedbackBufferxOES #-}
 ptr_glFeedbackBufferxOES :: FunPtr (GLsizei -> GLenum -> Ptr GLfixed -> IO ())
@@ -1082,7 +1188,7 @@
   => GLenum -- ^ @condition@.
   -> GLbitfield -- ^ @flags@.
   -> m GLsync -- ^ of type @sync@.
-glFenceSync v1 v2 = liftIO $ dyn276 ptr_glFenceSync v1 v2
+glFenceSync v1 v2 = liftIO $ dyn280 ptr_glFenceSync v1 v2
 
 {-# NOINLINE ptr_glFenceSync #-}
 ptr_glFenceSync :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
@@ -1096,7 +1202,7 @@
   => GLenum -- ^ @condition@.
   -> GLbitfield -- ^ @flags@.
   -> m GLsync
-glFenceSyncAPPLE v1 v2 = liftIO $ dyn276 ptr_glFenceSyncAPPLE v1 v2
+glFenceSyncAPPLE v1 v2 = liftIO $ dyn280 ptr_glFenceSyncAPPLE v1 v2
 
 {-# NOINLINE ptr_glFenceSyncAPPLE #-}
 ptr_glFenceSyncAPPLE :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
@@ -1111,7 +1217,7 @@
   -> GLenum -- ^ @mapping@ of type @CombinerMappingNV@.
   -> GLenum -- ^ @componentUsage@ of type @CombinerComponentUsageNV@.
   -> m ()
-glFinalCombinerInputNV v1 v2 v3 v4 = liftIO $ dyn53 ptr_glFinalCombinerInputNV v1 v2 v3 v4
+glFinalCombinerInputNV v1 v2 v3 v4 = liftIO $ dyn54 ptr_glFinalCombinerInputNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFinalCombinerInputNV #-}
 ptr_glFinalCombinerInputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
@@ -1123,7 +1229,7 @@
 glFinish
   :: MonadIO m
   => m ()
-glFinish = liftIO $ dyn10 ptr_glFinish
+glFinish = liftIO $ dyn11 ptr_glFinish
 
 {-# NOINLINE ptr_glFinish #-}
 ptr_glFinish :: FunPtr (IO ())
@@ -1135,7 +1241,7 @@
   :: MonadIO m
   => Ptr GLuint -- ^ @markerp@ pointing to @1@ element of type @GLuint@.
   -> m GLint
-glFinishAsyncSGIX v1 = liftIO $ dyn277 ptr_glFinishAsyncSGIX v1
+glFinishAsyncSGIX v1 = liftIO $ dyn281 ptr_glFinishAsyncSGIX v1
 
 {-# NOINLINE ptr_glFinishAsyncSGIX #-}
 ptr_glFinishAsyncSGIX :: FunPtr (Ptr GLuint -> IO GLint)
@@ -1147,7 +1253,7 @@
   :: MonadIO m
   => GLuint -- ^ @fence@ of type @FenceNV@.
   -> m ()
-glFinishFenceAPPLE v1 = liftIO $ dyn2 ptr_glFinishFenceAPPLE v1
+glFinishFenceAPPLE v1 = liftIO $ dyn3 ptr_glFinishFenceAPPLE v1
 
 {-# NOINLINE ptr_glFinishFenceAPPLE #-}
 ptr_glFinishFenceAPPLE :: FunPtr (GLuint -> IO ())
@@ -1159,7 +1265,7 @@
   :: MonadIO m
   => GLuint -- ^ @fence@ of type @FenceNV@.
   -> m ()
-glFinishFenceNV v1 = liftIO $ dyn2 ptr_glFinishFenceNV v1
+glFinishFenceNV v1 = liftIO $ dyn3 ptr_glFinishFenceNV v1
 
 {-# NOINLINE ptr_glFinishFenceNV #-}
 ptr_glFinishFenceNV :: FunPtr (GLuint -> IO ())
@@ -1172,7 +1278,7 @@
   => GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
   -> GLint -- ^ @name@.
   -> m ()
-glFinishObjectAPPLE v1 v2 = liftIO $ dyn55 ptr_glFinishObjectAPPLE v1 v2
+glFinishObjectAPPLE v1 v2 = liftIO $ dyn56 ptr_glFinishObjectAPPLE v1 v2
 
 {-# NOINLINE ptr_glFinishObjectAPPLE #-}
 ptr_glFinishObjectAPPLE :: FunPtr (GLenum -> GLint -> IO ())
@@ -1183,7 +1289,7 @@
 glFinishTextureSUNX
   :: MonadIO m
   => m ()
-glFinishTextureSUNX = liftIO $ dyn10 ptr_glFinishTextureSUNX
+glFinishTextureSUNX = liftIO $ dyn11 ptr_glFinishTextureSUNX
 
 {-# NOINLINE ptr_glFinishTextureSUNX #-}
 ptr_glFinishTextureSUNX :: FunPtr (IO ())
@@ -1195,7 +1301,7 @@
 glFlush
   :: MonadIO m
   => m ()
-glFlush = liftIO $ dyn10 ptr_glFlush
+glFlush = liftIO $ dyn11 ptr_glFlush
 
 {-# NOINLINE ptr_glFlush #-}
 ptr_glFlush :: FunPtr (IO ())
@@ -1206,11 +1312,11 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFlushMappedBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFlushMappedBufferRange.xhtml OpenGL 4.x>.
 glFlushMappedBufferRange
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
   -> m ()
-glFlushMappedBufferRange v1 v2 v3 = liftIO $ dyn278 ptr_glFlushMappedBufferRange v1 v2 v3
+glFlushMappedBufferRange v1 v2 v3 = liftIO $ dyn282 ptr_glFlushMappedBufferRange v1 v2 v3
 
 {-# NOINLINE ptr_glFlushMappedBufferRange #-}
 ptr_glFlushMappedBufferRange :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
@@ -1225,7 +1331,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> m ()
-glFlushMappedBufferRangeAPPLE v1 v2 v3 = liftIO $ dyn278 ptr_glFlushMappedBufferRangeAPPLE v1 v2 v3
+glFlushMappedBufferRangeAPPLE v1 v2 v3 = liftIO $ dyn282 ptr_glFlushMappedBufferRangeAPPLE v1 v2 v3
 
 {-# NOINLINE ptr_glFlushMappedBufferRangeAPPLE #-}
 ptr_glFlushMappedBufferRangeAPPLE :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
@@ -1240,7 +1346,7 @@
   -> GLintptr -- ^ @offset@.
   -> GLsizeiptr -- ^ @length@.
   -> m ()
-glFlushMappedBufferRangeEXT v1 v2 v3 = liftIO $ dyn278 ptr_glFlushMappedBufferRangeEXT v1 v2 v3
+glFlushMappedBufferRangeEXT v1 v2 v3 = liftIO $ dyn282 ptr_glFlushMappedBufferRangeEXT v1 v2 v3
 
 {-# NOINLINE ptr_glFlushMappedBufferRangeEXT #-}
 ptr_glFlushMappedBufferRangeEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
@@ -1255,7 +1361,7 @@
   -> GLintptr -- ^ @offset@.
   -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
   -> m ()
-glFlushMappedNamedBufferRange v1 v2 v3 = liftIO $ dyn279 ptr_glFlushMappedNamedBufferRange v1 v2 v3
+glFlushMappedNamedBufferRange v1 v2 v3 = liftIO $ dyn283 ptr_glFlushMappedNamedBufferRange v1 v2 v3
 
 {-# NOINLINE ptr_glFlushMappedNamedBufferRange #-}
 ptr_glFlushMappedNamedBufferRange :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -1269,7 +1375,7 @@
   -> GLintptr -- ^ @offset@.
   -> GLsizeiptr -- ^ @length@.
   -> m ()
-glFlushMappedNamedBufferRangeEXT v1 v2 v3 = liftIO $ dyn279 ptr_glFlushMappedNamedBufferRangeEXT v1 v2 v3
+glFlushMappedNamedBufferRangeEXT v1 v2 v3 = liftIO $ dyn283 ptr_glFlushMappedNamedBufferRangeEXT v1 v2 v3
 
 {-# NOINLINE ptr_glFlushMappedNamedBufferRangeEXT #-}
 ptr_glFlushMappedNamedBufferRangeEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -1281,7 +1387,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@ of type @PixelDataRangeTargetNV@.
   -> m ()
-glFlushPixelDataRangeNV v1 = liftIO $ dyn4 ptr_glFlushPixelDataRangeNV v1
+glFlushPixelDataRangeNV v1 = liftIO $ dyn5 ptr_glFlushPixelDataRangeNV v1
 
 {-# NOINLINE ptr_glFlushPixelDataRangeNV #-}
 ptr_glFlushPixelDataRangeNV :: FunPtr (GLenum -> IO ())
@@ -1292,7 +1398,7 @@
 glFlushRasterSGIX
   :: MonadIO m
   => m ()
-glFlushRasterSGIX = liftIO $ dyn10 ptr_glFlushRasterSGIX
+glFlushRasterSGIX = liftIO $ dyn11 ptr_glFlushRasterSGIX
 
 {-# NOINLINE ptr_glFlushRasterSGIX #-}
 ptr_glFlushRasterSGIX :: FunPtr (IO ())
@@ -1304,7 +1410,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glFlushStaticDataIBM v1 = liftIO $ dyn4 ptr_glFlushStaticDataIBM v1
+glFlushStaticDataIBM v1 = liftIO $ dyn5 ptr_glFlushStaticDataIBM v1
 
 {-# NOINLINE ptr_glFlushStaticDataIBM #-}
 ptr_glFlushStaticDataIBM :: FunPtr (GLenum -> IO ())
@@ -1317,7 +1423,7 @@
   => GLsizei -- ^ @length@.
   -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
   -> m ()
-glFlushVertexArrayRangeAPPLE v1 v2 = liftIO $ dyn260 ptr_glFlushVertexArrayRangeAPPLE v1 v2
+glFlushVertexArrayRangeAPPLE v1 v2 = liftIO $ dyn264 ptr_glFlushVertexArrayRangeAPPLE v1 v2
 
 {-# NOINLINE ptr_glFlushVertexArrayRangeAPPLE #-}
 ptr_glFlushVertexArrayRangeAPPLE :: FunPtr (GLsizei -> Ptr a -> IO ())
@@ -1328,119 +1434,9 @@
 glFlushVertexArrayRangeNV
   :: MonadIO m
   => m ()
-glFlushVertexArrayRangeNV = liftIO $ dyn10 ptr_glFlushVertexArrayRangeNV
+glFlushVertexArrayRangeNV = liftIO $ dyn11 ptr_glFlushVertexArrayRangeNV
 
 {-# NOINLINE ptr_glFlushVertexArrayRangeNV #-}
 ptr_glFlushVertexArrayRangeNV :: FunPtr (IO ())
 ptr_glFlushVertexArrayRangeNV = unsafePerformIO $ getCommand "glFlushVertexArrayRangeNV"
-
--- glFogCoordFormatNV ----------------------------------------------------------
-
-glFogCoordFormatNV
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glFogCoordFormatNV v1 v2 = liftIO $ dyn239 ptr_glFogCoordFormatNV v1 v2
-
-{-# NOINLINE ptr_glFogCoordFormatNV #-}
-ptr_glFogCoordFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
-ptr_glFogCoordFormatNV = unsafePerformIO $ getCommand "glFogCoordFormatNV"
-
--- glFogCoordPointer -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoordPointer.xml OpenGL 2.x>.
-glFogCoordPointer
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [FogPointerTypeEXT](Graphics-GL-Groups.html#FogPointerTypeEXT).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glFogCoordPointer v1 v2 v3 = liftIO $ dyn46 ptr_glFogCoordPointer v1 v2 v3
-
-{-# NOINLINE ptr_glFogCoordPointer #-}
-ptr_glFogCoordPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glFogCoordPointer = unsafePerformIO $ getCommand "glFogCoordPointer"
-
--- glFogCoordPointerEXT --------------------------------------------------------
-
--- | This command is an alias for 'glFogCoordPointer'.
-glFogCoordPointerEXT
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [FogPointerTypeEXT](Graphics-GL-Groups.html#FogPointerTypeEXT).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glFogCoordPointerEXT v1 v2 v3 = liftIO $ dyn46 ptr_glFogCoordPointerEXT v1 v2 v3
-
-{-# NOINLINE ptr_glFogCoordPointerEXT #-}
-ptr_glFogCoordPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glFogCoordPointerEXT = unsafePerformIO $ getCommand "glFogCoordPointerEXT"
-
--- glFogCoordPointerListIBM ----------------------------------------------------
-
-glFogCoordPointerListIBM
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [FogPointerTypeIBM](Graphics-GL-Groups.html#FogPointerTypeIBM).
-  -> GLint -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glFogCoordPointerListIBM v1 v2 v3 v4 = liftIO $ dyn280 ptr_glFogCoordPointerListIBM v1 v2 v3 v4
-
-{-# NOINLINE ptr_glFogCoordPointerListIBM #-}
-ptr_glFogCoordPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-ptr_glFogCoordPointerListIBM = unsafePerformIO $ getCommand "glFogCoordPointerListIBM"
-
--- glFogCoordd -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glFogCoorddv'.
-glFogCoordd
-  :: MonadIO m
-  => GLdouble -- ^ @coord@ of type @CoordD@.
-  -> m ()
-glFogCoordd v1 = liftIO $ dyn78 ptr_glFogCoordd v1
-
-{-# NOINLINE ptr_glFogCoordd #-}
-ptr_glFogCoordd :: FunPtr (GLdouble -> IO ())
-ptr_glFogCoordd = unsafePerformIO $ getCommand "glFogCoordd"
-
--- glFogCoorddEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glFogCoorddvEXT'. This command is an alias for 'glFogCoordd'.
-glFogCoorddEXT
-  :: MonadIO m
-  => GLdouble -- ^ @coord@ of type @CoordD@.
-  -> m ()
-glFogCoorddEXT v1 = liftIO $ dyn78 ptr_glFogCoorddEXT v1
-
-{-# NOINLINE ptr_glFogCoorddEXT #-}
-ptr_glFogCoorddEXT :: FunPtr (GLdouble -> IO ())
-ptr_glFogCoorddEXT = unsafePerformIO $ getCommand "glFogCoorddEXT"
-
--- glFogCoorddv ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>.
-glFogCoorddv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @coord@ pointing to @1@ element of type @CoordD@.
-  -> m ()
-glFogCoorddv v1 = liftIO $ dyn39 ptr_glFogCoorddv v1
-
-{-# NOINLINE ptr_glFogCoorddv #-}
-ptr_glFogCoorddv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glFogCoorddv = unsafePerformIO $ getCommand "glFogCoorddv"
-
--- glFogCoorddvEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glFogCoorddv'.
-glFogCoorddvEXT
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @coord@ pointing to @1@ element of type @CoordD@.
-  -> m ()
-glFogCoorddvEXT v1 = liftIO $ dyn39 ptr_glFogCoorddvEXT v1
-
-{-# NOINLINE ptr_glFogCoorddvEXT #-}
-ptr_glFogCoorddvEXT :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glFogCoorddvEXT = unsafePerformIO $ getCommand "glFogCoorddvEXT"
 
diff --git a/src/Graphics/GL/Functions/F08.hs b/src/Graphics/GL/Functions/F08.hs
--- a/src/Graphics/GL/Functions/F08.hs
+++ b/src/Graphics/GL/Functions/F08.hs
@@ -15,6 +15,14 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F08 (
+  glFogCoordFormatNV,
+  glFogCoordPointer,
+  glFogCoordPointerEXT,
+  glFogCoordPointerListIBM,
+  glFogCoordd,
+  glFogCoorddEXT,
+  glFogCoorddv,
+  glFogCoorddvEXT,
   glFogCoordf,
   glFogCoordfEXT,
   glFogCoordfv,
@@ -48,6 +56,9 @@
   glFrameZoomSGIX,
   glFramebufferDrawBufferEXT,
   glFramebufferDrawBuffersEXT,
+  glFramebufferFetchBarrierQCOM,
+  glFramebufferFoveationConfigQCOM,
+  glFramebufferFoveationParametersQCOM,
   glFramebufferParameteri,
   glFramebufferPixelLocalStorageSizeEXT,
   glFramebufferReadBufferEXT,
@@ -103,18 +114,7 @@
   glGenPerfMonitorsAMD,
   glGenProgramPipelines,
   glGenProgramPipelinesEXT,
-  glGenProgramsARB,
-  glGenProgramsNV,
-  glGenQueries,
-  glGenQueriesARB,
-  glGenQueriesEXT,
-  glGenRenderbuffers,
-  glGenRenderbuffersEXT,
-  glGenRenderbuffersOES,
-  glGenSamplers,
-  glGenSymbolsEXT,
-  glGenTextures,
-  glGenTexturesEXT
+  glGenProgramsARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,116 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glFogCoordFormatNV ----------------------------------------------------------
+
+glFogCoordFormatNV
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glFogCoordFormatNV v1 v2 = liftIO $ dyn242 ptr_glFogCoordFormatNV v1 v2
+
+{-# NOINLINE ptr_glFogCoordFormatNV #-}
+ptr_glFogCoordFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
+ptr_glFogCoordFormatNV = unsafePerformIO $ getCommand "glFogCoordFormatNV"
+
+-- glFogCoordPointer -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoordPointer.xml OpenGL 2.x>.
+glFogCoordPointer
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [FogPointerTypeEXT](Graphics-GL-Groups.html#FogPointerTypeEXT).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glFogCoordPointer v1 v2 v3 = liftIO $ dyn47 ptr_glFogCoordPointer v1 v2 v3
+
+{-# NOINLINE ptr_glFogCoordPointer #-}
+ptr_glFogCoordPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glFogCoordPointer = unsafePerformIO $ getCommand "glFogCoordPointer"
+
+-- glFogCoordPointerEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glFogCoordPointer'.
+glFogCoordPointerEXT
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [FogPointerTypeEXT](Graphics-GL-Groups.html#FogPointerTypeEXT).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glFogCoordPointerEXT v1 v2 v3 = liftIO $ dyn47 ptr_glFogCoordPointerEXT v1 v2 v3
+
+{-# NOINLINE ptr_glFogCoordPointerEXT #-}
+ptr_glFogCoordPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glFogCoordPointerEXT = unsafePerformIO $ getCommand "glFogCoordPointerEXT"
+
+-- glFogCoordPointerListIBM ----------------------------------------------------
+
+glFogCoordPointerListIBM
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [FogPointerTypeIBM](Graphics-GL-Groups.html#FogPointerTypeIBM).
+  -> GLint -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glFogCoordPointerListIBM v1 v2 v3 v4 = liftIO $ dyn284 ptr_glFogCoordPointerListIBM v1 v2 v3 v4
+
+{-# NOINLINE ptr_glFogCoordPointerListIBM #-}
+ptr_glFogCoordPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+ptr_glFogCoordPointerListIBM = unsafePerformIO $ getCommand "glFogCoordPointerListIBM"
+
+-- glFogCoordd -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glFogCoorddv'.
+glFogCoordd
+  :: MonadIO m
+  => GLdouble -- ^ @coord@ of type @CoordD@.
+  -> m ()
+glFogCoordd v1 = liftIO $ dyn81 ptr_glFogCoordd v1
+
+{-# NOINLINE ptr_glFogCoordd #-}
+ptr_glFogCoordd :: FunPtr (GLdouble -> IO ())
+ptr_glFogCoordd = unsafePerformIO $ getCommand "glFogCoordd"
+
+-- glFogCoorddEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glFogCoorddvEXT'. This command is an alias for 'glFogCoordd'.
+glFogCoorddEXT
+  :: MonadIO m
+  => GLdouble -- ^ @coord@ of type @CoordD@.
+  -> m ()
+glFogCoorddEXT v1 = liftIO $ dyn81 ptr_glFogCoorddEXT v1
+
+{-# NOINLINE ptr_glFogCoorddEXT #-}
+ptr_glFogCoorddEXT :: FunPtr (GLdouble -> IO ())
+ptr_glFogCoorddEXT = unsafePerformIO $ getCommand "glFogCoorddEXT"
+
+-- glFogCoorddv ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>.
+glFogCoorddv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @coord@ pointing to @1@ element of type @CoordD@.
+  -> m ()
+glFogCoorddv v1 = liftIO $ dyn40 ptr_glFogCoorddv v1
+
+{-# NOINLINE ptr_glFogCoorddv #-}
+ptr_glFogCoorddv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glFogCoorddv = unsafePerformIO $ getCommand "glFogCoorddv"
+
+-- glFogCoorddvEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glFogCoorddv'.
+glFogCoorddvEXT
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @coord@ pointing to @1@ element of type @CoordD@.
+  -> m ()
+glFogCoorddvEXT v1 = liftIO $ dyn40 ptr_glFogCoorddvEXT v1
+
+{-# NOINLINE ptr_glFogCoorddvEXT #-}
+ptr_glFogCoorddvEXT :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glFogCoorddvEXT = unsafePerformIO $ getCommand "glFogCoorddvEXT"
+
 -- glFogCoordf -----------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glFogCoordfv'.
@@ -130,7 +240,7 @@
   :: MonadIO m
   => GLfloat -- ^ @coord@ of type @CoordF@.
   -> m ()
-glFogCoordf v1 = liftIO $ dyn79 ptr_glFogCoordf v1
+glFogCoordf v1 = liftIO $ dyn82 ptr_glFogCoordf v1
 
 {-# NOINLINE ptr_glFogCoordf #-}
 ptr_glFogCoordf :: FunPtr (GLfloat -> IO ())
@@ -143,7 +253,7 @@
   :: MonadIO m
   => GLfloat -- ^ @coord@ of type @CoordF@.
   -> m ()
-glFogCoordfEXT v1 = liftIO $ dyn79 ptr_glFogCoordfEXT v1
+glFogCoordfEXT v1 = liftIO $ dyn82 ptr_glFogCoordfEXT v1
 
 {-# NOINLINE ptr_glFogCoordfEXT #-}
 ptr_glFogCoordfEXT :: FunPtr (GLfloat -> IO ())
@@ -156,7 +266,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @coord@ pointing to @1@ element of type @CoordF@.
   -> m ()
-glFogCoordfv v1 = liftIO $ dyn41 ptr_glFogCoordfv v1
+glFogCoordfv v1 = liftIO $ dyn42 ptr_glFogCoordfv v1
 
 {-# NOINLINE ptr_glFogCoordfv #-}
 ptr_glFogCoordfv :: FunPtr (Ptr GLfloat -> IO ())
@@ -169,7 +279,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @coord@ pointing to @1@ element of type @CoordF@.
   -> m ()
-glFogCoordfvEXT v1 = liftIO $ dyn41 ptr_glFogCoordfvEXT v1
+glFogCoordfvEXT v1 = liftIO $ dyn42 ptr_glFogCoordfvEXT v1
 
 {-# NOINLINE ptr_glFogCoordfvEXT #-}
 ptr_glFogCoordfvEXT :: FunPtr (Ptr GLfloat -> IO ())
@@ -182,7 +292,7 @@
   :: MonadIO m
   => GLhalfNV -- ^ @fog@ of type @Half16NV@.
   -> m ()
-glFogCoordhNV v1 = liftIO $ dyn281 ptr_glFogCoordhNV v1
+glFogCoordhNV v1 = liftIO $ dyn285 ptr_glFogCoordhNV v1
 
 {-# NOINLINE ptr_glFogCoordhNV #-}
 ptr_glFogCoordhNV :: FunPtr (GLhalfNV -> IO ())
@@ -194,7 +304,7 @@
   :: MonadIO m
   => Ptr GLhalfNV -- ^ @fog@ pointing to @1@ element of type @Half16NV@.
   -> m ()
-glFogCoordhvNV v1 = liftIO $ dyn99 ptr_glFogCoordhvNV v1
+glFogCoordhvNV v1 = liftIO $ dyn102 ptr_glFogCoordhvNV v1
 
 {-# NOINLINE ptr_glFogCoordhvNV #-}
 ptr_glFogCoordhvNV :: FunPtr (Ptr GLhalfNV -> IO ())
@@ -207,7 +317,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
   -> m ()
-glFogFuncSGIS v1 v2 = liftIO $ dyn192 ptr_glFogFuncSGIS v1 v2
+glFogFuncSGIS v1 v2 = liftIO $ dyn195 ptr_glFogFuncSGIS v1 v2
 
 {-# NOINLINE ptr_glFogFuncSGIS #-}
 ptr_glFogFuncSGIS :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
@@ -235,7 +345,7 @@
   => GLenum -- ^ @pname@ of type [FogParameter](Graphics-GL-Groups.html#FogParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glFogfv v1 v2 = liftIO $ dyn94 ptr_glFogfv v1 v2
+glFogfv v1 v2 = liftIO $ dyn97 ptr_glFogfv v1 v2
 
 {-# NOINLINE ptr_glFogfv #-}
 ptr_glFogfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -249,7 +359,7 @@
   => GLenum -- ^ @pname@ of type [FogParameter](Graphics-GL-Groups.html#FogParameter).
   -> GLint -- ^ @param@ of type @CheckedInt32@.
   -> m ()
-glFogi v1 v2 = liftIO $ dyn55 ptr_glFogi v1 v2
+glFogi v1 v2 = liftIO $ dyn56 ptr_glFogi v1 v2
 
 {-# NOINLINE ptr_glFogi #-}
 ptr_glFogi :: FunPtr (GLenum -> GLint -> IO ())
@@ -263,7 +373,7 @@
   => GLenum -- ^ @pname@ of type [FogParameter](Graphics-GL-Groups.html#FogParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glFogiv v1 v2 = liftIO $ dyn136 ptr_glFogiv v1 v2
+glFogiv v1 v2 = liftIO $ dyn139 ptr_glFogiv v1 v2
 
 {-# NOINLINE ptr_glFogiv #-}
 ptr_glFogiv :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -302,7 +412,7 @@
   => GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glFogxv v1 v2 = liftIO $ dyn95 ptr_glFogxv v1 v2
+glFogxv v1 v2 = liftIO $ dyn98 ptr_glFogxv v1 v2
 
 {-# NOINLINE ptr_glFogxv #-}
 ptr_glFogxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -315,7 +425,7 @@
   => GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glFogxvOES v1 v2 = liftIO $ dyn95 ptr_glFogxvOES v1 v2
+glFogxvOES v1 v2 = liftIO $ dyn98 ptr_glFogxvOES v1 v2
 
 {-# NOINLINE ptr_glFogxvOES #-}
 ptr_glFogxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -328,7 +438,7 @@
   => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
   -> GLenum -- ^ @mode@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> m ()
-glFragmentColorMaterialSGIX v1 v2 = liftIO $ dyn51 ptr_glFragmentColorMaterialSGIX v1 v2
+glFragmentColorMaterialSGIX v1 v2 = liftIO $ dyn52 ptr_glFragmentColorMaterialSGIX v1 v2
 
 {-# NOINLINE ptr_glFragmentColorMaterialSGIX #-}
 ptr_glFragmentColorMaterialSGIX :: FunPtr (GLenum -> GLenum -> IO ())
@@ -340,7 +450,7 @@
   :: MonadIO m
   => GLuint -- ^ @color@.
   -> m ()
-glFragmentCoverageColorNV v1 = liftIO $ dyn2 ptr_glFragmentCoverageColorNV v1
+glFragmentCoverageColorNV v1 = liftIO $ dyn3 ptr_glFragmentCoverageColorNV v1
 
 {-# NOINLINE ptr_glFragmentCoverageColorNV #-}
 ptr_glFragmentCoverageColorNV :: FunPtr (GLuint -> IO ())
@@ -366,7 +476,7 @@
   => GLenum -- ^ @pname@ of type [FragmentLightModelParameterSGIX](Graphics-GL-Groups.html#FragmentLightModelParameterSGIX).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glFragmentLightModelfvSGIX v1 v2 = liftIO $ dyn94 ptr_glFragmentLightModelfvSGIX v1 v2
+glFragmentLightModelfvSGIX v1 v2 = liftIO $ dyn97 ptr_glFragmentLightModelfvSGIX v1 v2
 
 {-# NOINLINE ptr_glFragmentLightModelfvSGIX #-}
 ptr_glFragmentLightModelfvSGIX :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -379,7 +489,7 @@
   => GLenum -- ^ @pname@ of type [FragmentLightModelParameterSGIX](Graphics-GL-Groups.html#FragmentLightModelParameterSGIX).
   -> GLint -- ^ @param@ of type @CheckedInt32@.
   -> m ()
-glFragmentLightModeliSGIX v1 v2 = liftIO $ dyn55 ptr_glFragmentLightModeliSGIX v1 v2
+glFragmentLightModeliSGIX v1 v2 = liftIO $ dyn56 ptr_glFragmentLightModeliSGIX v1 v2
 
 {-# NOINLINE ptr_glFragmentLightModeliSGIX #-}
 ptr_glFragmentLightModeliSGIX :: FunPtr (GLenum -> GLint -> IO ())
@@ -392,7 +502,7 @@
   => GLenum -- ^ @pname@ of type [FragmentLightModelParameterSGIX](Graphics-GL-Groups.html#FragmentLightModelParameterSGIX).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glFragmentLightModelivSGIX v1 v2 = liftIO $ dyn136 ptr_glFragmentLightModelivSGIX v1 v2
+glFragmentLightModelivSGIX v1 v2 = liftIO $ dyn139 ptr_glFragmentLightModelivSGIX v1 v2
 
 {-# NOINLINE ptr_glFragmentLightModelivSGIX #-}
 ptr_glFragmentLightModelivSGIX :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -406,7 +516,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
   -> m ()
-glFragmentLightfSGIX v1 v2 v3 = liftIO $ dyn161 ptr_glFragmentLightfSGIX v1 v2 v3
+glFragmentLightfSGIX v1 v2 v3 = liftIO $ dyn164 ptr_glFragmentLightfSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentLightfSGIX #-}
 ptr_glFragmentLightfSGIX :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
@@ -420,7 +530,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glFragmentLightfvSGIX v1 v2 v3
+glFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn135 ptr_glFragmentLightfvSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentLightfvSGIX #-}
 ptr_glFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -434,7 +544,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> GLint -- ^ @param@ of type @CheckedInt32@.
   -> m ()
-glFragmentLightiSGIX v1 v2 v3 = liftIO $ dyn62 ptr_glFragmentLightiSGIX v1 v2 v3
+glFragmentLightiSGIX v1 v2 v3 = liftIO $ dyn63 ptr_glFragmentLightiSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentLightiSGIX #-}
 ptr_glFragmentLightiSGIX :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -448,7 +558,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glFragmentLightivSGIX v1 v2 v3
+glFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn136 ptr_glFragmentLightivSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentLightivSGIX #-}
 ptr_glFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -462,7 +572,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
   -> m ()
-glFragmentMaterialfSGIX v1 v2 v3 = liftIO $ dyn161 ptr_glFragmentMaterialfSGIX v1 v2 v3
+glFragmentMaterialfSGIX v1 v2 v3 = liftIO $ dyn164 ptr_glFragmentMaterialfSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentMaterialfSGIX #-}
 ptr_glFragmentMaterialfSGIX :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
@@ -476,7 +586,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glFragmentMaterialfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glFragmentMaterialfvSGIX v1 v2 v3
+glFragmentMaterialfvSGIX v1 v2 v3 = liftIO $ dyn135 ptr_glFragmentMaterialfvSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentMaterialfvSGIX #-}
 ptr_glFragmentMaterialfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -490,7 +600,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> GLint -- ^ @param@ of type @CheckedInt32@.
   -> m ()
-glFragmentMaterialiSGIX v1 v2 v3 = liftIO $ dyn62 ptr_glFragmentMaterialiSGIX v1 v2 v3
+glFragmentMaterialiSGIX v1 v2 v3 = liftIO $ dyn63 ptr_glFragmentMaterialiSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentMaterialiSGIX #-}
 ptr_glFragmentMaterialiSGIX :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -504,7 +614,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glFragmentMaterialivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glFragmentMaterialivSGIX v1 v2 v3
+glFragmentMaterialivSGIX v1 v2 v3 = liftIO $ dyn136 ptr_glFragmentMaterialivSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glFragmentMaterialivSGIX #-}
 ptr_glFragmentMaterialivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -515,7 +625,7 @@
 glFrameTerminatorGREMEDY
   :: MonadIO m
   => m ()
-glFrameTerminatorGREMEDY = liftIO $ dyn10 ptr_glFrameTerminatorGREMEDY
+glFrameTerminatorGREMEDY = liftIO $ dyn11 ptr_glFrameTerminatorGREMEDY
 
 {-# NOINLINE ptr_glFrameTerminatorGREMEDY #-}
 ptr_glFrameTerminatorGREMEDY :: FunPtr (IO ())
@@ -527,7 +637,7 @@
   :: MonadIO m
   => GLint -- ^ @factor@ of type @CheckedInt32@.
   -> m ()
-glFrameZoomSGIX v1 = liftIO $ dyn12 ptr_glFrameZoomSGIX v1
+glFrameZoomSGIX v1 = liftIO $ dyn13 ptr_glFrameZoomSGIX v1
 
 {-# NOINLINE ptr_glFrameZoomSGIX #-}
 ptr_glFrameZoomSGIX :: FunPtr (GLint -> IO ())
@@ -540,7 +650,7 @@
   => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
   -> GLenum -- ^ @mode@ of type [DrawBufferMode](Graphics-GL-Groups.html#DrawBufferMode).
   -> m ()
-glFramebufferDrawBufferEXT v1 v2 = liftIO $ dyn15 ptr_glFramebufferDrawBufferEXT v1 v2
+glFramebufferDrawBufferEXT v1 v2 = liftIO $ dyn16 ptr_glFramebufferDrawBufferEXT v1 v2
 
 {-# NOINLINE ptr_glFramebufferDrawBufferEXT #-}
 ptr_glFramebufferDrawBufferEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -554,12 +664,58 @@
   -> GLsizei -- ^ @n@.
   -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type [DrawBufferMode](Graphics-GL-Groups.html#DrawBufferMode).
   -> m ()
-glFramebufferDrawBuffersEXT v1 v2 v3 = liftIO $ dyn282 ptr_glFramebufferDrawBuffersEXT v1 v2 v3
+glFramebufferDrawBuffersEXT v1 v2 v3 = liftIO $ dyn286 ptr_glFramebufferDrawBuffersEXT v1 v2 v3
 
 {-# NOINLINE ptr_glFramebufferDrawBuffersEXT #-}
 ptr_glFramebufferDrawBuffersEXT :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
 ptr_glFramebufferDrawBuffersEXT = unsafePerformIO $ getCommand "glFramebufferDrawBuffersEXT"
 
+-- glFramebufferFetchBarrierQCOM -----------------------------------------------
+
+glFramebufferFetchBarrierQCOM
+  :: MonadIO m
+  => m ()
+glFramebufferFetchBarrierQCOM = liftIO $ dyn11 ptr_glFramebufferFetchBarrierQCOM
+
+{-# NOINLINE ptr_glFramebufferFetchBarrierQCOM #-}
+ptr_glFramebufferFetchBarrierQCOM :: FunPtr (IO ())
+ptr_glFramebufferFetchBarrierQCOM = unsafePerformIO $ getCommand "glFramebufferFetchBarrierQCOM"
+
+-- glFramebufferFoveationConfigQCOM --------------------------------------------
+
+glFramebufferFoveationConfigQCOM
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLuint -- ^ @numLayers@.
+  -> GLuint -- ^ @focalPointsPerLayer@.
+  -> GLuint -- ^ @requestedFeatures@.
+  -> Ptr GLuint -- ^ @providedFeatures@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glFramebufferFoveationConfigQCOM v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferFoveationConfigQCOM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glFramebufferFoveationConfigQCOM #-}
+ptr_glFramebufferFoveationConfigQCOM :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> Ptr GLuint -> IO ())
+ptr_glFramebufferFoveationConfigQCOM = unsafePerformIO $ getCommand "glFramebufferFoveationConfigQCOM"
+
+-- glFramebufferFoveationParametersQCOM ----------------------------------------
+
+glFramebufferFoveationParametersQCOM
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLuint -- ^ @layer@.
+  -> GLuint -- ^ @focalPoint@.
+  -> GLfloat -- ^ @focalX@ of type @CheckedFloat32@.
+  -> GLfloat -- ^ @focalY@ of type @CheckedFloat32@.
+  -> GLfloat -- ^ @gainX@ of type @CheckedFloat32@.
+  -> GLfloat -- ^ @gainY@ of type @CheckedFloat32@.
+  -> GLfloat -- ^ @foveaArea@ of type @CheckedFloat32@.
+  -> m ()
+glFramebufferFoveationParametersQCOM v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn288 ptr_glFramebufferFoveationParametersQCOM v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glFramebufferFoveationParametersQCOM #-}
+ptr_glFramebufferFoveationParametersQCOM :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glFramebufferFoveationParametersQCOM = unsafePerformIO $ getCommand "glFramebufferFoveationParametersQCOM"
+
 -- glFramebufferParameteri -----------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferParameteri.xhtml OpenGL 4.x>.
@@ -569,7 +725,7 @@
   -> GLenum -- ^ @pname@.
   -> GLint -- ^ @param@.
   -> m ()
-glFramebufferParameteri v1 v2 v3 = liftIO $ dyn62 ptr_glFramebufferParameteri v1 v2 v3
+glFramebufferParameteri v1 v2 v3 = liftIO $ dyn63 ptr_glFramebufferParameteri v1 v2 v3
 
 {-# NOINLINE ptr_glFramebufferParameteri #-}
 ptr_glFramebufferParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -582,7 +738,7 @@
   => GLuint -- ^ @target@.
   -> GLsizei -- ^ @size@.
   -> m ()
-glFramebufferPixelLocalStorageSizeEXT v1 v2 = liftIO $ dyn212 ptr_glFramebufferPixelLocalStorageSizeEXT v1 v2
+glFramebufferPixelLocalStorageSizeEXT v1 v2 = liftIO $ dyn215 ptr_glFramebufferPixelLocalStorageSizeEXT v1 v2
 
 {-# NOINLINE ptr_glFramebufferPixelLocalStorageSizeEXT #-}
 ptr_glFramebufferPixelLocalStorageSizeEXT :: FunPtr (GLuint -> GLsizei -> IO ())
@@ -595,7 +751,7 @@
   => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
   -> GLenum -- ^ @mode@ of type [ReadBufferMode](Graphics-GL-Groups.html#ReadBufferMode).
   -> m ()
-glFramebufferReadBufferEXT v1 v2 = liftIO $ dyn15 ptr_glFramebufferReadBufferEXT v1 v2
+glFramebufferReadBufferEXT v1 v2 = liftIO $ dyn16 ptr_glFramebufferReadBufferEXT v1 v2
 
 {-# NOINLINE ptr_glFramebufferReadBufferEXT #-}
 ptr_glFramebufferReadBufferEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -611,7 +767,7 @@
   -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glFramebufferRenderbuffer v1 v2 v3 v4 = liftIO $ dyn283 ptr_glFramebufferRenderbuffer v1 v2 v3 v4
+glFramebufferRenderbuffer v1 v2 v3 v4 = liftIO $ dyn289 ptr_glFramebufferRenderbuffer v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferRenderbuffer #-}
 ptr_glFramebufferRenderbuffer :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
@@ -627,7 +783,7 @@
   -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glFramebufferRenderbufferEXT v1 v2 v3 v4 = liftIO $ dyn283 ptr_glFramebufferRenderbufferEXT v1 v2 v3 v4
+glFramebufferRenderbufferEXT v1 v2 v3 v4 = liftIO $ dyn289 ptr_glFramebufferRenderbufferEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferRenderbufferEXT #-}
 ptr_glFramebufferRenderbufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
@@ -642,7 +798,7 @@
   -> GLenum -- ^ @renderbuffertarget@.
   -> GLuint -- ^ @renderbuffer@.
   -> m ()
-glFramebufferRenderbufferOES v1 v2 v3 v4 = liftIO $ dyn283 ptr_glFramebufferRenderbufferOES v1 v2 v3 v4
+glFramebufferRenderbufferOES v1 v2 v3 v4 = liftIO $ dyn289 ptr_glFramebufferRenderbufferOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferRenderbufferOES #-}
 ptr_glFramebufferRenderbufferOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
@@ -657,7 +813,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glFramebufferSampleLocationsfvARB v1 v2 v3 v4 = liftIO $ dyn284 ptr_glFramebufferSampleLocationsfvARB v1 v2 v3 v4
+glFramebufferSampleLocationsfvARB v1 v2 v3 v4 = liftIO $ dyn290 ptr_glFramebufferSampleLocationsfvARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferSampleLocationsfvARB #-}
 ptr_glFramebufferSampleLocationsfvARB :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
@@ -672,7 +828,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glFramebufferSampleLocationsfvNV v1 v2 v3 v4 = liftIO $ dyn284 ptr_glFramebufferSampleLocationsfvNV v1 v2 v3 v4
+glFramebufferSampleLocationsfvNV v1 v2 v3 v4 = liftIO $ dyn290 ptr_glFramebufferSampleLocationsfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferSampleLocationsfvNV #-}
 ptr_glFramebufferSampleLocationsfvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
@@ -687,7 +843,7 @@
   -> GLuint -- ^ @pixelindex@.
   -> Ptr GLfloat -- ^ @values@.
   -> m ()
-glFramebufferSamplePositionsfvAMD v1 v2 v3 v4 = liftIO $ dyn285 ptr_glFramebufferSamplePositionsfvAMD v1 v2 v3 v4
+glFramebufferSamplePositionsfvAMD v1 v2 v3 v4 = liftIO $ dyn291 ptr_glFramebufferSamplePositionsfvAMD v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferSamplePositionsfvAMD #-}
 ptr_glFramebufferSamplePositionsfvAMD :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
@@ -703,7 +859,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture v1 v2 v3 v4 = liftIO $ dyn286 ptr_glFramebufferTexture v1 v2 v3 v4
+glFramebufferTexture v1 v2 v3 v4 = liftIO $ dyn292 ptr_glFramebufferTexture v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferTexture #-}
 ptr_glFramebufferTexture :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -720,7 +876,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture1D v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferTexture1D v1 v2 v3 v4 v5
+glFramebufferTexture1D v1 v2 v3 v4 v5 = liftIO $ dyn293 ptr_glFramebufferTexture1D v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTexture1D #-}
 ptr_glFramebufferTexture1D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -737,7 +893,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferTexture1DEXT v1 v2 v3 v4 v5
+glFramebufferTexture1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn293 ptr_glFramebufferTexture1DEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTexture1DEXT #-}
 ptr_glFramebufferTexture1DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -754,7 +910,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture2D v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferTexture2D v1 v2 v3 v4 v5
+glFramebufferTexture2D v1 v2 v3 v4 v5 = liftIO $ dyn293 ptr_glFramebufferTexture2D v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTexture2D #-}
 ptr_glFramebufferTexture2D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -772,7 +928,7 @@
   -> GLint -- ^ @xscale@.
   -> GLint -- ^ @yscale@.
   -> m ()
-glFramebufferTexture2DDownsampleIMG v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn288 ptr_glFramebufferTexture2DDownsampleIMG v1 v2 v3 v4 v5 v6 v7
+glFramebufferTexture2DDownsampleIMG v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn294 ptr_glFramebufferTexture2DDownsampleIMG v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glFramebufferTexture2DDownsampleIMG #-}
 ptr_glFramebufferTexture2DDownsampleIMG :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> IO ())
@@ -789,7 +945,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferTexture2DEXT v1 v2 v3 v4 v5
+glFramebufferTexture2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn293 ptr_glFramebufferTexture2DEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTexture2DEXT #-}
 ptr_glFramebufferTexture2DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -806,7 +962,7 @@
   -> GLint -- ^ @level@.
   -> GLsizei -- ^ @samples@.
   -> m ()
-glFramebufferTexture2DMultisampleEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn289 ptr_glFramebufferTexture2DMultisampleEXT v1 v2 v3 v4 v5 v6
+glFramebufferTexture2DMultisampleEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn295 ptr_glFramebufferTexture2DMultisampleEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTexture2DMultisampleEXT #-}
 ptr_glFramebufferTexture2DMultisampleEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
@@ -823,7 +979,7 @@
   -> GLint -- ^ @level@.
   -> GLsizei -- ^ @samples@.
   -> m ()
-glFramebufferTexture2DMultisampleIMG v1 v2 v3 v4 v5 v6 = liftIO $ dyn289 ptr_glFramebufferTexture2DMultisampleIMG v1 v2 v3 v4 v5 v6
+glFramebufferTexture2DMultisampleIMG v1 v2 v3 v4 v5 v6 = liftIO $ dyn295 ptr_glFramebufferTexture2DMultisampleIMG v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTexture2DMultisampleIMG #-}
 ptr_glFramebufferTexture2DMultisampleIMG :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
@@ -839,7 +995,7 @@
   -> GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glFramebufferTexture2DOES v1 v2 v3 v4 v5 = liftIO $ dyn287 ptr_glFramebufferTexture2DOES v1 v2 v3 v4 v5
+glFramebufferTexture2DOES v1 v2 v3 v4 v5 = liftIO $ dyn293 ptr_glFramebufferTexture2DOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTexture2DOES #-}
 ptr_glFramebufferTexture2DOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -857,7 +1013,7 @@
   -> GLint -- ^ @level@.
   -> GLint -- ^ @zoffset@.
   -> m ()
-glFramebufferTexture3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn290 ptr_glFramebufferTexture3D v1 v2 v3 v4 v5 v6
+glFramebufferTexture3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn296 ptr_glFramebufferTexture3D v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTexture3D #-}
 ptr_glFramebufferTexture3D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -875,7 +1031,7 @@
   -> GLint -- ^ @level@.
   -> GLint -- ^ @zoffset@.
   -> m ()
-glFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn290 ptr_glFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6
+glFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn296 ptr_glFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTexture3DEXT #-}
 ptr_glFramebufferTexture3DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -883,7 +1039,6 @@
 
 -- glFramebufferTexture3DOES ---------------------------------------------------
 
--- | This command is an alias for 'glFramebufferTexture3D'.
 glFramebufferTexture3DOES
   :: MonadIO m
   => GLenum -- ^ @target@.
@@ -893,7 +1048,7 @@
   -> GLint -- ^ @level@.
   -> GLint -- ^ @zoffset@.
   -> m ()
-glFramebufferTexture3DOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn290 ptr_glFramebufferTexture3DOES v1 v2 v3 v4 v5 v6
+glFramebufferTexture3DOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn296 ptr_glFramebufferTexture3DOES v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTexture3DOES #-}
 ptr_glFramebufferTexture3DOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -909,7 +1064,7 @@
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureARB v1 v2 v3 v4 = liftIO $ dyn286 ptr_glFramebufferTextureARB v1 v2 v3 v4
+glFramebufferTextureARB v1 v2 v3 v4 = liftIO $ dyn292 ptr_glFramebufferTextureARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferTextureARB #-}
 ptr_glFramebufferTextureARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -925,7 +1080,7 @@
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureEXT v1 v2 v3 v4 = liftIO $ dyn286 ptr_glFramebufferTextureEXT v1 v2 v3 v4
+glFramebufferTextureEXT v1 v2 v3 v4 = liftIO $ dyn292 ptr_glFramebufferTextureEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferTextureEXT #-}
 ptr_glFramebufferTextureEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -941,7 +1096,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> GLenum -- ^ @face@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> m ()
-glFramebufferTextureFaceARB v1 v2 v3 v4 v5 = liftIO $ dyn291 ptr_glFramebufferTextureFaceARB v1 v2 v3 v4 v5
+glFramebufferTextureFaceARB v1 v2 v3 v4 v5 = liftIO $ dyn297 ptr_glFramebufferTextureFaceARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTextureFaceARB #-}
 ptr_glFramebufferTextureFaceARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
@@ -958,7 +1113,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> GLenum -- ^ @face@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> m ()
-glFramebufferTextureFaceEXT v1 v2 v3 v4 v5 = liftIO $ dyn291 ptr_glFramebufferTextureFaceEXT v1 v2 v3 v4 v5
+glFramebufferTextureFaceEXT v1 v2 v3 v4 v5 = liftIO $ dyn297 ptr_glFramebufferTextureFaceEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTextureFaceEXT #-}
 ptr_glFramebufferTextureFaceEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
@@ -975,7 +1130,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> GLint -- ^ @layer@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureLayer v1 v2 v3 v4 v5 = liftIO $ dyn292 ptr_glFramebufferTextureLayer v1 v2 v3 v4 v5
+glFramebufferTextureLayer v1 v2 v3 v4 v5 = liftIO $ dyn298 ptr_glFramebufferTextureLayer v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTextureLayer #-}
 ptr_glFramebufferTextureLayer :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -992,7 +1147,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> GLint -- ^ @layer@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureLayerARB v1 v2 v3 v4 v5 = liftIO $ dyn292 ptr_glFramebufferTextureLayerARB v1 v2 v3 v4 v5
+glFramebufferTextureLayerARB v1 v2 v3 v4 v5 = liftIO $ dyn298 ptr_glFramebufferTextureLayerARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTextureLayerARB #-}
 ptr_glFramebufferTextureLayerARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -1010,7 +1165,7 @@
   -> GLint -- ^ @xscale@.
   -> GLint -- ^ @yscale@.
   -> m ()
-glFramebufferTextureLayerDownsampleIMG v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn293 ptr_glFramebufferTextureLayerDownsampleIMG v1 v2 v3 v4 v5 v6 v7
+glFramebufferTextureLayerDownsampleIMG v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn299 ptr_glFramebufferTextureLayerDownsampleIMG v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glFramebufferTextureLayerDownsampleIMG #-}
 ptr_glFramebufferTextureLayerDownsampleIMG :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
@@ -1027,7 +1182,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> GLint -- ^ @layer@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureLayerEXT v1 v2 v3 v4 v5 = liftIO $ dyn292 ptr_glFramebufferTextureLayerEXT v1 v2 v3 v4 v5
+glFramebufferTextureLayerEXT v1 v2 v3 v4 v5 = liftIO $ dyn298 ptr_glFramebufferTextureLayerEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glFramebufferTextureLayerEXT #-}
 ptr_glFramebufferTextureLayerEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
@@ -1045,7 +1200,7 @@
   -> GLint -- ^ @baseViewIndex@.
   -> GLsizei -- ^ @numViews@.
   -> m ()
-glFramebufferTextureMultisampleMultiviewOVR v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn294 ptr_glFramebufferTextureMultisampleMultiviewOVR v1 v2 v3 v4 v5 v6 v7
+glFramebufferTextureMultisampleMultiviewOVR v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn300 ptr_glFramebufferTextureMultisampleMultiviewOVR v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glFramebufferTextureMultisampleMultiviewOVR #-}
 ptr_glFramebufferTextureMultisampleMultiviewOVR :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> GLint -> GLsizei -> IO ())
@@ -1062,7 +1217,7 @@
   -> GLint -- ^ @baseViewIndex@.
   -> GLsizei -- ^ @numViews@.
   -> m ()
-glFramebufferTextureMultiviewOVR v1 v2 v3 v4 v5 v6 = liftIO $ dyn295 ptr_glFramebufferTextureMultiviewOVR v1 v2 v3 v4 v5 v6
+glFramebufferTextureMultiviewOVR v1 v2 v3 v4 v5 v6 = liftIO $ dyn301 ptr_glFramebufferTextureMultiviewOVR v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFramebufferTextureMultiviewOVR #-}
 ptr_glFramebufferTextureMultiviewOVR :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> GLsizei -> IO ())
@@ -1078,7 +1233,7 @@
   -> GLuint -- ^ @texture@ of type @Texture@.
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> m ()
-glFramebufferTextureOES v1 v2 v3 v4 = liftIO $ dyn286 ptr_glFramebufferTextureOES v1 v2 v3 v4
+glFramebufferTextureOES v1 v2 v3 v4 = liftIO $ dyn292 ptr_glFramebufferTextureOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glFramebufferTextureOES #-}
 ptr_glFramebufferTextureOES :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
@@ -1090,7 +1245,7 @@
   :: MonadIO m
   => GLuint -- ^ @buffer@.
   -> m ()
-glFreeObjectBufferATI v1 = liftIO $ dyn2 ptr_glFreeObjectBufferATI v1
+glFreeObjectBufferATI v1 = liftIO $ dyn3 ptr_glFreeObjectBufferATI v1
 
 {-# NOINLINE ptr_glFreeObjectBufferATI #-}
 ptr_glFreeObjectBufferATI :: FunPtr (GLuint -> IO ())
@@ -1103,7 +1258,7 @@
   :: MonadIO m
   => GLenum -- ^ @mode@ of type [FrontFaceDirection](Graphics-GL-Groups.html#FrontFaceDirection).
   -> m ()
-glFrontFace v1 = liftIO $ dyn4 ptr_glFrontFace v1
+glFrontFace v1 = liftIO $ dyn5 ptr_glFrontFace v1
 
 {-# NOINLINE ptr_glFrontFace #-}
 ptr_glFrontFace :: FunPtr (GLenum -> IO ())
@@ -1121,7 +1276,7 @@
   -> GLdouble -- ^ @zNear@.
   -> GLdouble -- ^ @zFar@.
   -> m ()
-glFrustum v1 v2 v3 v4 v5 v6 = liftIO $ dyn296 ptr_glFrustum v1 v2 v3 v4 v5 v6
+glFrustum v1 v2 v3 v4 v5 v6 = liftIO $ dyn302 ptr_glFrustum v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFrustum #-}
 ptr_glFrustum :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
@@ -1138,7 +1293,7 @@
   -> GLfloat -- ^ @n@.
   -> GLfloat -- ^ @f@.
   -> m ()
-glFrustumf v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glFrustumf v1 v2 v3 v4 v5 v6
+glFrustumf v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glFrustumf v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFrustumf #-}
 ptr_glFrustumf :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1155,7 +1310,7 @@
   -> GLfloat -- ^ @n@.
   -> GLfloat -- ^ @f@.
   -> m ()
-glFrustumfOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glFrustumfOES v1 v2 v3 v4 v5 v6
+glFrustumfOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glFrustumfOES v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFrustumfOES #-}
 ptr_glFrustumfOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
@@ -1172,7 +1327,7 @@
   -> GLfixed -- ^ @n@.
   -> GLfixed -- ^ @f@.
   -> m ()
-glFrustumx v1 v2 v3 v4 v5 v6 = liftIO $ dyn297 ptr_glFrustumx v1 v2 v3 v4 v5 v6
+glFrustumx v1 v2 v3 v4 v5 v6 = liftIO $ dyn303 ptr_glFrustumx v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFrustumx #-}
 ptr_glFrustumx :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1189,7 +1344,7 @@
   -> GLfixed -- ^ @n@.
   -> GLfixed -- ^ @f@.
   -> m ()
-glFrustumxOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn297 ptr_glFrustumxOES v1 v2 v3 v4 v5 v6
+glFrustumxOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn303 ptr_glFrustumxOES v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glFrustumxOES #-}
 ptr_glFrustumxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
@@ -1201,7 +1356,7 @@
   :: MonadIO m
   => GLsizei -- ^ @range@.
   -> m GLuint
-glGenAsyncMarkersSGIX v1 = liftIO $ dyn298 ptr_glGenAsyncMarkersSGIX v1
+glGenAsyncMarkersSGIX v1 = liftIO $ dyn304 ptr_glGenAsyncMarkersSGIX v1
 
 {-# NOINLINE ptr_glGenAsyncMarkersSGIX #-}
 ptr_glGenAsyncMarkersSGIX :: FunPtr (GLsizei -> IO GLuint)
@@ -1215,7 +1370,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenBuffers v1 v2 = liftIO $ dyn193 ptr_glGenBuffers v1 v2
+glGenBuffers v1 v2 = liftIO $ dyn196 ptr_glGenBuffers v1 v2
 
 {-# NOINLINE ptr_glGenBuffers #-}
 ptr_glGenBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1229,7 +1384,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenBuffersARB v1 v2 = liftIO $ dyn193 ptr_glGenBuffersARB v1 v2
+glGenBuffersARB v1 v2 = liftIO $ dyn196 ptr_glGenBuffersARB v1 v2
 
 {-# NOINLINE ptr_glGenBuffersARB #-}
 ptr_glGenBuffersARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1242,7 +1397,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
   -> m ()
-glGenFencesAPPLE v1 v2 = liftIO $ dyn193 ptr_glGenFencesAPPLE v1 v2
+glGenFencesAPPLE v1 v2 = liftIO $ dyn196 ptr_glGenFencesAPPLE v1 v2
 
 {-# NOINLINE ptr_glGenFencesAPPLE #-}
 ptr_glGenFencesAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1255,7 +1410,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
   -> m ()
-glGenFencesNV v1 v2 = liftIO $ dyn193 ptr_glGenFencesNV v1 v2
+glGenFencesNV v1 v2 = liftIO $ dyn196 ptr_glGenFencesNV v1 v2
 
 {-# NOINLINE ptr_glGenFencesNV #-}
 ptr_glGenFencesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1267,7 +1422,7 @@
   :: MonadIO m
   => GLuint -- ^ @range@.
   -> m GLuint
-glGenFragmentShadersATI v1 = liftIO $ dyn299 ptr_glGenFragmentShadersATI v1
+glGenFragmentShadersATI v1 = liftIO $ dyn305 ptr_glGenFragmentShadersATI v1
 
 {-# NOINLINE ptr_glGenFragmentShadersATI #-}
 ptr_glGenFragmentShadersATI :: FunPtr (GLuint -> IO GLuint)
@@ -1281,7 +1436,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenFramebuffers v1 v2 = liftIO $ dyn193 ptr_glGenFramebuffers v1 v2
+glGenFramebuffers v1 v2 = liftIO $ dyn196 ptr_glGenFramebuffers v1 v2
 
 {-# NOINLINE ptr_glGenFramebuffers #-}
 ptr_glGenFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1295,7 +1450,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenFramebuffersEXT v1 v2 = liftIO $ dyn193 ptr_glGenFramebuffersEXT v1 v2
+glGenFramebuffersEXT v1 v2 = liftIO $ dyn196 ptr_glGenFramebuffersEXT v1 v2
 
 {-# NOINLINE ptr_glGenFramebuffersEXT #-}
 ptr_glGenFramebuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1308,7 +1463,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenFramebuffersOES v1 v2 = liftIO $ dyn193 ptr_glGenFramebuffersOES v1 v2
+glGenFramebuffersOES v1 v2 = liftIO $ dyn196 ptr_glGenFramebuffersOES v1 v2
 
 {-# NOINLINE ptr_glGenFramebuffersOES #-}
 ptr_glGenFramebuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1321,7 +1476,7 @@
   :: MonadIO m
   => GLsizei -- ^ @range@.
   -> m GLuint -- ^ of type @List@.
-glGenLists v1 = liftIO $ dyn298 ptr_glGenLists v1
+glGenLists v1 = liftIO $ dyn304 ptr_glGenLists v1
 
 {-# NOINLINE ptr_glGenLists #-}
 ptr_glGenLists :: FunPtr (GLsizei -> IO GLuint)
@@ -1335,7 +1490,7 @@
   -> GLuint -- ^ @num@.
   -> Ptr GLuint -- ^ @names@ pointing to @num@ elements of type @GLuint@.
   -> m ()
-glGenNamesAMD v1 v2 v3 = liftIO $ dyn214 ptr_glGenNamesAMD v1 v2 v3
+glGenNamesAMD v1 v2 v3 = liftIO $ dyn217 ptr_glGenNamesAMD v1 v2 v3
 
 {-# NOINLINE ptr_glGenNamesAMD #-}
 ptr_glGenNamesAMD :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
@@ -1348,7 +1503,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenOcclusionQueriesNV v1 v2 = liftIO $ dyn193 ptr_glGenOcclusionQueriesNV v1 v2
+glGenOcclusionQueriesNV v1 v2 = liftIO $ dyn196 ptr_glGenOcclusionQueriesNV v1 v2
 
 {-# NOINLINE ptr_glGenOcclusionQueriesNV #-}
 ptr_glGenOcclusionQueriesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1360,7 +1515,7 @@
   :: MonadIO m
   => GLsizei -- ^ @range@.
   -> m GLuint -- ^ of type @Path@.
-glGenPathsNV v1 = liftIO $ dyn298 ptr_glGenPathsNV v1
+glGenPathsNV v1 = liftIO $ dyn304 ptr_glGenPathsNV v1
 
 {-# NOINLINE ptr_glGenPathsNV #-}
 ptr_glGenPathsNV :: FunPtr (GLsizei -> IO GLuint)
@@ -1373,7 +1528,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @monitors@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenPerfMonitorsAMD v1 v2 = liftIO $ dyn193 ptr_glGenPerfMonitorsAMD v1 v2
+glGenPerfMonitorsAMD v1 v2 = liftIO $ dyn196 ptr_glGenPerfMonitorsAMD v1 v2
 
 {-# NOINLINE ptr_glGenPerfMonitorsAMD #-}
 ptr_glGenPerfMonitorsAMD :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1387,7 +1542,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenProgramPipelines v1 v2 = liftIO $ dyn193 ptr_glGenProgramPipelines v1 v2
+glGenProgramPipelines v1 v2 = liftIO $ dyn196 ptr_glGenProgramPipelines v1 v2
 
 {-# NOINLINE ptr_glGenProgramPipelines #-}
 ptr_glGenProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1400,7 +1555,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenProgramPipelinesEXT v1 v2 = liftIO $ dyn193 ptr_glGenProgramPipelinesEXT v1 v2
+glGenProgramPipelinesEXT v1 v2 = liftIO $ dyn196 ptr_glGenProgramPipelinesEXT v1 v2
 
 {-# NOINLINE ptr_glGenProgramPipelinesEXT #-}
 ptr_glGenProgramPipelinesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -1413,161 +1568,9 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenProgramsARB v1 v2 = liftIO $ dyn193 ptr_glGenProgramsARB v1 v2
+glGenProgramsARB v1 v2 = liftIO $ dyn196 ptr_glGenProgramsARB v1 v2
 
 {-# NOINLINE ptr_glGenProgramsARB #-}
 ptr_glGenProgramsARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
 ptr_glGenProgramsARB = unsafePerformIO $ getCommand "glGenProgramsARB"
-
--- glGenProgramsNV -------------------------------------------------------------
-
--- | This command is an alias for 'glGenProgramsARB'.
-glGenProgramsNV
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenProgramsNV v1 v2 = liftIO $ dyn193 ptr_glGenProgramsNV v1 v2
-
-{-# NOINLINE ptr_glGenProgramsNV #-}
-ptr_glGenProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenProgramsNV = unsafePerformIO $ getCommand "glGenProgramsNV"
-
--- glGenQueries ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenQueries.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenQueries.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenQueries.xhtml OpenGL 4.x>.
-glGenQueries
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenQueries v1 v2 = liftIO $ dyn193 ptr_glGenQueries v1 v2
-
-{-# NOINLINE ptr_glGenQueries #-}
-ptr_glGenQueries :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenQueries = unsafePerformIO $ getCommand "glGenQueries"
-
--- glGenQueriesARB -------------------------------------------------------------
-
--- | This command is an alias for 'glGenQueries'.
-glGenQueriesARB
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenQueriesARB v1 v2 = liftIO $ dyn193 ptr_glGenQueriesARB v1 v2
-
-{-# NOINLINE ptr_glGenQueriesARB #-}
-ptr_glGenQueriesARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenQueriesARB = unsafePerformIO $ getCommand "glGenQueriesARB"
-
--- glGenQueriesEXT -------------------------------------------------------------
-
-glGenQueriesEXT
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenQueriesEXT v1 v2 = liftIO $ dyn193 ptr_glGenQueriesEXT v1 v2
-
-{-# NOINLINE ptr_glGenQueriesEXT #-}
-ptr_glGenQueriesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenQueriesEXT = unsafePerformIO $ getCommand "glGenQueriesEXT"
-
--- glGenRenderbuffers ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenRenderbuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenRenderbuffers.xhtml OpenGL 4.x>.
-glGenRenderbuffers
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenRenderbuffers v1 v2 = liftIO $ dyn193 ptr_glGenRenderbuffers v1 v2
-
-{-# NOINLINE ptr_glGenRenderbuffers #-}
-ptr_glGenRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenRenderbuffers = unsafePerformIO $ getCommand "glGenRenderbuffers"
-
--- glGenRenderbuffersEXT -------------------------------------------------------
-
--- | This command is an alias for 'glGenRenderbuffers'.
-glGenRenderbuffersEXT
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenRenderbuffersEXT v1 v2 = liftIO $ dyn193 ptr_glGenRenderbuffersEXT v1 v2
-
-{-# NOINLINE ptr_glGenRenderbuffersEXT #-}
-ptr_glGenRenderbuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenRenderbuffersEXT = unsafePerformIO $ getCommand "glGenRenderbuffersEXT"
-
--- glGenRenderbuffersOES -------------------------------------------------------
-
-glGenRenderbuffersOES
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glGenRenderbuffersOES v1 v2 = liftIO $ dyn193 ptr_glGenRenderbuffersOES v1 v2
-
-{-# NOINLINE ptr_glGenRenderbuffersOES #-}
-ptr_glGenRenderbuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenRenderbuffersOES = unsafePerformIO $ getCommand "glGenRenderbuffersOES"
-
--- glGenSamplers ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenSamplers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenSamplers.xhtml OpenGL 4.x>.
-glGenSamplers
-  :: MonadIO m
-  => GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glGenSamplers v1 v2 = liftIO $ dyn193 ptr_glGenSamplers v1 v2
-
-{-# NOINLINE ptr_glGenSamplers #-}
-ptr_glGenSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenSamplers = unsafePerformIO $ getCommand "glGenSamplers"
-
--- glGenSymbolsEXT -------------------------------------------------------------
-
-glGenSymbolsEXT
-  :: MonadIO m
-  => GLenum -- ^ @datatype@ of type @DataTypeEXT@.
-  -> GLenum -- ^ @storagetype@ of type @VertexShaderStorageTypeEXT@.
-  -> GLenum -- ^ @range@ of type @ParameterRangeEXT@.
-  -> GLuint -- ^ @components@.
-  -> m GLuint
-glGenSymbolsEXT v1 v2 v3 v4 = liftIO $ dyn300 ptr_glGenSymbolsEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGenSymbolsEXT #-}
-ptr_glGenSymbolsEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
-ptr_glGenSymbolsEXT = unsafePerformIO $ getCommand "glGenSymbolsEXT"
-
--- glGenTextures ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenTextures.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenTextures.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenTextures.xhtml OpenGL 4.x>.
-glGenTextures
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
-  -> m ()
-glGenTextures v1 v2 = liftIO $ dyn193 ptr_glGenTextures v1 v2
-
-{-# NOINLINE ptr_glGenTextures #-}
-ptr_glGenTextures :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenTextures = unsafePerformIO $ getCommand "glGenTextures"
-
--- glGenTexturesEXT ------------------------------------------------------------
-
-glGenTexturesEXT
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
-  -> m ()
-glGenTexturesEXT v1 v2 = liftIO $ dyn193 ptr_glGenTexturesEXT v1 v2
-
-{-# NOINLINE ptr_glGenTexturesEXT #-}
-ptr_glGenTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glGenTexturesEXT = unsafePerformIO $ getCommand "glGenTexturesEXT"
 
diff --git a/src/Graphics/GL/Functions/F09.hs b/src/Graphics/GL/Functions/F09.hs
--- a/src/Graphics/GL/Functions/F09.hs
+++ b/src/Graphics/GL/Functions/F09.hs
@@ -15,6 +15,18 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F09 (
+  glGenProgramsNV,
+  glGenQueries,
+  glGenQueriesARB,
+  glGenQueriesEXT,
+  glGenRenderbuffers,
+  glGenRenderbuffersEXT,
+  glGenRenderbuffersOES,
+  glGenSamplers,
+  glGenSemaphoresEXT,
+  glGenSymbolsEXT,
+  glGenTextures,
+  glGenTexturesEXT,
   glGenTransformFeedbacks,
   glGenTransformFeedbacksNV,
   glGenVertexArrays,
@@ -102,19 +114,7 @@
   glGetDoublei_vEXT,
   glGetDoublev,
   glGetDriverControlStringQCOM,
-  glGetDriverControlsQCOM,
-  glGetError,
-  glGetFenceivNV,
-  glGetFinalCombinerInputParameterfvNV,
-  glGetFinalCombinerInputParameterivNV,
-  glGetFirstPerfQueryIdINTEL,
-  glGetFixedv,
-  glGetFixedvOES,
-  glGetFloatIndexedvEXT,
-  glGetFloati_v,
-  glGetFloati_vEXT,
-  glGetFloati_vNV,
-  glGetFloati_vOES
+  glGetDriverControlsQCOM
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,171 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGenProgramsNV -------------------------------------------------------------
+
+-- | This command is an alias for 'glGenProgramsARB'.
+glGenProgramsNV
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenProgramsNV v1 v2 = liftIO $ dyn196 ptr_glGenProgramsNV v1 v2
+
+{-# NOINLINE ptr_glGenProgramsNV #-}
+ptr_glGenProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenProgramsNV = unsafePerformIO $ getCommand "glGenProgramsNV"
+
+-- glGenQueries ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenQueries.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenQueries.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenQueries.xhtml OpenGL 4.x>.
+glGenQueries
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenQueries v1 v2 = liftIO $ dyn196 ptr_glGenQueries v1 v2
+
+{-# NOINLINE ptr_glGenQueries #-}
+ptr_glGenQueries :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenQueries = unsafePerformIO $ getCommand "glGenQueries"
+
+-- glGenQueriesARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glGenQueries'.
+glGenQueriesARB
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenQueriesARB v1 v2 = liftIO $ dyn196 ptr_glGenQueriesARB v1 v2
+
+{-# NOINLINE ptr_glGenQueriesARB #-}
+ptr_glGenQueriesARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenQueriesARB = unsafePerformIO $ getCommand "glGenQueriesARB"
+
+-- glGenQueriesEXT -------------------------------------------------------------
+
+glGenQueriesEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenQueriesEXT v1 v2 = liftIO $ dyn196 ptr_glGenQueriesEXT v1 v2
+
+{-# NOINLINE ptr_glGenQueriesEXT #-}
+ptr_glGenQueriesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenQueriesEXT = unsafePerformIO $ getCommand "glGenQueriesEXT"
+
+-- glGenRenderbuffers ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenRenderbuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenRenderbuffers.xhtml OpenGL 4.x>.
+glGenRenderbuffers
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenRenderbuffers v1 v2 = liftIO $ dyn196 ptr_glGenRenderbuffers v1 v2
+
+{-# NOINLINE ptr_glGenRenderbuffers #-}
+ptr_glGenRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenRenderbuffers = unsafePerformIO $ getCommand "glGenRenderbuffers"
+
+-- glGenRenderbuffersEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glGenRenderbuffers'.
+glGenRenderbuffersEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenRenderbuffersEXT v1 v2 = liftIO $ dyn196 ptr_glGenRenderbuffersEXT v1 v2
+
+{-# NOINLINE ptr_glGenRenderbuffersEXT #-}
+ptr_glGenRenderbuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenRenderbuffersEXT = unsafePerformIO $ getCommand "glGenRenderbuffersEXT"
+
+-- glGenRenderbuffersOES -------------------------------------------------------
+
+glGenRenderbuffersOES
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glGenRenderbuffersOES v1 v2 = liftIO $ dyn196 ptr_glGenRenderbuffersOES v1 v2
+
+{-# NOINLINE ptr_glGenRenderbuffersOES #-}
+ptr_glGenRenderbuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenRenderbuffersOES = unsafePerformIO $ getCommand "glGenRenderbuffersOES"
+
+-- glGenSamplers ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenSamplers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenSamplers.xhtml OpenGL 4.x>.
+glGenSamplers
+  :: MonadIO m
+  => GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glGenSamplers v1 v2 = liftIO $ dyn196 ptr_glGenSamplers v1 v2
+
+{-# NOINLINE ptr_glGenSamplers #-}
+ptr_glGenSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenSamplers = unsafePerformIO $ getCommand "glGenSamplers"
+
+-- glGenSemaphoresEXT ----------------------------------------------------------
+
+glGenSemaphoresEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @semaphores@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glGenSemaphoresEXT v1 v2 = liftIO $ dyn196 ptr_glGenSemaphoresEXT v1 v2
+
+{-# NOINLINE ptr_glGenSemaphoresEXT #-}
+ptr_glGenSemaphoresEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenSemaphoresEXT = unsafePerformIO $ getCommand "glGenSemaphoresEXT"
+
+-- glGenSymbolsEXT -------------------------------------------------------------
+
+glGenSymbolsEXT
+  :: MonadIO m
+  => GLenum -- ^ @datatype@ of type @DataTypeEXT@.
+  -> GLenum -- ^ @storagetype@ of type @VertexShaderStorageTypeEXT@.
+  -> GLenum -- ^ @range@ of type @ParameterRangeEXT@.
+  -> GLuint -- ^ @components@.
+  -> m GLuint
+glGenSymbolsEXT v1 v2 v3 v4 = liftIO $ dyn306 ptr_glGenSymbolsEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGenSymbolsEXT #-}
+ptr_glGenSymbolsEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
+ptr_glGenSymbolsEXT = unsafePerformIO $ getCommand "glGenSymbolsEXT"
+
+-- glGenTextures ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenTextures.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenTextures.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenTextures.xhtml OpenGL 4.x>.
+glGenTextures
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
+  -> m ()
+glGenTextures v1 v2 = liftIO $ dyn196 ptr_glGenTextures v1 v2
+
+{-# NOINLINE ptr_glGenTextures #-}
+ptr_glGenTextures :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenTextures = unsafePerformIO $ getCommand "glGenTextures"
+
+-- glGenTexturesEXT ------------------------------------------------------------
+
+glGenTexturesEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
+  -> m ()
+glGenTexturesEXT v1 v2 = liftIO $ dyn196 ptr_glGenTexturesEXT v1 v2
+
+{-# NOINLINE ptr_glGenTexturesEXT #-}
+ptr_glGenTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glGenTexturesEXT = unsafePerformIO $ getCommand "glGenTexturesEXT"
+
 -- glGenTransformFeedbacks -----------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGenTransformFeedbacks.xhtml OpenGL 4.x>.
@@ -131,7 +296,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenTransformFeedbacks v1 v2 = liftIO $ dyn193 ptr_glGenTransformFeedbacks v1 v2
+glGenTransformFeedbacks v1 v2 = liftIO $ dyn196 ptr_glGenTransformFeedbacks v1 v2
 
 {-# NOINLINE ptr_glGenTransformFeedbacks #-}
 ptr_glGenTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -145,7 +310,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenTransformFeedbacksNV v1 v2 = liftIO $ dyn193 ptr_glGenTransformFeedbacksNV v1 v2
+glGenTransformFeedbacksNV v1 v2 = liftIO $ dyn196 ptr_glGenTransformFeedbacksNV v1 v2
 
 {-# NOINLINE ptr_glGenTransformFeedbacksNV #-}
 ptr_glGenTransformFeedbacksNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -159,7 +324,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenVertexArrays v1 v2 = liftIO $ dyn193 ptr_glGenVertexArrays v1 v2
+glGenVertexArrays v1 v2 = liftIO $ dyn196 ptr_glGenVertexArrays v1 v2
 
 {-# NOINLINE ptr_glGenVertexArrays #-}
 ptr_glGenVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -173,7 +338,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenVertexArraysAPPLE v1 v2 = liftIO $ dyn193 ptr_glGenVertexArraysAPPLE v1 v2
+glGenVertexArraysAPPLE v1 v2 = liftIO $ dyn196 ptr_glGenVertexArraysAPPLE v1 v2
 
 {-# NOINLINE ptr_glGenVertexArraysAPPLE #-}
 ptr_glGenVertexArraysAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -187,7 +352,7 @@
   => GLsizei -- ^ @n@.
   -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
   -> m ()
-glGenVertexArraysOES v1 v2 = liftIO $ dyn193 ptr_glGenVertexArraysOES v1 v2
+glGenVertexArraysOES v1 v2 = liftIO $ dyn196 ptr_glGenVertexArraysOES v1 v2
 
 {-# NOINLINE ptr_glGenVertexArraysOES #-}
 ptr_glGenVertexArraysOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
@@ -199,7 +364,7 @@
   :: MonadIO m
   => GLuint -- ^ @range@.
   -> m GLuint
-glGenVertexShadersEXT v1 = liftIO $ dyn299 ptr_glGenVertexShadersEXT v1
+glGenVertexShadersEXT v1 = liftIO $ dyn305 ptr_glGenVertexShadersEXT v1
 
 {-# NOINLINE ptr_glGenVertexShadersEXT #-}
 ptr_glGenVertexShadersEXT :: FunPtr (GLuint -> IO GLuint)
@@ -212,7 +377,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glGenerateMipmap v1 = liftIO $ dyn4 ptr_glGenerateMipmap v1
+glGenerateMipmap v1 = liftIO $ dyn5 ptr_glGenerateMipmap v1
 
 {-# NOINLINE ptr_glGenerateMipmap #-}
 ptr_glGenerateMipmap :: FunPtr (GLenum -> IO ())
@@ -225,7 +390,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glGenerateMipmapEXT v1 = liftIO $ dyn4 ptr_glGenerateMipmapEXT v1
+glGenerateMipmapEXT v1 = liftIO $ dyn5 ptr_glGenerateMipmapEXT v1
 
 {-# NOINLINE ptr_glGenerateMipmapEXT #-}
 ptr_glGenerateMipmapEXT :: FunPtr (GLenum -> IO ())
@@ -237,7 +402,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m ()
-glGenerateMipmapOES v1 = liftIO $ dyn4 ptr_glGenerateMipmapOES v1
+glGenerateMipmapOES v1 = liftIO $ dyn5 ptr_glGenerateMipmapOES v1
 
 {-# NOINLINE ptr_glGenerateMipmapOES #-}
 ptr_glGenerateMipmapOES :: FunPtr (GLenum -> IO ())
@@ -250,7 +415,7 @@
   => GLenum -- ^ @texunit@ of type @TextureUnit@.
   -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> m ()
-glGenerateMultiTexMipmapEXT v1 v2 = liftIO $ dyn51 ptr_glGenerateMultiTexMipmapEXT v1 v2
+glGenerateMultiTexMipmapEXT v1 v2 = liftIO $ dyn52 ptr_glGenerateMultiTexMipmapEXT v1 v2
 
 {-# NOINLINE ptr_glGenerateMultiTexMipmapEXT #-}
 ptr_glGenerateMultiTexMipmapEXT :: FunPtr (GLenum -> GLenum -> IO ())
@@ -263,7 +428,7 @@
   :: MonadIO m
   => GLuint -- ^ @texture@.
   -> m ()
-glGenerateTextureMipmap v1 = liftIO $ dyn2 ptr_glGenerateTextureMipmap v1
+glGenerateTextureMipmap v1 = liftIO $ dyn3 ptr_glGenerateTextureMipmap v1
 
 {-# NOINLINE ptr_glGenerateTextureMipmap #-}
 ptr_glGenerateTextureMipmap :: FunPtr (GLuint -> IO ())
@@ -276,7 +441,7 @@
   => GLuint -- ^ @texture@ of type @Texture@.
   -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> m ()
-glGenerateTextureMipmapEXT v1 v2 = liftIO $ dyn15 ptr_glGenerateTextureMipmapEXT v1 v2
+glGenerateTextureMipmapEXT v1 v2 = liftIO $ dyn16 ptr_glGenerateTextureMipmapEXT v1 v2
 
 {-# NOINLINE ptr_glGenerateTextureMipmapEXT #-}
 ptr_glGenerateTextureMipmapEXT :: FunPtr (GLuint -> GLenum -> IO ())
@@ -292,7 +457,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetActiveAtomicCounterBufferiv v1 v2 v3 v4 = liftIO $ dyn301 ptr_glGetActiveAtomicCounterBufferiv v1 v2 v3 v4
+glGetActiveAtomicCounterBufferiv v1 v2 v3 v4 = liftIO $ dyn307 ptr_glGetActiveAtomicCounterBufferiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetActiveAtomicCounterBufferiv #-}
 ptr_glGetActiveAtomicCounterBufferiv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -311,7 +476,7 @@
   -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
   -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetActiveAttrib v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn302 ptr_glGetActiveAttrib v1 v2 v3 v4 v5 v6 v7
+glGetActiveAttrib v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn308 ptr_glGetActiveAttrib v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetActiveAttrib #-}
 ptr_glGetActiveAttrib :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
@@ -330,7 +495,7 @@
   -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
   -> Ptr GLcharARB -- ^ @name@ pointing to @maxLength@ elements of type @GLcharARB@.
   -> m ()
-glGetActiveAttribARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn303 ptr_glGetActiveAttribARB v1 v2 v3 v4 v5 v6 v7
+glGetActiveAttribARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn309 ptr_glGetActiveAttribARB v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetActiveAttribARB #-}
 ptr_glGetActiveAttribARB :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
@@ -348,7 +513,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @name@ pointing to @bufsize@ elements of type @GLchar@.
   -> m ()
-glGetActiveSubroutineName v1 v2 v3 v4 v5 v6 = liftIO $ dyn304 ptr_glGetActiveSubroutineName v1 v2 v3 v4 v5 v6
+glGetActiveSubroutineName v1 v2 v3 v4 v5 v6 = liftIO $ dyn310 ptr_glGetActiveSubroutineName v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetActiveSubroutineName #-}
 ptr_glGetActiveSubroutineName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -366,7 +531,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @name@ pointing to @bufsize@ elements of type @GLchar@.
   -> m ()
-glGetActiveSubroutineUniformName v1 v2 v3 v4 v5 v6 = liftIO $ dyn304 ptr_glGetActiveSubroutineUniformName v1 v2 v3 v4 v5 v6
+glGetActiveSubroutineUniformName v1 v2 v3 v4 v5 v6 = liftIO $ dyn310 ptr_glGetActiveSubroutineUniformName v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetActiveSubroutineUniformName #-}
 ptr_glGetActiveSubroutineUniformName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -383,7 +548,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @values@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetActiveSubroutineUniformiv v1 v2 v3 v4 v5 = liftIO $ dyn305 ptr_glGetActiveSubroutineUniformiv v1 v2 v3 v4 v5
+glGetActiveSubroutineUniformiv v1 v2 v3 v4 v5 = liftIO $ dyn311 ptr_glGetActiveSubroutineUniformiv v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetActiveSubroutineUniformiv #-}
 ptr_glGetActiveSubroutineUniformiv :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -402,7 +567,7 @@
   -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
   -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetActiveUniform v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn302 ptr_glGetActiveUniform v1 v2 v3 v4 v5 v6 v7
+glGetActiveUniform v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn308 ptr_glGetActiveUniform v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetActiveUniform #-}
 ptr_glGetActiveUniform :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
@@ -421,7 +586,7 @@
   -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
   -> Ptr GLcharARB -- ^ @name@ pointing to @maxLength@ elements of type @GLcharARB@.
   -> m ()
-glGetActiveUniformARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn303 ptr_glGetActiveUniformARB v1 v2 v3 v4 v5 v6 v7
+glGetActiveUniformARB v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn309 ptr_glGetActiveUniformARB v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetActiveUniformARB #-}
 ptr_glGetActiveUniformARB :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
@@ -438,7 +603,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @uniformBlockName@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetActiveUniformBlockName v1 v2 v3 v4 v5 = liftIO $ dyn306 ptr_glGetActiveUniformBlockName v1 v2 v3 v4 v5
+glGetActiveUniformBlockName v1 v2 v3 v4 v5 = liftIO $ dyn312 ptr_glGetActiveUniformBlockName v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetActiveUniformBlockName #-}
 ptr_glGetActiveUniformBlockName :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -454,7 +619,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(program,uniformBlockIndex,pname)@ elements of type @GLint@.
   -> m ()
-glGetActiveUniformBlockiv v1 v2 v3 v4 = liftIO $ dyn301 ptr_glGetActiveUniformBlockiv v1 v2 v3 v4
+glGetActiveUniformBlockiv v1 v2 v3 v4 = liftIO $ dyn307 ptr_glGetActiveUniformBlockiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetActiveUniformBlockiv #-}
 ptr_glGetActiveUniformBlockiv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -471,7 +636,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @uniformName@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetActiveUniformName v1 v2 v3 v4 v5 = liftIO $ dyn306 ptr_glGetActiveUniformName v1 v2 v3 v4 v5
+glGetActiveUniformName v1 v2 v3 v4 v5 = liftIO $ dyn312 ptr_glGetActiveUniformName v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetActiveUniformName #-}
 ptr_glGetActiveUniformName :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -488,7 +653,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(uniformCount,pname)@ elements of type @GLint@.
   -> m ()
-glGetActiveUniformsiv v1 v2 v3 v4 v5 = liftIO $ dyn307 ptr_glGetActiveUniformsiv v1 v2 v3 v4 v5
+glGetActiveUniformsiv v1 v2 v3 v4 v5 = liftIO $ dyn313 ptr_glGetActiveUniformsiv v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetActiveUniformsiv #-}
 ptr_glGetActiveUniformsiv :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -506,7 +671,7 @@
   -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(program,index,bufSize)@ elements of type @GLchar@.
   -> m ()
-glGetActiveVaryingNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn308 ptr_glGetActiveVaryingNV v1 v2 v3 v4 v5 v6 v7
+glGetActiveVaryingNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn314 ptr_glGetActiveVaryingNV v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetActiveVaryingNV #-}
 ptr_glGetActiveVaryingNV :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
@@ -520,7 +685,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
   -> m ()
-glGetArrayObjectfvATI v1 v2 v3 = liftIO $ dyn132 ptr_glGetArrayObjectfvATI v1 v2 v3
+glGetArrayObjectfvATI v1 v2 v3 = liftIO $ dyn135 ptr_glGetArrayObjectfvATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetArrayObjectfvATI #-}
 ptr_glGetArrayObjectfvATI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -534,7 +699,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetArrayObjectivATI v1 v2 v3 = liftIO $ dyn133 ptr_glGetArrayObjectivATI v1 v2 v3
+glGetArrayObjectivATI v1 v2 v3 = liftIO $ dyn136 ptr_glGetArrayObjectivATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetArrayObjectivATI #-}
 ptr_glGetArrayObjectivATI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -549,7 +714,7 @@
   -> Ptr GLsizei -- ^ @count@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLhandleARB -- ^ @obj@ pointing to @maxCount@ elements of type @handleARB@.
   -> m ()
-glGetAttachedObjectsARB v1 v2 v3 v4 = liftIO $ dyn309 ptr_glGetAttachedObjectsARB v1 v2 v3 v4
+glGetAttachedObjectsARB v1 v2 v3 v4 = liftIO $ dyn315 ptr_glGetAttachedObjectsARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetAttachedObjectsARB #-}
 ptr_glGetAttachedObjectsARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ())
@@ -565,7 +730,7 @@
   -> Ptr GLsizei -- ^ @count@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLuint -- ^ @shaders@ pointing to @maxCount@ elements of type @GLuint@.
   -> m ()
-glGetAttachedShaders v1 v2 v3 v4 = liftIO $ dyn310 ptr_glGetAttachedShaders v1 v2 v3 v4
+glGetAttachedShaders v1 v2 v3 v4 = liftIO $ dyn316 ptr_glGetAttachedShaders v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetAttachedShaders #-}
 ptr_glGetAttachedShaders :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
@@ -579,7 +744,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLint
-glGetAttribLocation v1 v2 = liftIO $ dyn311 ptr_glGetAttribLocation v1 v2
+glGetAttribLocation v1 v2 = liftIO $ dyn317 ptr_glGetAttribLocation v1 v2
 
 {-# NOINLINE ptr_glGetAttribLocation #-}
 ptr_glGetAttribLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -593,7 +758,7 @@
   => GLhandleARB -- ^ @programObj@ of type @handleARB@.
   -> Ptr GLcharARB -- ^ @name@.
   -> m GLint
-glGetAttribLocationARB v1 v2 = liftIO $ dyn312 ptr_glGetAttribLocationARB v1 v2
+glGetAttribLocationARB v1 v2 = liftIO $ dyn318 ptr_glGetAttribLocationARB v1 v2
 
 {-# NOINLINE ptr_glGetAttribLocationARB #-}
 ptr_glGetAttribLocationARB :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
@@ -608,7 +773,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetBooleanIndexedvEXT v1 v2 v3 = liftIO $ dyn313 ptr_glGetBooleanIndexedvEXT v1 v2 v3
+glGetBooleanIndexedvEXT v1 v2 v3 = liftIO $ dyn319 ptr_glGetBooleanIndexedvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetBooleanIndexedvEXT #-}
 ptr_glGetBooleanIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
@@ -623,7 +788,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetBooleani_v v1 v2 v3 = liftIO $ dyn313 ptr_glGetBooleani_v v1 v2 v3
+glGetBooleani_v v1 v2 v3 = liftIO $ dyn319 ptr_glGetBooleani_v v1 v2 v3
 
 {-# NOINLINE ptr_glGetBooleani_v #-}
 ptr_glGetBooleani_v :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
@@ -637,7 +802,7 @@
   => GLenum -- ^ @pname@ of type [GetPName](Graphics-GL-Groups.html#GetPName).
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetBooleanv v1 v2 = liftIO $ dyn314 ptr_glGetBooleanv v1 v2
+glGetBooleanv v1 v2 = liftIO $ dyn320 ptr_glGetBooleanv v1 v2
 
 {-# NOINLINE ptr_glGetBooleanv #-}
 ptr_glGetBooleanv :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
@@ -648,11 +813,11 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
 glGetBufferParameteri64v
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
   -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
   -> m ()
-glGetBufferParameteri64v v1 v2 v3 = liftIO $ dyn315 ptr_glGetBufferParameteri64v v1 v2 v3
+glGetBufferParameteri64v v1 v2 v3 = liftIO $ dyn321 ptr_glGetBufferParameteri64v v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferParameteri64v #-}
 ptr_glGetBufferParameteri64v :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
@@ -663,11 +828,11 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferParameteriv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
 glGetBufferParameteriv
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetBufferParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetBufferParameteriv v1 v2 v3
+glGetBufferParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetBufferParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferParameteriv #-}
 ptr_glGetBufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -678,11 +843,11 @@
 -- | This command is an alias for 'glGetBufferParameteriv'.
 glGetBufferParameterivARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetBufferParameterivARB v1 v2 v3 = liftIO $ dyn133 ptr_glGetBufferParameterivARB v1 v2 v3
+glGetBufferParameterivARB v1 v2 v3 = liftIO $ dyn136 ptr_glGetBufferParameterivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferParameterivARB #-}
 ptr_glGetBufferParameterivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -696,7 +861,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetBufferParameterui64vNV v1 v2 v3 = liftIO $ dyn316 ptr_glGetBufferParameterui64vNV v1 v2 v3
+glGetBufferParameterui64vNV v1 v2 v3 = liftIO $ dyn322 ptr_glGetBufferParameterui64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferParameterui64vNV #-}
 ptr_glGetBufferParameterui64vNV :: FunPtr (GLenum -> GLenum -> Ptr GLuint64EXT -> IO ())
@@ -707,11 +872,11 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferPointerv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferPointerv.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferPointerv.xhtml OpenGL 4.x>.
 glGetBufferPointerv
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLenum -- ^ @pname@ of type @BufferPointerNameARB@.
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetBufferPointerv v1 v2 v3 = liftIO $ dyn317 ptr_glGetBufferPointerv v1 v2 v3
+glGetBufferPointerv v1 v2 v3 = liftIO $ dyn323 ptr_glGetBufferPointerv v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferPointerv #-}
 ptr_glGetBufferPointerv :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -722,11 +887,11 @@
 -- | This command is an alias for 'glGetBufferPointerv'.
 glGetBufferPointervARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLenum -- ^ @pname@ of type @BufferPointerNameARB@.
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetBufferPointervARB v1 v2 v3 = liftIO $ dyn317 ptr_glGetBufferPointervARB v1 v2 v3
+glGetBufferPointervARB v1 v2 v3 = liftIO $ dyn323 ptr_glGetBufferPointervARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferPointervARB #-}
 ptr_glGetBufferPointervARB :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -741,7 +906,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr (Ptr a) -- ^ @params@.
   -> m ()
-glGetBufferPointervOES v1 v2 v3 = liftIO $ dyn317 ptr_glGetBufferPointervOES v1 v2 v3
+glGetBufferPointervOES v1 v2 v3 = liftIO $ dyn323 ptr_glGetBufferPointervOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetBufferPointervOES #-}
 ptr_glGetBufferPointervOES :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -752,12 +917,12 @@
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferSubData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferSubData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferSubData.xhtml OpenGL 4.x>.
 glGetBufferSubData
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> m ()
-glGetBufferSubData v1 v2 v3 v4 = liftIO $ dyn64 ptr_glGetBufferSubData v1 v2 v3 v4
+glGetBufferSubData v1 v2 v3 v4 = liftIO $ dyn67 ptr_glGetBufferSubData v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetBufferSubData #-}
 ptr_glGetBufferSubData :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
@@ -768,12 +933,12 @@
 -- | This command is an alias for 'glGetBufferSubData'.
 glGetBufferSubDataARB
   :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
   -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
   -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
   -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
   -> m ()
-glGetBufferSubDataARB v1 v2 v3 v4 = liftIO $ dyn65 ptr_glGetBufferSubDataARB v1 v2 v3 v4
+glGetBufferSubDataARB v1 v2 v3 v4 = liftIO $ dyn68 ptr_glGetBufferSubDataARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetBufferSubDataARB #-}
 ptr_glGetBufferSubDataARB :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
@@ -787,7 +952,7 @@
   => GLenum -- ^ @plane@ of type [ClipPlaneName](Graphics-GL-Groups.html#ClipPlaneName).
   -> Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetClipPlane v1 v2 = liftIO $ dyn93 ptr_glGetClipPlane v1 v2
+glGetClipPlane v1 v2 = liftIO $ dyn96 ptr_glGetClipPlane v1 v2
 
 {-# NOINLINE ptr_glGetClipPlane #-}
 ptr_glGetClipPlane :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
@@ -800,7 +965,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetClipPlanef v1 v2 = liftIO $ dyn94 ptr_glGetClipPlanef v1 v2
+glGetClipPlanef v1 v2 = liftIO $ dyn97 ptr_glGetClipPlanef v1 v2
 
 {-# NOINLINE ptr_glGetClipPlanef #-}
 ptr_glGetClipPlanef :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -813,7 +978,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetClipPlanefOES v1 v2 = liftIO $ dyn94 ptr_glGetClipPlanefOES v1 v2
+glGetClipPlanefOES v1 v2 = liftIO $ dyn97 ptr_glGetClipPlanefOES v1 v2
 
 {-# NOINLINE ptr_glGetClipPlanefOES #-}
 ptr_glGetClipPlanefOES :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -826,7 +991,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glGetClipPlanex v1 v2 = liftIO $ dyn95 ptr_glGetClipPlanex v1 v2
+glGetClipPlanex v1 v2 = liftIO $ dyn98 ptr_glGetClipPlanex v1 v2
 
 {-# NOINLINE ptr_glGetClipPlanex #-}
 ptr_glGetClipPlanex :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -839,7 +1004,7 @@
   => GLenum -- ^ @plane@.
   -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
   -> m ()
-glGetClipPlanexOES v1 v2 = liftIO $ dyn95 ptr_glGetClipPlanexOES v1 v2
+glGetClipPlanexOES v1 v2 = liftIO $ dyn98 ptr_glGetClipPlanexOES v1 v2
 
 {-# NOINLINE ptr_glGetClipPlanexOES #-}
 ptr_glGetClipPlanexOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
@@ -855,7 +1020,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @table@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetColorTable v1 v2 v3 v4 = liftIO $ dyn318 ptr_glGetColorTable v1 v2 v3 v4
+glGetColorTable v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetColorTable v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetColorTable #-}
 ptr_glGetColorTable :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -871,7 +1036,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetColorTableEXT v1 v2 v3 v4 = liftIO $ dyn318 ptr_glGetColorTableEXT v1 v2 v3 v4
+glGetColorTableEXT v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetColorTableEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetColorTableEXT #-}
 ptr_glGetColorTableEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -886,7 +1051,7 @@
   -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetColorTableParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetColorTableParameterfv v1 v2 v3
+glGetColorTableParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetColorTableParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameterfv #-}
 ptr_glGetColorTableParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -901,7 +1066,7 @@
   -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetColorTableParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glGetColorTableParameterfvEXT v1 v2 v3
+glGetColorTableParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glGetColorTableParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameterfvEXT #-}
 ptr_glGetColorTableParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -915,7 +1080,7 @@
   -> GLenum -- ^ @pname@ of type [GetColorTableParameterPNameSGI](Graphics-GL-Groups.html#GetColorTableParameterPNameSGI).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetColorTableParameterfvSGI v1 v2 v3 = liftIO $ dyn132 ptr_glGetColorTableParameterfvSGI v1 v2 v3
+glGetColorTableParameterfvSGI v1 v2 v3 = liftIO $ dyn135 ptr_glGetColorTableParameterfvSGI v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameterfvSGI #-}
 ptr_glGetColorTableParameterfvSGI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -930,7 +1095,7 @@
   -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetColorTableParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetColorTableParameteriv v1 v2 v3
+glGetColorTableParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetColorTableParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameteriv #-}
 ptr_glGetColorTableParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -945,7 +1110,7 @@
   -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetColorTableParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetColorTableParameterivEXT v1 v2 v3
+glGetColorTableParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetColorTableParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameterivEXT #-}
 ptr_glGetColorTableParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -959,7 +1124,7 @@
   -> GLenum -- ^ @pname@ of type [GetColorTableParameterPNameSGI](Graphics-GL-Groups.html#GetColorTableParameterPNameSGI).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetColorTableParameterivSGI v1 v2 v3 = liftIO $ dyn133 ptr_glGetColorTableParameterivSGI v1 v2 v3
+glGetColorTableParameterivSGI v1 v2 v3 = liftIO $ dyn136 ptr_glGetColorTableParameterivSGI v1 v2 v3
 
 {-# NOINLINE ptr_glGetColorTableParameterivSGI #-}
 ptr_glGetColorTableParameterivSGI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -974,7 +1139,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @table@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetColorTableSGI v1 v2 v3 v4 = liftIO $ dyn318 ptr_glGetColorTableSGI v1 v2 v3 v4
+glGetColorTableSGI v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetColorTableSGI v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetColorTableSGI #-}
 ptr_glGetColorTableSGI :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -990,7 +1155,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetCombinerInputParameterfvNV v1 v2 v3 v4 v5 = liftIO $ dyn319 ptr_glGetCombinerInputParameterfvNV v1 v2 v3 v4 v5
+glGetCombinerInputParameterfvNV v1 v2 v3 v4 v5 = liftIO $ dyn325 ptr_glGetCombinerInputParameterfvNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetCombinerInputParameterfvNV #-}
 ptr_glGetCombinerInputParameterfvNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1006,7 +1171,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetCombinerInputParameterivNV v1 v2 v3 v4 v5 = liftIO $ dyn320 ptr_glGetCombinerInputParameterivNV v1 v2 v3 v4 v5
+glGetCombinerInputParameterivNV v1 v2 v3 v4 v5 = liftIO $ dyn326 ptr_glGetCombinerInputParameterivNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetCombinerInputParameterivNV #-}
 ptr_glGetCombinerInputParameterivNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1021,7 +1186,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetCombinerOutputParameterfvNV v1 v2 v3 v4 = liftIO $ dyn321 ptr_glGetCombinerOutputParameterfvNV v1 v2 v3 v4
+glGetCombinerOutputParameterfvNV v1 v2 v3 v4 = liftIO $ dyn327 ptr_glGetCombinerOutputParameterfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetCombinerOutputParameterfvNV #-}
 ptr_glGetCombinerOutputParameterfvNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1036,7 +1201,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetCombinerOutputParameterivNV v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetCombinerOutputParameterivNV v1 v2 v3 v4
+glGetCombinerOutputParameterivNV v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetCombinerOutputParameterivNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetCombinerOutputParameterivNV #-}
 ptr_glGetCombinerOutputParameterivNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1050,7 +1215,7 @@
   -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetCombinerStageParameterfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glGetCombinerStageParameterfvNV v1 v2 v3
+glGetCombinerStageParameterfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glGetCombinerStageParameterfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetCombinerStageParameterfvNV #-}
 ptr_glGetCombinerStageParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1063,7 +1228,7 @@
   => GLenum -- ^ @tokenID@.
   -> GLuint -- ^ @size@.
   -> m GLuint
-glGetCommandHeaderNV v1 v2 = liftIO $ dyn323 ptr_glGetCommandHeaderNV v1 v2
+glGetCommandHeaderNV v1 v2 = liftIO $ dyn329 ptr_glGetCommandHeaderNV v1 v2
 
 {-# NOINLINE ptr_glGetCommandHeaderNV #-}
 ptr_glGetCommandHeaderNV :: FunPtr (GLenum -> GLuint -> IO GLuint)
@@ -1078,7 +1243,7 @@
   -> GLint -- ^ @lod@ of type @CheckedInt32@.
   -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,lod)@ elements of type @a@.
   -> m ()
-glGetCompressedMultiTexImageEXT v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetCompressedMultiTexImageEXT v1 v2 v3 v4
+glGetCompressedMultiTexImageEXT v1 v2 v3 v4 = liftIO $ dyn330 ptr_glGetCompressedMultiTexImageEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetCompressedMultiTexImageEXT #-}
 ptr_glGetCompressedMultiTexImageEXT :: FunPtr (GLenum -> GLenum -> GLint -> Ptr a -> IO ())
@@ -1093,7 +1258,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,level)@ elements of type @CompressedTextureARB@.
   -> m ()
-glGetCompressedTexImage v1 v2 v3 = liftIO $ dyn325 ptr_glGetCompressedTexImage v1 v2 v3
+glGetCompressedTexImage v1 v2 v3 = liftIO $ dyn331 ptr_glGetCompressedTexImage v1 v2 v3
 
 {-# NOINLINE ptr_glGetCompressedTexImage #-}
 ptr_glGetCompressedTexImage :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
@@ -1108,7 +1273,7 @@
   -> GLint -- ^ @level@ of type @CheckedInt32@.
   -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,level)@ elements of type @CompressedTextureARB@.
   -> m ()
-glGetCompressedTexImageARB v1 v2 v3 = liftIO $ dyn325 ptr_glGetCompressedTexImageARB v1 v2 v3
+glGetCompressedTexImageARB v1 v2 v3 = liftIO $ dyn331 ptr_glGetCompressedTexImageARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetCompressedTexImageARB #-}
 ptr_glGetCompressedTexImageARB :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
@@ -1124,7 +1289,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @pixels@.
   -> m ()
-glGetCompressedTextureImage v1 v2 v3 v4 = liftIO $ dyn326 ptr_glGetCompressedTextureImage v1 v2 v3 v4
+glGetCompressedTextureImage v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetCompressedTextureImage v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetCompressedTextureImage #-}
 ptr_glGetCompressedTextureImage :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -1139,7 +1304,7 @@
   -> GLint -- ^ @lod@ of type @CheckedInt32@.
   -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,lod)@ elements of type @a@.
   -> m ()
-glGetCompressedTextureImageEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glGetCompressedTextureImageEXT v1 v2 v3 v4
+glGetCompressedTextureImageEXT v1 v2 v3 v4 = liftIO $ dyn333 ptr_glGetCompressedTextureImageEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetCompressedTextureImageEXT #-}
 ptr_glGetCompressedTextureImageEXT :: FunPtr (GLuint -> GLenum -> GLint -> Ptr a -> IO ())
@@ -1161,7 +1326,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @pixels@.
   -> m ()
-glGetCompressedTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn328 ptr_glGetCompressedTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+glGetCompressedTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn334 ptr_glGetCompressedTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
 
 {-# NOINLINE ptr_glGetCompressedTextureSubImage #-}
 ptr_glGetCompressedTextureSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ())
@@ -1177,7 +1342,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetConvolutionFilter v1 v2 v3 v4 = liftIO $ dyn318 ptr_glGetConvolutionFilter v1 v2 v3 v4
+glGetConvolutionFilter v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetConvolutionFilter v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetConvolutionFilter #-}
 ptr_glGetConvolutionFilter :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1192,7 +1357,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @image@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetConvolutionFilterEXT v1 v2 v3 v4 = liftIO $ dyn318 ptr_glGetConvolutionFilterEXT v1 v2 v3 v4
+glGetConvolutionFilterEXT v1 v2 v3 v4 = liftIO $ dyn324 ptr_glGetConvolutionFilterEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetConvolutionFilterEXT #-}
 ptr_glGetConvolutionFilterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1207,7 +1372,7 @@
   -> GLenum -- ^ @pname@ of type @GetConvolutionParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetConvolutionParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetConvolutionParameterfv v1 v2 v3
+glGetConvolutionParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetConvolutionParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetConvolutionParameterfv #-}
 ptr_glGetConvolutionParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1221,7 +1386,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetConvolutionParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glGetConvolutionParameterfvEXT v1 v2 v3
+glGetConvolutionParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glGetConvolutionParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetConvolutionParameterfvEXT #-}
 ptr_glGetConvolutionParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1236,7 +1401,7 @@
   -> GLenum -- ^ @pname@ of type @GetConvolutionParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetConvolutionParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetConvolutionParameteriv v1 v2 v3
+glGetConvolutionParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetConvolutionParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetConvolutionParameteriv #-}
 ptr_glGetConvolutionParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1250,7 +1415,7 @@
   -> GLenum -- ^ @pname@ of type [ConvolutionParameterEXT](Graphics-GL-Groups.html#ConvolutionParameterEXT).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetConvolutionParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetConvolutionParameterivEXT v1 v2 v3
+glGetConvolutionParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetConvolutionParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetConvolutionParameterivEXT #-}
 ptr_glGetConvolutionParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1264,7 +1429,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetConvolutionParameterxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetConvolutionParameterxvOES v1 v2 v3
+glGetConvolutionParameterxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetConvolutionParameterxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetConvolutionParameterxvOES #-}
 ptr_glGetConvolutionParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1277,7 +1442,7 @@
   => GLsizei -- ^ @bufsize@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glGetCoverageModulationTableNV v1 v2 = liftIO $ dyn192 ptr_glGetCoverageModulationTableNV v1 v2
+glGetCoverageModulationTableNV v1 v2 = liftIO $ dyn195 ptr_glGetCoverageModulationTableNV v1 v2
 
 {-# NOINLINE ptr_glGetCoverageModulationTableNV #-}
 ptr_glGetCoverageModulationTableNV :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
@@ -1297,7 +1462,7 @@
   -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
   -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m GLuint
-glGetDebugMessageLog v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn329 ptr_glGetDebugMessageLog v1 v2 v3 v4 v5 v6 v7 v8
+glGetDebugMessageLog v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn335 ptr_glGetDebugMessageLog v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glGetDebugMessageLog #-}
 ptr_glGetDebugMessageLog :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
@@ -1315,7 +1480,7 @@
   -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
   -> Ptr GLchar -- ^ @message@ pointing to @bufsize@ elements of type @GLchar@.
   -> m GLuint
-glGetDebugMessageLogAMD v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn330 ptr_glGetDebugMessageLogAMD v1 v2 v3 v4 v5 v6 v7
+glGetDebugMessageLogAMD v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn336 ptr_glGetDebugMessageLogAMD v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetDebugMessageLogAMD #-}
 ptr_glGetDebugMessageLogAMD :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
@@ -1335,7 +1500,7 @@
   -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
   -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m GLuint
-glGetDebugMessageLogARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn329 ptr_glGetDebugMessageLogARB v1 v2 v3 v4 v5 v6 v7 v8
+glGetDebugMessageLogARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn335 ptr_glGetDebugMessageLogARB v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glGetDebugMessageLogARB #-}
 ptr_glGetDebugMessageLogARB :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
@@ -1355,7 +1520,7 @@
   -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
   -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m GLuint
-glGetDebugMessageLogKHR v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn329 ptr_glGetDebugMessageLogKHR v1 v2 v3 v4 v5 v6 v7 v8
+glGetDebugMessageLogKHR v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn335 ptr_glGetDebugMessageLogKHR v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glGetDebugMessageLogKHR #-}
 ptr_glGetDebugMessageLogKHR :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
@@ -1368,7 +1533,7 @@
   => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
   -> m ()
-glGetDetailTexFuncSGIS v1 v2 = liftIO $ dyn94 ptr_glGetDetailTexFuncSGIS v1 v2
+glGetDetailTexFuncSGIS v1 v2 = liftIO $ dyn97 ptr_glGetDetailTexFuncSGIS v1 v2
 
 {-# NOINLINE ptr_glGetDetailTexFuncSGIS #-}
 ptr_glGetDetailTexFuncSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -1383,7 +1548,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLdouble@.
   -> m ()
-glGetDoubleIndexedvEXT v1 v2 v3 = liftIO $ dyn331 ptr_glGetDoubleIndexedvEXT v1 v2 v3
+glGetDoubleIndexedvEXT v1 v2 v3 = liftIO $ dyn337 ptr_glGetDoubleIndexedvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetDoubleIndexedvEXT #-}
 ptr_glGetDoubleIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -1398,7 +1563,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLdouble@.
   -> m ()
-glGetDoublei_v v1 v2 v3 = liftIO $ dyn331 ptr_glGetDoublei_v v1 v2 v3
+glGetDoublei_v v1 v2 v3 = liftIO $ dyn337 ptr_glGetDoublei_v v1 v2 v3
 
 {-# NOINLINE ptr_glGetDoublei_v #-}
 ptr_glGetDoublei_v :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -1413,7 +1578,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetDoublei_vEXT v1 v2 v3 = liftIO $ dyn331 ptr_glGetDoublei_vEXT v1 v2 v3
+glGetDoublei_vEXT v1 v2 v3 = liftIO $ dyn337 ptr_glGetDoublei_vEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetDoublei_vEXT #-}
 ptr_glGetDoublei_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -1427,7 +1592,7 @@
   => GLenum -- ^ @pname@ of type [GetPName](Graphics-GL-Groups.html#GetPName).
   -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetDoublev v1 v2 = liftIO $ dyn93 ptr_glGetDoublev v1 v2
+glGetDoublev v1 v2 = liftIO $ dyn96 ptr_glGetDoublev v1 v2
 
 {-# NOINLINE ptr_glGetDoublev #-}
 ptr_glGetDoublev :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
@@ -1442,7 +1607,7 @@
   -> Ptr GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @driverControlString@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetDriverControlStringQCOM v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetDriverControlStringQCOM v1 v2 v3 v4
+glGetDriverControlStringQCOM v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetDriverControlStringQCOM v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetDriverControlStringQCOM #-}
 ptr_glGetDriverControlStringQCOM :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -1456,176 +1621,9 @@
   -> GLsizei -- ^ @size@.
   -> Ptr GLuint -- ^ @driverControls@ pointing to @size@ elements of type @GLuint@.
   -> m ()
-glGetDriverControlsQCOM v1 v2 v3 = liftIO $ dyn333 ptr_glGetDriverControlsQCOM v1 v2 v3
+glGetDriverControlsQCOM v1 v2 v3 = liftIO $ dyn339 ptr_glGetDriverControlsQCOM v1 v2 v3
 
 {-# NOINLINE ptr_glGetDriverControlsQCOM #-}
 ptr_glGetDriverControlsQCOM :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
 ptr_glGetDriverControlsQCOM = unsafePerformIO $ getCommand "glGetDriverControlsQCOM"
-
--- glGetError ------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetError.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetError.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetError.xhtml OpenGL 4.x>.
-glGetError
-  :: MonadIO m
-  => m GLenum -- ^ of type [ErrorCode](Graphics-GL-Groups.html#ErrorCode).
-glGetError = liftIO $ dyn334 ptr_glGetError
-
-{-# NOINLINE ptr_glGetError #-}
-ptr_glGetError :: FunPtr (IO GLenum)
-ptr_glGetError = unsafePerformIO $ getCommand "glGetError"
-
--- glGetFenceivNV --------------------------------------------------------------
-
-glGetFenceivNV
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> GLenum -- ^ @pname@ of type @FenceParameterNameNV@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetFenceivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetFenceivNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetFenceivNV #-}
-ptr_glGetFenceivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetFenceivNV = unsafePerformIO $ getCommand "glGetFenceivNV"
-
--- glGetFinalCombinerInputParameterfvNV ----------------------------------------
-
-glGetFinalCombinerInputParameterfvNV
-  :: MonadIO m
-  => GLenum -- ^ @variable@ of type @CombinerVariableNV@.
-  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetFinalCombinerInputParameterfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glGetFinalCombinerInputParameterfvNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetFinalCombinerInputParameterfvNV #-}
-ptr_glGetFinalCombinerInputParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glGetFinalCombinerInputParameterfvNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterfvNV"
-
--- glGetFinalCombinerInputParameterivNV ----------------------------------------
-
-glGetFinalCombinerInputParameterivNV
-  :: MonadIO m
-  => GLenum -- ^ @variable@ of type @CombinerVariableNV@.
-  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetFinalCombinerInputParameterivNV v1 v2 v3 = liftIO $ dyn133 ptr_glGetFinalCombinerInputParameterivNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetFinalCombinerInputParameterivNV #-}
-ptr_glGetFinalCombinerInputParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetFinalCombinerInputParameterivNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterivNV"
-
--- glGetFirstPerfQueryIdINTEL --------------------------------------------------
-
-glGetFirstPerfQueryIdINTEL
-  :: MonadIO m
-  => Ptr GLuint -- ^ @queryId@.
-  -> m ()
-glGetFirstPerfQueryIdINTEL v1 = liftIO $ dyn103 ptr_glGetFirstPerfQueryIdINTEL v1
-
-{-# NOINLINE ptr_glGetFirstPerfQueryIdINTEL #-}
-ptr_glGetFirstPerfQueryIdINTEL :: FunPtr (Ptr GLuint -> IO ())
-ptr_glGetFirstPerfQueryIdINTEL = unsafePerformIO $ getCommand "glGetFirstPerfQueryIdINTEL"
-
--- glGetFixedv -----------------------------------------------------------------
-
-glGetFixedv
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@.
-  -> m ()
-glGetFixedv v1 v2 = liftIO $ dyn95 ptr_glGetFixedv v1 v2
-
-{-# NOINLINE ptr_glGetFixedv #-}
-ptr_glGetFixedv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glGetFixedv = unsafePerformIO $ getCommand "glGetFixedv"
-
--- glGetFixedvOES --------------------------------------------------------------
-
-glGetFixedvOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glGetFixedvOES v1 v2 = liftIO $ dyn95 ptr_glGetFixedvOES v1 v2
-
-{-# NOINLINE ptr_glGetFixedvOES #-}
-ptr_glGetFixedvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glGetFixedvOES = unsafePerformIO $ getCommand "glGetFixedvOES"
-
--- glGetFloatIndexedvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glGetFloati_v'.
-glGetFloatIndexedvEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TypeEnum@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
-  -> m ()
-glGetFloatIndexedvEXT v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloatIndexedvEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetFloatIndexedvEXT #-}
-ptr_glGetFloatIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetFloatIndexedvEXT = unsafePerformIO $ getCommand "glGetFloatIndexedvEXT"
-
--- glGetFloati_v ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>.
-glGetFloati_v
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TypeEnum@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
-  -> m ()
-glGetFloati_v v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloati_v v1 v2 v3
-
-{-# NOINLINE ptr_glGetFloati_v #-}
-ptr_glGetFloati_v :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetFloati_v = unsafePerformIO $ getCommand "glGetFloati_v"
-
--- glGetFloati_vEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glGetFloati_v'.
-glGetFloati_vEXT
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @TypeEnum@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetFloati_vEXT v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloati_vEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetFloati_vEXT #-}
-ptr_glGetFloati_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetFloati_vEXT = unsafePerformIO $ getCommand "glGetFloati_vEXT"
-
--- glGetFloati_vNV -------------------------------------------------------------
-
--- | This command is an alias for 'glGetFloati_v'.
-glGetFloati_vNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TypeEnum@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
-  -> m ()
-glGetFloati_vNV v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloati_vNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetFloati_vNV #-}
-ptr_glGetFloati_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetFloati_vNV = unsafePerformIO $ getCommand "glGetFloati_vNV"
-
--- glGetFloati_vOES ------------------------------------------------------------
-
--- | This command is an alias for 'glGetFloati_v'.
-glGetFloati_vOES
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TypeEnum@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
-  -> m ()
-glGetFloati_vOES v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloati_vOES v1 v2 v3
-
-{-# NOINLINE ptr_glGetFloati_vOES #-}
-ptr_glGetFloati_vOES :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetFloati_vOES = unsafePerformIO $ getCommand "glGetFloati_vOES"
 
diff --git a/src/Graphics/GL/Functions/F10.hs b/src/Graphics/GL/Functions/F10.hs
--- a/src/Graphics/GL/Functions/F10.hs
+++ b/src/Graphics/GL/Functions/F10.hs
@@ -15,6 +15,18 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F10 (
+  glGetError,
+  glGetFenceivNV,
+  glGetFinalCombinerInputParameterfvNV,
+  glGetFinalCombinerInputParameterivNV,
+  glGetFirstPerfQueryIdINTEL,
+  glGetFixedv,
+  glGetFixedvOES,
+  glGetFloatIndexedvEXT,
+  glGetFloati_v,
+  glGetFloati_vEXT,
+  glGetFloati_vNV,
+  glGetFloati_vOES,
   glGetFloatv,
   glGetFogFuncSGIS,
   glGetFragDataIndex,
@@ -89,6 +101,7 @@
   glGetMaterialxOES,
   glGetMaterialxv,
   glGetMaterialxvOES,
+  glGetMemoryObjectParameterivEXT,
   glGetMinmax,
   glGetMinmaxEXT,
   glGetMinmaxParameterfv,
@@ -101,20 +114,7 @@
   glGetMultiTexGenfvEXT,
   glGetMultiTexGenivEXT,
   glGetMultiTexImageEXT,
-  glGetMultiTexLevelParameterfvEXT,
-  glGetMultiTexLevelParameterivEXT,
-  glGetMultiTexParameterIivEXT,
-  glGetMultiTexParameterIuivEXT,
-  glGetMultiTexParameterfvEXT,
-  glGetMultiTexParameterivEXT,
-  glGetMultisamplefv,
-  glGetMultisamplefvNV,
-  glGetNamedBufferParameteri64v,
-  glGetNamedBufferParameteriv,
-  glGetNamedBufferParameterivEXT,
-  glGetNamedBufferParameterui64vNV,
-  glGetNamedBufferPointerv,
-  glGetNamedBufferPointervEXT
+  glGetMultiTexLevelParameterfvEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,173 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetError ------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetError.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetError.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetError.xhtml OpenGL 4.x>.
+glGetError
+  :: MonadIO m
+  => m GLenum -- ^ of type [ErrorCode](Graphics-GL-Groups.html#ErrorCode).
+glGetError = liftIO $ dyn340 ptr_glGetError
+
+{-# NOINLINE ptr_glGetError #-}
+ptr_glGetError :: FunPtr (IO GLenum)
+ptr_glGetError = unsafePerformIO $ getCommand "glGetError"
+
+-- glGetFenceivNV --------------------------------------------------------------
+
+glGetFenceivNV
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> GLenum -- ^ @pname@ of type @FenceParameterNameNV@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetFenceivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetFenceivNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetFenceivNV #-}
+ptr_glGetFenceivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetFenceivNV = unsafePerformIO $ getCommand "glGetFenceivNV"
+
+-- glGetFinalCombinerInputParameterfvNV ----------------------------------------
+
+glGetFinalCombinerInputParameterfvNV
+  :: MonadIO m
+  => GLenum -- ^ @variable@ of type @CombinerVariableNV@.
+  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetFinalCombinerInputParameterfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glGetFinalCombinerInputParameterfvNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetFinalCombinerInputParameterfvNV #-}
+ptr_glGetFinalCombinerInputParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glGetFinalCombinerInputParameterfvNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterfvNV"
+
+-- glGetFinalCombinerInputParameterivNV ----------------------------------------
+
+glGetFinalCombinerInputParameterivNV
+  :: MonadIO m
+  => GLenum -- ^ @variable@ of type @CombinerVariableNV@.
+  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetFinalCombinerInputParameterivNV v1 v2 v3 = liftIO $ dyn136 ptr_glGetFinalCombinerInputParameterivNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetFinalCombinerInputParameterivNV #-}
+ptr_glGetFinalCombinerInputParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetFinalCombinerInputParameterivNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterivNV"
+
+-- glGetFirstPerfQueryIdINTEL --------------------------------------------------
+
+glGetFirstPerfQueryIdINTEL
+  :: MonadIO m
+  => Ptr GLuint -- ^ @queryId@.
+  -> m ()
+glGetFirstPerfQueryIdINTEL v1 = liftIO $ dyn106 ptr_glGetFirstPerfQueryIdINTEL v1
+
+{-# NOINLINE ptr_glGetFirstPerfQueryIdINTEL #-}
+ptr_glGetFirstPerfQueryIdINTEL :: FunPtr (Ptr GLuint -> IO ())
+ptr_glGetFirstPerfQueryIdINTEL = unsafePerformIO $ getCommand "glGetFirstPerfQueryIdINTEL"
+
+-- glGetFixedv -----------------------------------------------------------------
+
+glGetFixedv
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@.
+  -> m ()
+glGetFixedv v1 v2 = liftIO $ dyn98 ptr_glGetFixedv v1 v2
+
+{-# NOINLINE ptr_glGetFixedv #-}
+ptr_glGetFixedv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glGetFixedv = unsafePerformIO $ getCommand "glGetFixedv"
+
+-- glGetFixedvOES --------------------------------------------------------------
+
+glGetFixedvOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glGetFixedvOES v1 v2 = liftIO $ dyn98 ptr_glGetFixedvOES v1 v2
+
+{-# NOINLINE ptr_glGetFixedvOES #-}
+ptr_glGetFixedvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glGetFixedvOES = unsafePerformIO $ getCommand "glGetFixedvOES"
+
+-- glGetFloatIndexedvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glGetFloati_v'.
+glGetFloatIndexedvEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloatIndexedvEXT v1 v2 v3 = liftIO $ dyn271 ptr_glGetFloatIndexedvEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloatIndexedvEXT #-}
+ptr_glGetFloatIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloatIndexedvEXT = unsafePerformIO $ getCommand "glGetFloatIndexedvEXT"
+
+-- glGetFloati_v ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>.
+glGetFloati_v
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloati_v v1 v2 v3 = liftIO $ dyn271 ptr_glGetFloati_v v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloati_v #-}
+ptr_glGetFloati_v :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloati_v = unsafePerformIO $ getCommand "glGetFloati_v"
+
+-- glGetFloati_vEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glGetFloati_v'.
+glGetFloati_vEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloati_vEXT v1 v2 v3 = liftIO $ dyn271 ptr_glGetFloati_vEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloati_vEXT #-}
+ptr_glGetFloati_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloati_vEXT = unsafePerformIO $ getCommand "glGetFloati_vEXT"
+
+-- glGetFloati_vNV -------------------------------------------------------------
+
+-- | This command is an alias for 'glGetFloati_v'.
+glGetFloati_vNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloati_vNV v1 v2 v3 = liftIO $ dyn271 ptr_glGetFloati_vNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloati_vNV #-}
+ptr_glGetFloati_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloati_vNV = unsafePerformIO $ getCommand "glGetFloati_vNV"
+
+-- glGetFloati_vOES ------------------------------------------------------------
+
+-- | This command is an alias for 'glGetFloati_v'.
+glGetFloati_vOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloati_vOES v1 v2 v3 = liftIO $ dyn271 ptr_glGetFloati_vOES v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloati_vOES #-}
+ptr_glGetFloati_vOES :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloati_vOES = unsafePerformIO $ getCommand "glGetFloati_vOES"
+
 -- glGetFloatv -----------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>.
@@ -131,7 +298,7 @@
   => GLenum -- ^ @pname@ of type [GetPName](Graphics-GL-Groups.html#GetPName).
   -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetFloatv v1 v2 = liftIO $ dyn94 ptr_glGetFloatv v1 v2
+glGetFloatv v1 v2 = liftIO $ dyn97 ptr_glGetFloatv v1 v2
 
 {-# NOINLINE ptr_glGetFloatv #-}
 ptr_glGetFloatv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -143,7 +310,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE()@ elements of type @GLfloat@.
   -> m ()
-glGetFogFuncSGIS v1 = liftIO $ dyn41 ptr_glGetFogFuncSGIS v1
+glGetFogFuncSGIS v1 = liftIO $ dyn42 ptr_glGetFogFuncSGIS v1
 
 {-# NOINLINE ptr_glGetFogFuncSGIS #-}
 ptr_glGetFogFuncSGIS :: FunPtr (Ptr GLfloat -> IO ())
@@ -157,7 +324,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLint
-glGetFragDataIndex v1 v2 = liftIO $ dyn311 ptr_glGetFragDataIndex v1 v2
+glGetFragDataIndex v1 v2 = liftIO $ dyn317 ptr_glGetFragDataIndex v1 v2
 
 {-# NOINLINE ptr_glGetFragDataIndex #-}
 ptr_glGetFragDataIndex :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -171,7 +338,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLint
-glGetFragDataIndexEXT v1 v2 = liftIO $ dyn311 ptr_glGetFragDataIndexEXT v1 v2
+glGetFragDataIndexEXT v1 v2 = liftIO $ dyn317 ptr_glGetFragDataIndexEXT v1 v2
 
 {-# NOINLINE ptr_glGetFragDataIndexEXT #-}
 ptr_glGetFragDataIndexEXT :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -185,7 +352,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m GLint
-glGetFragDataLocation v1 v2 = liftIO $ dyn311 ptr_glGetFragDataLocation v1 v2
+glGetFragDataLocation v1 v2 = liftIO $ dyn317 ptr_glGetFragDataLocation v1 v2
 
 {-# NOINLINE ptr_glGetFragDataLocation #-}
 ptr_glGetFragDataLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -199,7 +366,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m GLint
-glGetFragDataLocationEXT v1 v2 = liftIO $ dyn311 ptr_glGetFragDataLocationEXT v1 v2
+glGetFragDataLocationEXT v1 v2 = liftIO $ dyn317 ptr_glGetFragDataLocationEXT v1 v2
 
 {-# NOINLINE ptr_glGetFragDataLocationEXT #-}
 ptr_glGetFragDataLocationEXT :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -213,7 +380,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glGetFragmentLightfvSGIX v1 v2 v3
+glGetFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn135 ptr_glGetFragmentLightfvSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetFragmentLightfvSGIX #-}
 ptr_glGetFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -227,7 +394,7 @@
   -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glGetFragmentLightivSGIX v1 v2 v3
+glGetFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn136 ptr_glGetFragmentLightivSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetFragmentLightivSGIX #-}
 ptr_glGetFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -241,7 +408,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetFragmentMaterialfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glGetFragmentMaterialfvSGIX v1 v2 v3
+glGetFragmentMaterialfvSGIX v1 v2 v3 = liftIO $ dyn135 ptr_glGetFragmentMaterialfvSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetFragmentMaterialfvSGIX #-}
 ptr_glGetFragmentMaterialfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -255,7 +422,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFragmentMaterialivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glGetFragmentMaterialivSGIX v1 v2 v3
+glGetFragmentMaterialivSGIX v1 v2 v3 = liftIO $ dyn136 ptr_glGetFragmentMaterialivSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetFragmentMaterialivSGIX #-}
 ptr_glGetFragmentMaterialivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -271,7 +438,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFramebufferAttachmentParameteriv v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetFramebufferAttachmentParameteriv v1 v2 v3 v4
+glGetFramebufferAttachmentParameteriv v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetFramebufferAttachmentParameteriv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetFramebufferAttachmentParameteriv #-}
 ptr_glGetFramebufferAttachmentParameteriv :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -287,7 +454,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFramebufferAttachmentParameterivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetFramebufferAttachmentParameterivEXT v1 v2 v3 v4
+glGetFramebufferAttachmentParameterivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetFramebufferAttachmentParameterivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetFramebufferAttachmentParameterivEXT #-}
 ptr_glGetFramebufferAttachmentParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -302,7 +469,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFramebufferAttachmentParameterivOES v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetFramebufferAttachmentParameterivOES v1 v2 v3 v4
+glGetFramebufferAttachmentParameterivOES v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetFramebufferAttachmentParameterivOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetFramebufferAttachmentParameterivOES #-}
 ptr_glGetFramebufferAttachmentParameterivOES :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -319,7 +486,7 @@
   -> GLsizei -- ^ @size@.
   -> Ptr GLfloat -- ^ @values@.
   -> m ()
-glGetFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn336 ptr_glGetFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6
+glGetFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn342 ptr_glGetFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetFramebufferParameterfvAMD #-}
 ptr_glGetFramebufferParameterfvAMD :: FunPtr (GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
@@ -334,7 +501,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFramebufferParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetFramebufferParameteriv v1 v2 v3
+glGetFramebufferParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetFramebufferParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetFramebufferParameteriv #-}
 ptr_glGetFramebufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -348,7 +515,7 @@
   -> GLenum -- ^ @pname@ of type @GetFramebufferParameter@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetFramebufferParameterivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetFramebufferParameterivEXT v1 v2 v3
+glGetFramebufferParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetFramebufferParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetFramebufferParameterivEXT #-}
 ptr_glGetFramebufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -360,7 +527,7 @@
   :: MonadIO m
   => GLuint -- ^ @target@.
   -> m GLsizei
-glGetFramebufferPixelLocalStorageSizeEXT v1 = liftIO $ dyn337 ptr_glGetFramebufferPixelLocalStorageSizeEXT v1
+glGetFramebufferPixelLocalStorageSizeEXT v1 = liftIO $ dyn343 ptr_glGetFramebufferPixelLocalStorageSizeEXT v1
 
 {-# NOINLINE ptr_glGetFramebufferPixelLocalStorageSizeEXT #-}
 ptr_glGetFramebufferPixelLocalStorageSizeEXT :: FunPtr (GLuint -> IO GLsizei)
@@ -372,7 +539,7 @@
 glGetGraphicsResetStatus
   :: MonadIO m
   => m GLenum
-glGetGraphicsResetStatus = liftIO $ dyn334 ptr_glGetGraphicsResetStatus
+glGetGraphicsResetStatus = liftIO $ dyn340 ptr_glGetGraphicsResetStatus
 
 {-# NOINLINE ptr_glGetGraphicsResetStatus #-}
 ptr_glGetGraphicsResetStatus :: FunPtr (IO GLenum)
@@ -383,7 +550,7 @@
 glGetGraphicsResetStatusARB
   :: MonadIO m
   => m GLenum
-glGetGraphicsResetStatusARB = liftIO $ dyn334 ptr_glGetGraphicsResetStatusARB
+glGetGraphicsResetStatusARB = liftIO $ dyn340 ptr_glGetGraphicsResetStatusARB
 
 {-# NOINLINE ptr_glGetGraphicsResetStatusARB #-}
 ptr_glGetGraphicsResetStatusARB :: FunPtr (IO GLenum)
@@ -391,10 +558,11 @@
 
 -- glGetGraphicsResetStatusEXT -------------------------------------------------
 
+-- | This command is an alias for 'glGetGraphicsResetStatus'.
 glGetGraphicsResetStatusEXT
   :: MonadIO m
   => m GLenum
-glGetGraphicsResetStatusEXT = liftIO $ dyn334 ptr_glGetGraphicsResetStatusEXT
+glGetGraphicsResetStatusEXT = liftIO $ dyn340 ptr_glGetGraphicsResetStatusEXT
 
 {-# NOINLINE ptr_glGetGraphicsResetStatusEXT #-}
 ptr_glGetGraphicsResetStatusEXT :: FunPtr (IO GLenum)
@@ -406,7 +574,7 @@
 glGetGraphicsResetStatusKHR
   :: MonadIO m
   => m GLenum
-glGetGraphicsResetStatusKHR = liftIO $ dyn334 ptr_glGetGraphicsResetStatusKHR
+glGetGraphicsResetStatusKHR = liftIO $ dyn340 ptr_glGetGraphicsResetStatusKHR
 
 {-# NOINLINE ptr_glGetGraphicsResetStatusKHR #-}
 ptr_glGetGraphicsResetStatusKHR :: FunPtr (IO GLenum)
@@ -418,7 +586,7 @@
   :: MonadIO m
   => GLenum -- ^ @pname@.
   -> m GLhandleARB -- ^ of type @handleARB@.
-glGetHandleARB v1 = liftIO $ dyn198 ptr_glGetHandleARB v1
+glGetHandleARB v1 = liftIO $ dyn201 ptr_glGetHandleARB v1
 
 {-# NOINLINE ptr_glGetHandleARB #-}
 ptr_glGetHandleARB :: FunPtr (GLenum -> IO GLhandleARB)
@@ -435,7 +603,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetHistogram v1 v2 v3 v4 v5 = liftIO $ dyn338 ptr_glGetHistogram v1 v2 v3 v4 v5
+glGetHistogram v1 v2 v3 v4 v5 = liftIO $ dyn344 ptr_glGetHistogram v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetHistogram #-}
 ptr_glGetHistogram :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -451,7 +619,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetHistogramEXT v1 v2 v3 v4 v5 = liftIO $ dyn338 ptr_glGetHistogramEXT v1 v2 v3 v4 v5
+glGetHistogramEXT v1 v2 v3 v4 v5 = liftIO $ dyn344 ptr_glGetHistogramEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetHistogramEXT #-}
 ptr_glGetHistogramEXT :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -466,7 +634,7 @@
   -> GLenum -- ^ @pname@ of type @GetHistogramParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetHistogramParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetHistogramParameterfv v1 v2 v3
+glGetHistogramParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetHistogramParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetHistogramParameterfv #-}
 ptr_glGetHistogramParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -480,7 +648,7 @@
   -> GLenum -- ^ @pname@ of type [GetHistogramParameterPNameEXT](Graphics-GL-Groups.html#GetHistogramParameterPNameEXT).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetHistogramParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glGetHistogramParameterfvEXT v1 v2 v3
+glGetHistogramParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glGetHistogramParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetHistogramParameterfvEXT #-}
 ptr_glGetHistogramParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -495,7 +663,7 @@
   -> GLenum -- ^ @pname@ of type @GetHistogramParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetHistogramParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetHistogramParameteriv v1 v2 v3
+glGetHistogramParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetHistogramParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetHistogramParameteriv #-}
 ptr_glGetHistogramParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -509,7 +677,7 @@
   -> GLenum -- ^ @pname@ of type [GetHistogramParameterPNameEXT](Graphics-GL-Groups.html#GetHistogramParameterPNameEXT).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetHistogramParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetHistogramParameterivEXT v1 v2 v3
+glGetHistogramParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetHistogramParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetHistogramParameterivEXT #-}
 ptr_glGetHistogramParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -523,7 +691,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetHistogramParameterxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetHistogramParameterxvOES v1 v2 v3
+glGetHistogramParameterxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetHistogramParameterxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetHistogramParameterxvOES #-}
 ptr_glGetHistogramParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -539,7 +707,7 @@
   -> GLint -- ^ @layer@.
   -> GLenum -- ^ @format@.
   -> m GLuint64
-glGetImageHandleARB v1 v2 v3 v4 v5 = liftIO $ dyn339 ptr_glGetImageHandleARB v1 v2 v3 v4 v5
+glGetImageHandleARB v1 v2 v3 v4 v5 = liftIO $ dyn345 ptr_glGetImageHandleARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetImageHandleARB #-}
 ptr_glGetImageHandleARB :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
@@ -555,7 +723,7 @@
   -> GLint -- ^ @layer@.
   -> GLenum -- ^ @format@.
   -> m GLuint64
-glGetImageHandleNV v1 v2 v3 v4 v5 = liftIO $ dyn339 ptr_glGetImageHandleNV v1 v2 v3 v4 v5
+glGetImageHandleNV v1 v2 v3 v4 v5 = liftIO $ dyn345 ptr_glGetImageHandleNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetImageHandleNV #-}
 ptr_glGetImageHandleNV :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
@@ -569,7 +737,7 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetImageTransformParameterfvHP v1 v2 v3 = liftIO $ dyn132 ptr_glGetImageTransformParameterfvHP v1 v2 v3
+glGetImageTransformParameterfvHP v1 v2 v3 = liftIO $ dyn135 ptr_glGetImageTransformParameterfvHP v1 v2 v3
 
 {-# NOINLINE ptr_glGetImageTransformParameterfvHP #-}
 ptr_glGetImageTransformParameterfvHP :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -583,7 +751,7 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetImageTransformParameterivHP v1 v2 v3 = liftIO $ dyn133 ptr_glGetImageTransformParameterivHP v1 v2 v3
+glGetImageTransformParameterivHP v1 v2 v3 = liftIO $ dyn136 ptr_glGetImageTransformParameterivHP v1 v2 v3
 
 {-# NOINLINE ptr_glGetImageTransformParameterivHP #-}
 ptr_glGetImageTransformParameterivHP :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -598,7 +766,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLcharARB -- ^ @infoLog@ pointing to @maxLength@ elements of type @GLcharARB@.
   -> m ()
-glGetInfoLogARB v1 v2 v3 v4 = liftIO $ dyn340 ptr_glGetInfoLogARB v1 v2 v3 v4
+glGetInfoLogARB v1 v2 v3 v4 = liftIO $ dyn346 ptr_glGetInfoLogARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetInfoLogARB #-}
 ptr_glGetInfoLogARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
@@ -609,7 +777,7 @@
 glGetInstrumentsSGIX
   :: MonadIO m
   => m GLint
-glGetInstrumentsSGIX = liftIO $ dyn341 ptr_glGetInstrumentsSGIX
+glGetInstrumentsSGIX = liftIO $ dyn347 ptr_glGetInstrumentsSGIX
 
 {-# NOINLINE ptr_glGetInstrumentsSGIX #-}
 ptr_glGetInstrumentsSGIX :: FunPtr (IO GLint)
@@ -624,7 +792,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint64 -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint64@.
   -> m ()
-glGetInteger64i_v v1 v2 v3 = liftIO $ dyn342 ptr_glGetInteger64i_v v1 v2 v3
+glGetInteger64i_v v1 v2 v3 = liftIO $ dyn348 ptr_glGetInteger64i_v v1 v2 v3
 
 {-# NOINLINE ptr_glGetInteger64i_v #-}
 ptr_glGetInteger64i_v :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
@@ -638,7 +806,7 @@
   => GLenum -- ^ @pname@.
   -> Ptr GLint64 -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
   -> m ()
-glGetInteger64v v1 v2 = liftIO $ dyn343 ptr_glGetInteger64v v1 v2
+glGetInteger64v v1 v2 = liftIO $ dyn349 ptr_glGetInteger64v v1 v2
 
 {-# NOINLINE ptr_glGetInteger64v #-}
 ptr_glGetInteger64v :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
@@ -652,7 +820,7 @@
   => GLenum -- ^ @pname@.
   -> Ptr GLint64 -- ^ @params@.
   -> m ()
-glGetInteger64vAPPLE v1 v2 = liftIO $ dyn343 ptr_glGetInteger64vAPPLE v1 v2
+glGetInteger64vAPPLE v1 v2 = liftIO $ dyn349 ptr_glGetInteger64vAPPLE v1 v2
 
 {-# NOINLINE ptr_glGetInteger64vAPPLE #-}
 ptr_glGetInteger64vAPPLE :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
@@ -667,7 +835,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint@.
   -> m ()
-glGetIntegerIndexedvEXT v1 v2 v3 = liftIO $ dyn344 ptr_glGetIntegerIndexedvEXT v1 v2 v3
+glGetIntegerIndexedvEXT v1 v2 v3 = liftIO $ dyn350 ptr_glGetIntegerIndexedvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetIntegerIndexedvEXT #-}
 ptr_glGetIntegerIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -682,7 +850,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint@.
   -> m ()
-glGetIntegeri_v v1 v2 v3 = liftIO $ dyn344 ptr_glGetIntegeri_v v1 v2 v3
+glGetIntegeri_v v1 v2 v3 = liftIO $ dyn350 ptr_glGetIntegeri_v v1 v2 v3
 
 {-# NOINLINE ptr_glGetIntegeri_v #-}
 ptr_glGetIntegeri_v :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -696,7 +864,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @data@.
   -> m ()
-glGetIntegeri_vEXT v1 v2 v3 = liftIO $ dyn344 ptr_glGetIntegeri_vEXT v1 v2 v3
+glGetIntegeri_vEXT v1 v2 v3 = liftIO $ dyn350 ptr_glGetIntegeri_vEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetIntegeri_vEXT #-}
 ptr_glGetIntegeri_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -710,7 +878,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLuint64EXT -- ^ @result@ pointing to @COMPSIZE(value)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetIntegerui64i_vNV v1 v2 v3 = liftIO $ dyn345 ptr_glGetIntegerui64i_vNV v1 v2 v3
+glGetIntegerui64i_vNV v1 v2 v3 = liftIO $ dyn351 ptr_glGetIntegerui64i_vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetIntegerui64i_vNV #-}
 ptr_glGetIntegerui64i_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint64EXT -> IO ())
@@ -723,7 +891,7 @@
   => GLenum -- ^ @value@.
   -> Ptr GLuint64EXT -- ^ @result@ pointing to @COMPSIZE(value)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetIntegerui64vNV v1 v2 = liftIO $ dyn346 ptr_glGetIntegerui64vNV v1 v2
+glGetIntegerui64vNV v1 v2 = liftIO $ dyn352 ptr_glGetIntegerui64vNV v1 v2
 
 {-# NOINLINE ptr_glGetIntegerui64vNV #-}
 ptr_glGetIntegerui64vNV :: FunPtr (GLenum -> Ptr GLuint64EXT -> IO ())
@@ -737,7 +905,7 @@
   => GLenum -- ^ @pname@ of type [GetPName](Graphics-GL-Groups.html#GetPName).
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetIntegerv v1 v2 = liftIO $ dyn136 ptr_glGetIntegerv v1 v2
+glGetIntegerv v1 v2 = liftIO $ dyn139 ptr_glGetIntegerv v1 v2
 
 {-# NOINLINE ptr_glGetIntegerv #-}
 ptr_glGetIntegerv :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -754,7 +922,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetInternalformatSampleivNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn347 ptr_glGetInternalformatSampleivNV v1 v2 v3 v4 v5 v6
+glGetInternalformatSampleivNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn353 ptr_glGetInternalformatSampleivNV v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetInternalformatSampleivNV #-}
 ptr_glGetInternalformatSampleivNV :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ())
@@ -771,7 +939,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint64 -- ^ @params@ pointing to @bufSize@ elements of type @GLint64@.
   -> m ()
-glGetInternalformati64v v1 v2 v3 v4 v5 = liftIO $ dyn348 ptr_glGetInternalformati64v v1 v2 v3 v4 v5
+glGetInternalformati64v v1 v2 v3 v4 v5 = liftIO $ dyn354 ptr_glGetInternalformati64v v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetInternalformati64v #-}
 ptr_glGetInternalformati64v :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
@@ -788,7 +956,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetInternalformativ v1 v2 v3 v4 v5 = liftIO $ dyn349 ptr_glGetInternalformativ v1 v2 v3 v4 v5
+glGetInternalformativ v1 v2 v3 v4 v5 = liftIO $ dyn355 ptr_glGetInternalformativ v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetInternalformativ #-}
 ptr_glGetInternalformativ :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
@@ -802,7 +970,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetInvariantBooleanvEXT v1 v2 v3 = liftIO $ dyn350 ptr_glGetInvariantBooleanvEXT v1 v2 v3
+glGetInvariantBooleanvEXT v1 v2 v3 = liftIO $ dyn356 ptr_glGetInvariantBooleanvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetInvariantBooleanvEXT #-}
 ptr_glGetInvariantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
@@ -816,7 +984,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
   -> m ()
-glGetInvariantFloatvEXT v1 v2 v3 = liftIO $ dyn351 ptr_glGetInvariantFloatvEXT v1 v2 v3
+glGetInvariantFloatvEXT v1 v2 v3 = liftIO $ dyn357 ptr_glGetInvariantFloatvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetInvariantFloatvEXT #-}
 ptr_glGetInvariantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -830,7 +998,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
   -> m ()
-glGetInvariantIntegervEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetInvariantIntegervEXT v1 v2 v3
+glGetInvariantIntegervEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetInvariantIntegervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetInvariantIntegervEXT #-}
 ptr_glGetInvariantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -845,7 +1013,7 @@
   -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetLightfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetLightfv v1 v2 v3
+glGetLightfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetLightfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetLightfv #-}
 ptr_glGetLightfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -860,7 +1028,7 @@
   -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetLightiv v1 v2 v3 = liftIO $ dyn133 ptr_glGetLightiv v1 v2 v3
+glGetLightiv v1 v2 v3 = liftIO $ dyn136 ptr_glGetLightiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetLightiv #-}
 ptr_glGetLightiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -874,7 +1042,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetLightxOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetLightxOES v1 v2 v3
+glGetLightxOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetLightxOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetLightxOES #-}
 ptr_glGetLightxOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -888,7 +1056,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetLightxv v1 v2 v3 = liftIO $ dyn163 ptr_glGetLightxv v1 v2 v3
+glGetLightxv v1 v2 v3 = liftIO $ dyn166 ptr_glGetLightxv v1 v2 v3
 
 {-# NOINLINE ptr_glGetLightxv #-}
 ptr_glGetLightxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -902,7 +1070,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetLightxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetLightxvOES v1 v2 v3
+glGetLightxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetLightxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetLightxvOES #-}
 ptr_glGetLightxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -916,7 +1084,7 @@
   -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glGetListParameterfvSGIX v1 v2 v3 = liftIO $ dyn351 ptr_glGetListParameterfvSGIX v1 v2 v3
+glGetListParameterfvSGIX v1 v2 v3 = liftIO $ dyn357 ptr_glGetListParameterfvSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetListParameterfvSGIX #-}
 ptr_glGetListParameterfvSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -930,7 +1098,7 @@
   -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glGetListParameterivSGIX v1 v2 v3 = liftIO $ dyn335 ptr_glGetListParameterivSGIX v1 v2 v3
+glGetListParameterivSGIX v1 v2 v3 = liftIO $ dyn341 ptr_glGetListParameterivSGIX v1 v2 v3
 
 {-# NOINLINE ptr_glGetListParameterivSGIX #-}
 ptr_glGetListParameterivSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -944,7 +1112,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetLocalConstantBooleanvEXT v1 v2 v3 = liftIO $ dyn350 ptr_glGetLocalConstantBooleanvEXT v1 v2 v3
+glGetLocalConstantBooleanvEXT v1 v2 v3 = liftIO $ dyn356 ptr_glGetLocalConstantBooleanvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetLocalConstantBooleanvEXT #-}
 ptr_glGetLocalConstantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
@@ -958,7 +1126,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
   -> m ()
-glGetLocalConstantFloatvEXT v1 v2 v3 = liftIO $ dyn351 ptr_glGetLocalConstantFloatvEXT v1 v2 v3
+glGetLocalConstantFloatvEXT v1 v2 v3 = liftIO $ dyn357 ptr_glGetLocalConstantFloatvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetLocalConstantFloatvEXT #-}
 ptr_glGetLocalConstantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -972,7 +1140,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
   -> m ()
-glGetLocalConstantIntegervEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetLocalConstantIntegervEXT v1 v2 v3
+glGetLocalConstantIntegervEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetLocalConstantIntegervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetLocalConstantIntegervEXT #-}
 ptr_glGetLocalConstantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -987,7 +1155,7 @@
   -> GLenum -- ^ @pname@ of type @MapAttribParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMapAttribParameterfvNV v1 v2 v3 v4 = liftIO $ dyn352 ptr_glGetMapAttribParameterfvNV v1 v2 v3 v4
+glGetMapAttribParameterfvNV v1 v2 v3 v4 = liftIO $ dyn358 ptr_glGetMapAttribParameterfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMapAttribParameterfvNV #-}
 ptr_glGetMapAttribParameterfvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -1002,7 +1170,7 @@
   -> GLenum -- ^ @pname@ of type @MapAttribParameterNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMapAttribParameterivNV v1 v2 v3 v4 = liftIO $ dyn353 ptr_glGetMapAttribParameterivNV v1 v2 v3 v4
+glGetMapAttribParameterivNV v1 v2 v3 v4 = liftIO $ dyn359 ptr_glGetMapAttribParameterivNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMapAttribParameterivNV #-}
 ptr_glGetMapAttribParameterivNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1020,7 +1188,7 @@
   -> GLboolean -- ^ @packed@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> Ptr a -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @a@.
   -> m ()
-glGetMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn354 ptr_glGetMapControlPointsNV v1 v2 v3 v4 v5 v6 v7
+glGetMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn360 ptr_glGetMapControlPointsNV v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetMapControlPointsNV #-}
 ptr_glGetMapControlPointsNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ())
@@ -1034,7 +1202,7 @@
   -> GLenum -- ^ @pname@ of type @MapParameterNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMapParameterfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glGetMapParameterfvNV v1 v2 v3
+glGetMapParameterfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glGetMapParameterfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapParameterfvNV #-}
 ptr_glGetMapParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1048,7 +1216,7 @@
   -> GLenum -- ^ @pname@ of type @MapParameterNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @GLint@.
   -> m ()
-glGetMapParameterivNV v1 v2 v3 = liftIO $ dyn133 ptr_glGetMapParameterivNV v1 v2 v3
+glGetMapParameterivNV v1 v2 v3 = liftIO $ dyn136 ptr_glGetMapParameterivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapParameterivNV #-}
 ptr_glGetMapParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1063,7 +1231,7 @@
   -> GLenum -- ^ @query@ of type [GetMapQuery](Graphics-GL-Groups.html#GetMapQuery).
   -> Ptr GLdouble -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLdouble@.
   -> m ()
-glGetMapdv v1 v2 v3 = liftIO $ dyn355 ptr_glGetMapdv v1 v2 v3
+glGetMapdv v1 v2 v3 = liftIO $ dyn361 ptr_glGetMapdv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapdv #-}
 ptr_glGetMapdv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
@@ -1078,7 +1246,7 @@
   -> GLenum -- ^ @query@ of type [GetMapQuery](Graphics-GL-Groups.html#GetMapQuery).
   -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLfloat@.
   -> m ()
-glGetMapfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetMapfv v1 v2 v3
+glGetMapfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetMapfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapfv #-}
 ptr_glGetMapfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1093,7 +1261,7 @@
   -> GLenum -- ^ @query@ of type [GetMapQuery](Graphics-GL-Groups.html#GetMapQuery).
   -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLint@.
   -> m ()
-glGetMapiv v1 v2 v3 = liftIO $ dyn133 ptr_glGetMapiv v1 v2 v3
+glGetMapiv v1 v2 v3 = liftIO $ dyn136 ptr_glGetMapiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapiv #-}
 ptr_glGetMapiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1107,7 +1275,7 @@
   -> GLenum -- ^ @query@.
   -> Ptr GLfixed -- ^ @v@ pointing to @COMPSIZE(query)@ elements of type @GLfixed@.
   -> m ()
-glGetMapxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetMapxvOES v1 v2 v3
+glGetMapxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetMapxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetMapxvOES #-}
 ptr_glGetMapxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1122,7 +1290,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMaterialfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetMaterialfv v1 v2 v3
+glGetMaterialfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetMaterialfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMaterialfv #-}
 ptr_glGetMaterialfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1137,7 +1305,7 @@
   -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMaterialiv v1 v2 v3 = liftIO $ dyn133 ptr_glGetMaterialiv v1 v2 v3
+glGetMaterialiv v1 v2 v3 = liftIO $ dyn136 ptr_glGetMaterialiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMaterialiv #-}
 ptr_glGetMaterialiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1151,7 +1319,7 @@
   -> GLenum -- ^ @pname@.
   -> GLfixed -- ^ @param@.
   -> m ()
-glGetMaterialxOES v1 v2 v3 = liftIO $ dyn162 ptr_glGetMaterialxOES v1 v2 v3
+glGetMaterialxOES v1 v2 v3 = liftIO $ dyn165 ptr_glGetMaterialxOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetMaterialxOES #-}
 ptr_glGetMaterialxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
@@ -1165,7 +1333,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetMaterialxv v1 v2 v3 = liftIO $ dyn163 ptr_glGetMaterialxv v1 v2 v3
+glGetMaterialxv v1 v2 v3 = liftIO $ dyn166 ptr_glGetMaterialxv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMaterialxv #-}
 ptr_glGetMaterialxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1179,12 +1347,26 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetMaterialxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetMaterialxvOES v1 v2 v3
+glGetMaterialxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetMaterialxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetMaterialxvOES #-}
 ptr_glGetMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
 ptr_glGetMaterialxvOES = unsafePerformIO $ getCommand "glGetMaterialxvOES"
 
+-- glGetMemoryObjectParameterivEXT ---------------------------------------------
+
+glGetMemoryObjectParameterivEXT
+  :: MonadIO m
+  => GLuint -- ^ @memoryObject@.
+  -> GLenum -- ^ @pname@ of type [MemoryObjectParameterName](Graphics-GL-Groups.html#MemoryObjectParameterName).
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glGetMemoryObjectParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetMemoryObjectParameterivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetMemoryObjectParameterivEXT #-}
+ptr_glGetMemoryObjectParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetMemoryObjectParameterivEXT = unsafePerformIO $ getCommand "glGetMemoryObjectParameterivEXT"
+
 -- glGetMinmax -----------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMinmax.xml OpenGL 2.x>.
@@ -1196,7 +1378,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetMinmax v1 v2 v3 v4 v5 = liftIO $ dyn338 ptr_glGetMinmax v1 v2 v3 v4 v5
+glGetMinmax v1 v2 v3 v4 v5 = liftIO $ dyn344 ptr_glGetMinmax v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetMinmax #-}
 ptr_glGetMinmax :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1212,7 +1394,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
   -> m ()
-glGetMinmaxEXT v1 v2 v3 v4 v5 = liftIO $ dyn338 ptr_glGetMinmaxEXT v1 v2 v3 v4 v5
+glGetMinmaxEXT v1 v2 v3 v4 v5 = liftIO $ dyn344 ptr_glGetMinmaxEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetMinmaxEXT #-}
 ptr_glGetMinmaxEXT :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1227,7 +1409,7 @@
   -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPName@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMinmaxParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetMinmaxParameterfv v1 v2 v3
+glGetMinmaxParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetMinmaxParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMinmaxParameterfv #-}
 ptr_glGetMinmaxParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1241,7 +1423,7 @@
   -> GLenum -- ^ @pname@ of type [GetMinmaxParameterPNameEXT](Graphics-GL-Groups.html#GetMinmaxParameterPNameEXT).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMinmaxParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glGetMinmaxParameterfvEXT v1 v2 v3
+glGetMinmaxParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glGetMinmaxParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetMinmaxParameterfvEXT #-}
 ptr_glGetMinmaxParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1256,7 +1438,7 @@
   -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMinmaxParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetMinmaxParameteriv v1 v2 v3
+glGetMinmaxParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetMinmaxParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetMinmaxParameteriv #-}
 ptr_glGetMinmaxParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1270,7 +1452,7 @@
   -> GLenum -- ^ @pname@ of type [GetMinmaxParameterPNameEXT](Graphics-GL-Groups.html#GetMinmaxParameterPNameEXT).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMinmaxParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetMinmaxParameterivEXT v1 v2 v3
+glGetMinmaxParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetMinmaxParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetMinmaxParameterivEXT #-}
 ptr_glGetMinmaxParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1285,7 +1467,7 @@
   -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMultiTexEnvfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glGetMultiTexEnvfvEXT v1 v2 v3 v4
+glGetMultiTexEnvfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glGetMultiTexEnvfvEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMultiTexEnvfvEXT #-}
 ptr_glGetMultiTexEnvfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1300,7 +1482,7 @@
   -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMultiTexEnvivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetMultiTexEnvivEXT v1 v2 v3 v4
+glGetMultiTexEnvivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetMultiTexEnvivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMultiTexEnvivEXT #-}
 ptr_glGetMultiTexEnvivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1315,7 +1497,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetMultiTexGendvEXT v1 v2 v3 v4 = liftIO $ dyn356 ptr_glGetMultiTexGendvEXT v1 v2 v3 v4
+glGetMultiTexGendvEXT v1 v2 v3 v4 = liftIO $ dyn362 ptr_glGetMultiTexGendvEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMultiTexGendvEXT #-}
 ptr_glGetMultiTexGendvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
@@ -1330,7 +1512,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMultiTexGenfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glGetMultiTexGenfvEXT v1 v2 v3 v4
+glGetMultiTexGenfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glGetMultiTexGenfvEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMultiTexGenfvEXT #-}
 ptr_glGetMultiTexGenfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1345,7 +1527,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetMultiTexGenivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetMultiTexGenivEXT v1 v2 v3 v4
+glGetMultiTexGenivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetMultiTexGenivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetMultiTexGenivEXT #-}
 ptr_glGetMultiTexGenivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1362,7 +1544,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
   -> m ()
-glGetMultiTexImageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn357 ptr_glGetMultiTexImageEXT v1 v2 v3 v4 v5 v6
+glGetMultiTexImageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn363 ptr_glGetMultiTexImageEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetMultiTexImageEXT #-}
 ptr_glGetMultiTexImageEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1378,202 +1560,9 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetMultiTexLevelParameterfvEXT v1 v2 v3 v4 v5 = liftIO $ dyn358 ptr_glGetMultiTexLevelParameterfvEXT v1 v2 v3 v4 v5
+glGetMultiTexLevelParameterfvEXT v1 v2 v3 v4 v5 = liftIO $ dyn364 ptr_glGetMultiTexLevelParameterfvEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetMultiTexLevelParameterfvEXT #-}
 ptr_glGetMultiTexLevelParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
 ptr_glGetMultiTexLevelParameterfvEXT = unsafePerformIO $ getCommand "glGetMultiTexLevelParameterfvEXT"
-
--- glGetMultiTexLevelParameterivEXT --------------------------------------------
-
-glGetMultiTexLevelParameterivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetMultiTexLevelParameterivEXT v1 v2 v3 v4 v5 = liftIO $ dyn359 ptr_glGetMultiTexLevelParameterivEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glGetMultiTexLevelParameterivEXT #-}
-ptr_glGetMultiTexLevelParameterivEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetMultiTexLevelParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexLevelParameterivEXT"
-
--- glGetMultiTexParameterIivEXT ------------------------------------------------
-
-glGetMultiTexParameterIivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetMultiTexParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetMultiTexParameterIivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetMultiTexParameterIivEXT #-}
-ptr_glGetMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIivEXT"
-
--- glGetMultiTexParameterIuivEXT -----------------------------------------------
-
-glGetMultiTexParameterIuivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glGetMultiTexParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn360 ptr_glGetMultiTexParameterIuivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetMultiTexParameterIuivEXT #-}
-ptr_glGetMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glGetMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIuivEXT"
-
--- glGetMultiTexParameterfvEXT -------------------------------------------------
-
-glGetMultiTexParameterfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetMultiTexParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glGetMultiTexParameterfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetMultiTexParameterfvEXT #-}
-ptr_glGetMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glGetMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterfvEXT"
-
--- glGetMultiTexParameterivEXT -------------------------------------------------
-
-glGetMultiTexParameterivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetMultiTexParameterivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glGetMultiTexParameterivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetMultiTexParameterivEXT #-}
-ptr_glGetMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetMultiTexParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterivEXT"
-
--- glGetMultisamplefv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetMultisample.xhtml OpenGL 4.x>.
-glGetMultisamplefv
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @val@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetMultisamplefv v1 v2 v3 = liftIO $ dyn267 ptr_glGetMultisamplefv v1 v2 v3
-
-{-# NOINLINE ptr_glGetMultisamplefv #-}
-ptr_glGetMultisamplefv :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetMultisamplefv = unsafePerformIO $ getCommand "glGetMultisamplefv"
-
--- glGetMultisamplefvNV --------------------------------------------------------
-
--- | This command is an alias for 'glGetMultisamplefv'.
-glGetMultisamplefvNV
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @GetMultisamplePNameNV@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glGetMultisamplefvNV v1 v2 v3 = liftIO $ dyn267 ptr_glGetMultisamplefvNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetMultisamplefvNV #-}
-ptr_glGetMultisamplefvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glGetMultisamplefvNV = unsafePerformIO $ getCommand "glGetMultisamplefvNV"
-
--- glGetNamedBufferParameteri64v -----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
-glGetNamedBufferParameteri64v
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint64 -- ^ @params@.
-  -> m ()
-glGetNamedBufferParameteri64v v1 v2 v3 = liftIO $ dyn361 ptr_glGetNamedBufferParameteri64v v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferParameteri64v #-}
-ptr_glGetNamedBufferParameteri64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
-ptr_glGetNamedBufferParameteri64v = unsafePerformIO $ getCommand "glGetNamedBufferParameteri64v"
-
--- glGetNamedBufferParameteriv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
-glGetNamedBufferParameteriv
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@.
-  -> m ()
-glGetNamedBufferParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedBufferParameteriv v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferParameteriv #-}
-ptr_glGetNamedBufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetNamedBufferParameteriv = unsafePerformIO $ getCommand "glGetNamedBufferParameteriv"
-
--- glGetNamedBufferParameterivEXT ----------------------------------------------
-
-glGetNamedBufferParameterivEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetNamedBufferParameterivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedBufferParameterivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferParameterivEXT #-}
-ptr_glGetNamedBufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetNamedBufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedBufferParameterivEXT"
-
--- glGetNamedBufferParameterui64vNV --------------------------------------------
-
-glGetNamedBufferParameterui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
-  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
-  -> m ()
-glGetNamedBufferParameterui64vNV v1 v2 v3 = liftIO $ dyn362 ptr_glGetNamedBufferParameterui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferParameterui64vNV #-}
-ptr_glGetNamedBufferParameterui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
-ptr_glGetNamedBufferParameterui64vNV = unsafePerformIO $ getCommand "glGetNamedBufferParameterui64vNV"
-
--- glGetNamedBufferPointerv ----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferPointerv.xhtml OpenGL 4.x>.
-glGetNamedBufferPointerv
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr (Ptr a) -- ^ @params@.
-  -> m ()
-glGetNamedBufferPointerv v1 v2 v3 = liftIO $ dyn363 ptr_glGetNamedBufferPointerv v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferPointerv #-}
-ptr_glGetNamedBufferPointerv :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
-ptr_glGetNamedBufferPointerv = unsafePerformIO $ getCommand "glGetNamedBufferPointerv"
-
--- glGetNamedBufferPointervEXT -------------------------------------------------
-
-glGetNamedBufferPointervEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
-  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
-  -> m ()
-glGetNamedBufferPointervEXT v1 v2 v3 = liftIO $ dyn363 ptr_glGetNamedBufferPointervEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetNamedBufferPointervEXT #-}
-ptr_glGetNamedBufferPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
-ptr_glGetNamedBufferPointervEXT = unsafePerformIO $ getCommand "glGetNamedBufferPointervEXT"
 
diff --git a/src/Graphics/GL/Functions/F11.hs b/src/Graphics/GL/Functions/F11.hs
--- a/src/Graphics/GL/Functions/F11.hs
+++ b/src/Graphics/GL/Functions/F11.hs
@@ -15,6 +15,19 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F11 (
+  glGetMultiTexLevelParameterivEXT,
+  glGetMultiTexParameterIivEXT,
+  glGetMultiTexParameterIuivEXT,
+  glGetMultiTexParameterfvEXT,
+  glGetMultiTexParameterivEXT,
+  glGetMultisamplefv,
+  glGetMultisamplefvNV,
+  glGetNamedBufferParameteri64v,
+  glGetNamedBufferParameteriv,
+  glGetNamedBufferParameterivEXT,
+  glGetNamedBufferParameterui64vNV,
+  glGetNamedBufferPointerv,
+  glGetNamedBufferPointervEXT,
   glGetNamedBufferSubData,
   glGetNamedBufferSubDataEXT,
   glGetNamedFramebufferAttachmentParameteriv,
@@ -101,20 +114,7 @@
   glGetProgramPipelineInfoLog,
   glGetProgramPipelineInfoLogEXT,
   glGetProgramPipelineiv,
-  glGetProgramPipelineivEXT,
-  glGetProgramResourceIndex,
-  glGetProgramResourceLocation,
-  glGetProgramResourceLocationIndex,
-  glGetProgramResourceLocationIndexEXT,
-  glGetProgramResourceName,
-  glGetProgramResourcefvNV,
-  glGetProgramResourceiv,
-  glGetProgramStageiv,
-  glGetProgramStringARB,
-  glGetProgramStringNV,
-  glGetProgramSubroutineParameteruivNV,
-  glGetProgramiv,
-  glGetProgramivARB
+  glGetProgramPipelineivEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,199 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetMultiTexLevelParameterivEXT --------------------------------------------
+
+glGetMultiTexLevelParameterivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetMultiTexLevelParameterivEXT v1 v2 v3 v4 v5 = liftIO $ dyn365 ptr_glGetMultiTexLevelParameterivEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glGetMultiTexLevelParameterivEXT #-}
+ptr_glGetMultiTexLevelParameterivEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetMultiTexLevelParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexLevelParameterivEXT"
+
+-- glGetMultiTexParameterIivEXT ------------------------------------------------
+
+glGetMultiTexParameterIivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetMultiTexParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetMultiTexParameterIivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetMultiTexParameterIivEXT #-}
+ptr_glGetMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIivEXT"
+
+-- glGetMultiTexParameterIuivEXT -----------------------------------------------
+
+glGetMultiTexParameterIuivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glGetMultiTexParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glGetMultiTexParameterIuivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetMultiTexParameterIuivEXT #-}
+ptr_glGetMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glGetMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIuivEXT"
+
+-- glGetMultiTexParameterfvEXT -------------------------------------------------
+
+glGetMultiTexParameterfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetMultiTexParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glGetMultiTexParameterfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetMultiTexParameterfvEXT #-}
+ptr_glGetMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glGetMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterfvEXT"
+
+-- glGetMultiTexParameterivEXT -------------------------------------------------
+
+glGetMultiTexParameterivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetMultiTexParameterivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glGetMultiTexParameterivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetMultiTexParameterivEXT #-}
+ptr_glGetMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetMultiTexParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterivEXT"
+
+-- glGetMultisamplefv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetMultisample.xhtml OpenGL 4.x>.
+glGetMultisamplefv
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @val@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetMultisamplefv v1 v2 v3 = liftIO $ dyn271 ptr_glGetMultisamplefv v1 v2 v3
+
+{-# NOINLINE ptr_glGetMultisamplefv #-}
+ptr_glGetMultisamplefv :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetMultisamplefv = unsafePerformIO $ getCommand "glGetMultisamplefv"
+
+-- glGetMultisamplefvNV --------------------------------------------------------
+
+-- | This command is an alias for 'glGetMultisamplefv'.
+glGetMultisamplefvNV
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @GetMultisamplePNameNV@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glGetMultisamplefvNV v1 v2 v3 = liftIO $ dyn271 ptr_glGetMultisamplefvNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetMultisamplefvNV #-}
+ptr_glGetMultisamplefvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetMultisamplefvNV = unsafePerformIO $ getCommand "glGetMultisamplefvNV"
+
+-- glGetNamedBufferParameteri64v -----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
+glGetNamedBufferParameteri64v
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint64 -- ^ @params@.
+  -> m ()
+glGetNamedBufferParameteri64v v1 v2 v3 = liftIO $ dyn367 ptr_glGetNamedBufferParameteri64v v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferParameteri64v #-}
+ptr_glGetNamedBufferParameteri64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
+ptr_glGetNamedBufferParameteri64v = unsafePerformIO $ getCommand "glGetNamedBufferParameteri64v"
+
+-- glGetNamedBufferParameteriv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>.
+glGetNamedBufferParameteriv
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glGetNamedBufferParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedBufferParameteriv v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferParameteriv #-}
+ptr_glGetNamedBufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetNamedBufferParameteriv = unsafePerformIO $ getCommand "glGetNamedBufferParameteriv"
+
+-- glGetNamedBufferParameterivEXT ----------------------------------------------
+
+glGetNamedBufferParameterivEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetNamedBufferParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedBufferParameterivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferParameterivEXT #-}
+ptr_glGetNamedBufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetNamedBufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedBufferParameterivEXT"
+
+-- glGetNamedBufferParameterui64vNV --------------------------------------------
+
+glGetNamedBufferParameterui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
+  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
+  -> m ()
+glGetNamedBufferParameterui64vNV v1 v2 v3 = liftIO $ dyn368 ptr_glGetNamedBufferParameterui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferParameterui64vNV #-}
+ptr_glGetNamedBufferParameterui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
+ptr_glGetNamedBufferParameterui64vNV = unsafePerformIO $ getCommand "glGetNamedBufferParameterui64vNV"
+
+-- glGetNamedBufferPointerv ----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferPointerv.xhtml OpenGL 4.x>.
+glGetNamedBufferPointerv
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr (Ptr a) -- ^ @params@.
+  -> m ()
+glGetNamedBufferPointerv v1 v2 v3 = liftIO $ dyn369 ptr_glGetNamedBufferPointerv v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferPointerv #-}
+ptr_glGetNamedBufferPointerv :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
+ptr_glGetNamedBufferPointerv = unsafePerformIO $ getCommand "glGetNamedBufferPointerv"
+
+-- glGetNamedBufferPointervEXT -------------------------------------------------
+
+glGetNamedBufferPointervEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
+  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
+  -> m ()
+glGetNamedBufferPointervEXT v1 v2 v3 = liftIO $ dyn369 ptr_glGetNamedBufferPointervEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetNamedBufferPointervEXT #-}
+ptr_glGetNamedBufferPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
+ptr_glGetNamedBufferPointervEXT = unsafePerformIO $ getCommand "glGetNamedBufferPointervEXT"
+
 -- glGetNamedBufferSubData -----------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferSubData.xhtml OpenGL 4.x>.
@@ -133,7 +326,7 @@
   -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
   -> Ptr a -- ^ @data@.
   -> m ()
-glGetNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn364 ptr_glGetNamedBufferSubData v1 v2 v3 v4
+glGetNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn370 ptr_glGetNamedBufferSubData v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedBufferSubData #-}
 ptr_glGetNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
@@ -148,7 +341,7 @@
   -> GLsizeiptr -- ^ @size@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
   -> m ()
-glGetNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn364 ptr_glGetNamedBufferSubDataEXT v1 v2 v3 v4
+glGetNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn370 ptr_glGetNamedBufferSubDataEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedBufferSubDataEXT #-}
 ptr_glGetNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
@@ -164,7 +357,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetNamedFramebufferAttachmentParameteriv v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetNamedFramebufferAttachmentParameteriv v1 v2 v3 v4
+glGetNamedFramebufferAttachmentParameteriv v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetNamedFramebufferAttachmentParameteriv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedFramebufferAttachmentParameteriv #-}
 ptr_glGetNamedFramebufferAttachmentParameteriv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -179,7 +372,7 @@
   -> GLenum -- ^ @pname@ of type @FramebufferAttachmentParameterName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetNamedFramebufferAttachmentParameterivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetNamedFramebufferAttachmentParameterivEXT v1 v2 v3 v4
+glGetNamedFramebufferAttachmentParameterivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetNamedFramebufferAttachmentParameterivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedFramebufferAttachmentParameterivEXT #-}
 ptr_glGetNamedFramebufferAttachmentParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -189,17 +382,17 @@
 
 glGetNamedFramebufferParameterfvAMD
   :: MonadIO m
-  => GLenum -- ^ @framebuffer@.
+  => GLuint -- ^ @framebuffer@.
   -> GLenum -- ^ @pname@.
   -> GLuint -- ^ @numsamples@.
   -> GLuint -- ^ @pixelindex@.
   -> GLsizei -- ^ @size@.
   -> Ptr GLfloat -- ^ @values@.
   -> m ()
-glGetNamedFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn336 ptr_glGetNamedFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6
+glGetNamedFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn372 ptr_glGetNamedFramebufferParameterfvAMD v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetNamedFramebufferParameterfvAMD #-}
-ptr_glGetNamedFramebufferParameterfvAMD :: FunPtr (GLenum -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetNamedFramebufferParameterfvAMD :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glGetNamedFramebufferParameterfvAMD = unsafePerformIO $ getCommand "glGetNamedFramebufferParameterfvAMD"
 
 -- glGetNamedFramebufferParameteriv --------------------------------------------
@@ -211,7 +404,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetNamedFramebufferParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedFramebufferParameteriv v1 v2 v3
+glGetNamedFramebufferParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedFramebufferParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetNamedFramebufferParameteriv #-}
 ptr_glGetNamedFramebufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -225,7 +418,7 @@
   -> GLenum -- ^ @pname@ of type @GetFramebufferParameter@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetNamedFramebufferParameterivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedFramebufferParameterivEXT v1 v2 v3
+glGetNamedFramebufferParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedFramebufferParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetNamedFramebufferParameterivEXT #-}
 ptr_glGetNamedFramebufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -240,7 +433,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4
+glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn373 ptr_glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramLocalParameterIivEXT #-}
 ptr_glGetNamedProgramLocalParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -255,7 +448,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
   -> m ()
-glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn367 ptr_glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4
+glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn374 ptr_glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramLocalParameterIuivEXT #-}
 ptr_glGetNamedProgramLocalParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
@@ -270,7 +463,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4 = liftIO $ dyn368 ptr_glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4
+glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4 = liftIO $ dyn375 ptr_glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramLocalParameterdvEXT #-}
 ptr_glGetNamedProgramLocalParameterdvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -285,7 +478,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetNamedProgramLocalParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn369 ptr_glGetNamedProgramLocalParameterfvEXT v1 v2 v3 v4
+glGetNamedProgramLocalParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn376 ptr_glGetNamedProgramLocalParameterfvEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramLocalParameterfvEXT #-}
 ptr_glGetNamedProgramLocalParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
@@ -300,7 +493,7 @@
   -> GLenum -- ^ @pname@ of type @ProgramStringProperty@.
   -> Ptr a -- ^ @string@ pointing to @COMPSIZE(program,pname)@ elements of type @a@.
   -> m ()
-glGetNamedProgramStringEXT v1 v2 v3 v4 = liftIO $ dyn370 ptr_glGetNamedProgramStringEXT v1 v2 v3 v4
+glGetNamedProgramStringEXT v1 v2 v3 v4 = liftIO $ dyn377 ptr_glGetNamedProgramStringEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramStringEXT #-}
 ptr_glGetNamedProgramStringEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -315,7 +508,7 @@
   -> GLenum -- ^ @pname@ of type @ProgramProperty@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetNamedProgramivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetNamedProgramivEXT v1 v2 v3 v4
+glGetNamedProgramivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetNamedProgramivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedProgramivEXT #-}
 ptr_glGetNamedProgramivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -330,7 +523,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetNamedRenderbufferParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedRenderbufferParameteriv v1 v2 v3
+glGetNamedRenderbufferParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedRenderbufferParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetNamedRenderbufferParameteriv #-}
 ptr_glGetNamedRenderbufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -344,7 +537,7 @@
   -> GLenum -- ^ @pname@ of type @RenderbufferParameterName@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetNamedRenderbufferParameterivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetNamedRenderbufferParameterivEXT v1 v2 v3
+glGetNamedRenderbufferParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetNamedRenderbufferParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetNamedRenderbufferParameterivEXT #-}
 ptr_glGetNamedRenderbufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -360,7 +553,7 @@
   -> Ptr GLint -- ^ @stringlen@ pointing to @1@ element of type @GLint@.
   -> Ptr GLchar -- ^ @string@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetNamedStringARB v1 v2 v3 v4 v5 = liftIO $ dyn371 ptr_glGetNamedStringARB v1 v2 v3 v4 v5
+glGetNamedStringARB v1 v2 v3 v4 v5 = liftIO $ dyn378 ptr_glGetNamedStringARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetNamedStringARB #-}
 ptr_glGetNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ())
@@ -375,7 +568,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetNamedStringivARB v1 v2 v3 v4 = liftIO $ dyn372 ptr_glGetNamedStringivARB v1 v2 v3 v4
+glGetNamedStringivARB v1 v2 v3 v4 = liftIO $ dyn379 ptr_glGetNamedStringivARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetNamedStringivARB #-}
 ptr_glGetNamedStringivARB :: FunPtr (GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ())
@@ -388,7 +581,7 @@
   => GLuint -- ^ @queryId@.
   -> Ptr GLuint -- ^ @nextQueryId@.
   -> m ()
-glGetNextPerfQueryIdINTEL v1 v2 = liftIO $ dyn194 ptr_glGetNextPerfQueryIdINTEL v1 v2
+glGetNextPerfQueryIdINTEL v1 v2 = liftIO $ dyn197 ptr_glGetNextPerfQueryIdINTEL v1 v2
 
 {-# NOINLINE ptr_glGetNextPerfQueryIdINTEL #-}
 ptr_glGetNextPerfQueryIdINTEL :: FunPtr (GLuint -> Ptr GLuint -> IO ())
@@ -402,7 +595,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
   -> m ()
-glGetObjectBufferfvATI v1 v2 v3 = liftIO $ dyn351 ptr_glGetObjectBufferfvATI v1 v2 v3
+glGetObjectBufferfvATI v1 v2 v3 = liftIO $ dyn357 ptr_glGetObjectBufferfvATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetObjectBufferfvATI #-}
 ptr_glGetObjectBufferfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -416,7 +609,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetObjectBufferivATI v1 v2 v3 = liftIO $ dyn335 ptr_glGetObjectBufferivATI v1 v2 v3
+glGetObjectBufferivATI v1 v2 v3 = liftIO $ dyn341 ptr_glGetObjectBufferivATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetObjectBufferivATI #-}
 ptr_glGetObjectBufferivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -433,7 +626,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetObjectLabel v1 v2 v3 v4 v5 = liftIO $ dyn373 ptr_glGetObjectLabel v1 v2 v3 v4 v5
+glGetObjectLabel v1 v2 v3 v4 v5 = liftIO $ dyn380 ptr_glGetObjectLabel v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetObjectLabel #-}
 ptr_glGetObjectLabel :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -449,7 +642,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetObjectLabelEXT v1 v2 v3 v4 v5 = liftIO $ dyn373 ptr_glGetObjectLabelEXT v1 v2 v3 v4 v5
+glGetObjectLabelEXT v1 v2 v3 v4 v5 = liftIO $ dyn380 ptr_glGetObjectLabelEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetObjectLabelEXT #-}
 ptr_glGetObjectLabelEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -466,7 +659,7 @@
   -> Ptr GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetObjectLabelKHR v1 v2 v3 v4 v5 = liftIO $ dyn373 ptr_glGetObjectLabelKHR v1 v2 v3 v4 v5
+glGetObjectLabelKHR v1 v2 v3 v4 v5 = liftIO $ dyn380 ptr_glGetObjectLabelKHR v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetObjectLabelKHR #-}
 ptr_glGetObjectLabelKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -480,7 +673,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetObjectParameterfvARB v1 v2 v3 = liftIO $ dyn374 ptr_glGetObjectParameterfvARB v1 v2 v3
+glGetObjectParameterfvARB v1 v2 v3 = liftIO $ dyn381 ptr_glGetObjectParameterfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetObjectParameterfvARB #-}
 ptr_glGetObjectParameterfvARB :: FunPtr (GLhandleARB -> GLenum -> Ptr GLfloat -> IO ())
@@ -495,7 +688,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetObjectParameterivAPPLE v1 v2 v3 v4 = liftIO $ dyn353 ptr_glGetObjectParameterivAPPLE v1 v2 v3 v4
+glGetObjectParameterivAPPLE v1 v2 v3 v4 = liftIO $ dyn359 ptr_glGetObjectParameterivAPPLE v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetObjectParameterivAPPLE #-}
 ptr_glGetObjectParameterivAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -509,7 +702,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetObjectParameterivARB v1 v2 v3 = liftIO $ dyn375 ptr_glGetObjectParameterivARB v1 v2 v3
+glGetObjectParameterivARB v1 v2 v3 = liftIO $ dyn382 ptr_glGetObjectParameterivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetObjectParameterivARB #-}
 ptr_glGetObjectParameterivARB :: FunPtr (GLhandleARB -> GLenum -> Ptr GLint -> IO ())
@@ -525,7 +718,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetObjectPtrLabel v1 v2 v3 v4 = liftIO $ dyn376 ptr_glGetObjectPtrLabel v1 v2 v3 v4
+glGetObjectPtrLabel v1 v2 v3 v4 = liftIO $ dyn383 ptr_glGetObjectPtrLabel v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetObjectPtrLabel #-}
 ptr_glGetObjectPtrLabel :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -541,7 +734,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetObjectPtrLabelKHR v1 v2 v3 v4 = liftIO $ dyn376 ptr_glGetObjectPtrLabelKHR v1 v2 v3 v4
+glGetObjectPtrLabelKHR v1 v2 v3 v4 = liftIO $ dyn383 ptr_glGetObjectPtrLabelKHR v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetObjectPtrLabelKHR #-}
 ptr_glGetObjectPtrLabelKHR :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -555,7 +748,7 @@
   -> GLenum -- ^ @pname@ of type @OcclusionQueryParameterNameNV@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetOcclusionQueryivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetOcclusionQueryivNV v1 v2 v3
+glGetOcclusionQueryivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetOcclusionQueryivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetOcclusionQueryivNV #-}
 ptr_glGetOcclusionQueryivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -569,7 +762,7 @@
   -> GLenum -- ^ @pname@ of type @OcclusionQueryParameterNameNV@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetOcclusionQueryuivNV v1 v2 v3 = liftIO $ dyn377 ptr_glGetOcclusionQueryuivNV v1 v2 v3
+glGetOcclusionQueryuivNV v1 v2 v3 = liftIO $ dyn384 ptr_glGetOcclusionQueryuivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetOcclusionQueryuivNV #-}
 ptr_glGetOcclusionQueryuivNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -583,7 +776,7 @@
   -> GLenum -- ^ @pname@ of type @PathGenMode@.
   -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetPathColorGenfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glGetPathColorGenfvNV v1 v2 v3
+glGetPathColorGenfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glGetPathColorGenfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathColorGenfvNV #-}
 ptr_glGetPathColorGenfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -597,7 +790,7 @@
   -> GLenum -- ^ @pname@ of type @PathGenMode@.
   -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetPathColorGenivNV v1 v2 v3 = liftIO $ dyn133 ptr_glGetPathColorGenivNV v1 v2 v3
+glGetPathColorGenivNV v1 v2 v3 = liftIO $ dyn136 ptr_glGetPathColorGenivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathColorGenivNV #-}
 ptr_glGetPathColorGenivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -610,7 +803,7 @@
   => GLuint -- ^ @path@ of type @Path@.
   -> Ptr GLubyte -- ^ @commands@ pointing to @COMPSIZE(path)@ elements of type @PathCommand@.
   -> m ()
-glGetPathCommandsNV v1 v2 = liftIO $ dyn378 ptr_glGetPathCommandsNV v1 v2
+glGetPathCommandsNV v1 v2 = liftIO $ dyn385 ptr_glGetPathCommandsNV v1 v2
 
 {-# NOINLINE ptr_glGetPathCommandsNV #-}
 ptr_glGetPathCommandsNV :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
@@ -623,7 +816,7 @@
   => GLuint -- ^ @path@ of type @Path@.
   -> Ptr GLfloat -- ^ @coords@ pointing to @COMPSIZE(path)@ elements of type @GLfloat@.
   -> m ()
-glGetPathCoordsNV v1 v2 = liftIO $ dyn379 ptr_glGetPathCoordsNV v1 v2
+glGetPathCoordsNV v1 v2 = liftIO $ dyn386 ptr_glGetPathCoordsNV v1 v2
 
 {-# NOINLINE ptr_glGetPathCoordsNV #-}
 ptr_glGetPathCoordsNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
@@ -636,7 +829,7 @@
   => GLuint -- ^ @path@ of type @Path@.
   -> Ptr GLfloat -- ^ @dashArray@ pointing to @COMPSIZE(path)@ elements of type @GLfloat@.
   -> m ()
-glGetPathDashArrayNV v1 v2 = liftIO $ dyn379 ptr_glGetPathDashArrayNV v1 v2
+glGetPathDashArrayNV v1 v2 = liftIO $ dyn386 ptr_glGetPathDashArrayNV v1 v2
 
 {-# NOINLINE ptr_glGetPathDashArrayNV #-}
 ptr_glGetPathDashArrayNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
@@ -650,7 +843,7 @@
   -> GLsizei -- ^ @startSegment@.
   -> GLsizei -- ^ @numSegments@.
   -> m GLfloat
-glGetPathLengthNV v1 v2 v3 = liftIO $ dyn380 ptr_glGetPathLengthNV v1 v2 v3
+glGetPathLengthNV v1 v2 v3 = liftIO $ dyn387 ptr_glGetPathLengthNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathLengthNV #-}
 ptr_glGetPathLengthNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
@@ -666,7 +859,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr GLfloat -- ^ @metrics@ pointing to @COMPSIZE(metricQueryMask,numPaths,stride)@ elements of type @GLfloat@.
   -> m ()
-glGetPathMetricRangeNV v1 v2 v3 v4 v5 = liftIO $ dyn381 ptr_glGetPathMetricRangeNV v1 v2 v3 v4 v5
+glGetPathMetricRangeNV v1 v2 v3 v4 v5 = liftIO $ dyn388 ptr_glGetPathMetricRangeNV v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetPathMetricRangeNV #-}
 ptr_glGetPathMetricRangeNV :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
@@ -684,7 +877,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr GLfloat -- ^ @metrics@ pointing to @COMPSIZE(metricQueryMask,numPaths,stride)@ elements of type @GLfloat@.
   -> m ()
-glGetPathMetricsNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn382 ptr_glGetPathMetricsNV v1 v2 v3 v4 v5 v6 v7
+glGetPathMetricsNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn389 ptr_glGetPathMetricsNV v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetPathMetricsNV #-}
 ptr_glGetPathMetricsNV :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
@@ -698,7 +891,7 @@
   -> GLenum -- ^ @pname@ of type @PathParameter@.
   -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetPathParameterfvNV v1 v2 v3 = liftIO $ dyn351 ptr_glGetPathParameterfvNV v1 v2 v3
+glGetPathParameterfvNV v1 v2 v3 = liftIO $ dyn357 ptr_glGetPathParameterfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathParameterfvNV #-}
 ptr_glGetPathParameterfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -712,7 +905,7 @@
   -> GLenum -- ^ @pname@ of type @PathParameter@.
   -> Ptr GLint -- ^ @value@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetPathParameterivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetPathParameterivNV v1 v2 v3
+glGetPathParameterivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetPathParameterivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathParameterivNV #-}
 ptr_glGetPathParameterivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -732,7 +925,7 @@
   -> GLenum -- ^ @transformType@ of type @PathTransformType@.
   -> Ptr GLfloat -- ^ @returnedSpacing@ pointing to @COMPSIZE(pathListMode,numPaths)@ elements of type @GLfloat@.
   -> m ()
-glGetPathSpacingNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn383 ptr_glGetPathSpacingNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+glGetPathSpacingNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn390 ptr_glGetPathSpacingNV v1 v2 v3 v4 v5 v6 v7 v8 v9
 
 {-# NOINLINE ptr_glGetPathSpacingNV #-}
 ptr_glGetPathSpacingNV :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
@@ -746,7 +939,7 @@
   -> GLenum -- ^ @pname@ of type @PathGenMode@.
   -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetPathTexGenfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glGetPathTexGenfvNV v1 v2 v3
+glGetPathTexGenfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glGetPathTexGenfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathTexGenfvNV #-}
 ptr_glGetPathTexGenfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -760,7 +953,7 @@
   -> GLenum -- ^ @pname@ of type @PathGenMode@.
   -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetPathTexGenivNV v1 v2 v3 = liftIO $ dyn133 ptr_glGetPathTexGenivNV v1 v2 v3
+glGetPathTexGenivNV v1 v2 v3 = liftIO $ dyn136 ptr_glGetPathTexGenivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetPathTexGenivNV #-}
 ptr_glGetPathTexGenivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -782,7 +975,7 @@
   -> Ptr GLuint -- ^ @counterDataTypeEnum@.
   -> Ptr GLuint64 -- ^ @rawCounterMaxValue@.
   -> m ()
-glGetPerfCounterInfoINTEL v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn384 ptr_glGetPerfCounterInfoINTEL v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+glGetPerfCounterInfoINTEL v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn391 ptr_glGetPerfCounterInfoINTEL v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
 
 {-# NOINLINE ptr_glGetPerfCounterInfoINTEL #-}
 ptr_glGetPerfCounterInfoINTEL :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ())
@@ -798,7 +991,7 @@
   -> Ptr GLuint -- ^ @data@ pointing to @dataSize@ elements of type @GLuint@.
   -> Ptr GLint -- ^ @bytesWritten@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetPerfMonitorCounterDataAMD v1 v2 v3 v4 v5 = liftIO $ dyn385 ptr_glGetPerfMonitorCounterDataAMD v1 v2 v3 v4 v5
+glGetPerfMonitorCounterDataAMD v1 v2 v3 v4 v5 = liftIO $ dyn392 ptr_glGetPerfMonitorCounterDataAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetPerfMonitorCounterDataAMD #-}
 ptr_glGetPerfMonitorCounterDataAMD :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ())
@@ -813,7 +1006,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr a -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @a@.
   -> m ()
-glGetPerfMonitorCounterInfoAMD v1 v2 v3 v4 = liftIO $ dyn386 ptr_glGetPerfMonitorCounterInfoAMD v1 v2 v3 v4
+glGetPerfMonitorCounterInfoAMD v1 v2 v3 v4 = liftIO $ dyn393 ptr_glGetPerfMonitorCounterInfoAMD v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetPerfMonitorCounterInfoAMD #-}
 ptr_glGetPerfMonitorCounterInfoAMD :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr a -> IO ())
@@ -829,7 +1022,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @counterString@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetPerfMonitorCounterStringAMD v1 v2 v3 v4 v5 = liftIO $ dyn306 ptr_glGetPerfMonitorCounterStringAMD v1 v2 v3 v4 v5
+glGetPerfMonitorCounterStringAMD v1 v2 v3 v4 v5 = liftIO $ dyn312 ptr_glGetPerfMonitorCounterStringAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetPerfMonitorCounterStringAMD #-}
 ptr_glGetPerfMonitorCounterStringAMD :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -845,7 +1038,7 @@
   -> GLsizei -- ^ @counterSize@.
   -> Ptr GLuint -- ^ @counters@ pointing to @counterSize@ elements of type @GLuint@.
   -> m ()
-glGetPerfMonitorCountersAMD v1 v2 v3 v4 v5 = liftIO $ dyn387 ptr_glGetPerfMonitorCountersAMD v1 v2 v3 v4 v5
+glGetPerfMonitorCountersAMD v1 v2 v3 v4 v5 = liftIO $ dyn394 ptr_glGetPerfMonitorCountersAMD v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetPerfMonitorCountersAMD #-}
 ptr_glGetPerfMonitorCountersAMD :: FunPtr (GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
@@ -860,7 +1053,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @groupString@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetPerfMonitorGroupStringAMD v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetPerfMonitorGroupStringAMD v1 v2 v3 v4
+glGetPerfMonitorGroupStringAMD v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetPerfMonitorGroupStringAMD v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetPerfMonitorGroupStringAMD #-}
 ptr_glGetPerfMonitorGroupStringAMD :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -874,7 +1067,7 @@
   -> GLsizei -- ^ @groupsSize@.
   -> Ptr GLuint -- ^ @groups@ pointing to @groupsSize@ elements of type @GLuint@.
   -> m ()
-glGetPerfMonitorGroupsAMD v1 v2 v3 = liftIO $ dyn333 ptr_glGetPerfMonitorGroupsAMD v1 v2 v3
+glGetPerfMonitorGroupsAMD v1 v2 v3 = liftIO $ dyn339 ptr_glGetPerfMonitorGroupsAMD v1 v2 v3
 
 {-# NOINLINE ptr_glGetPerfMonitorGroupsAMD #-}
 ptr_glGetPerfMonitorGroupsAMD :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
@@ -890,7 +1083,7 @@
   -> Ptr a -- ^ @data@.
   -> Ptr GLuint -- ^ @bytesWritten@.
   -> m ()
-glGetPerfQueryDataINTEL v1 v2 v3 v4 v5 = liftIO $ dyn388 ptr_glGetPerfQueryDataINTEL v1 v2 v3 v4 v5
+glGetPerfQueryDataINTEL v1 v2 v3 v4 v5 = liftIO $ dyn395 ptr_glGetPerfQueryDataINTEL v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetPerfQueryDataINTEL #-}
 ptr_glGetPerfQueryDataINTEL :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ())
@@ -903,7 +1096,7 @@
   => Ptr GLchar -- ^ @queryName@.
   -> Ptr GLuint -- ^ @queryId@.
   -> m ()
-glGetPerfQueryIdByNameINTEL v1 v2 = liftIO $ dyn389 ptr_glGetPerfQueryIdByNameINTEL v1 v2
+glGetPerfQueryIdByNameINTEL v1 v2 = liftIO $ dyn396 ptr_glGetPerfQueryIdByNameINTEL v1 v2
 
 {-# NOINLINE ptr_glGetPerfQueryIdByNameINTEL #-}
 ptr_glGetPerfQueryIdByNameINTEL :: FunPtr (Ptr GLchar -> Ptr GLuint -> IO ())
@@ -921,7 +1114,7 @@
   -> Ptr GLuint -- ^ @noInstances@.
   -> Ptr GLuint -- ^ @capsMask@.
   -> m ()
-glGetPerfQueryInfoINTEL v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn390 ptr_glGetPerfQueryInfoINTEL v1 v2 v3 v4 v5 v6 v7
+glGetPerfQueryInfoINTEL v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn397 ptr_glGetPerfQueryInfoINTEL v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glGetPerfQueryInfoINTEL #-}
 ptr_glGetPerfQueryInfoINTEL :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
@@ -935,7 +1128,7 @@
   => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
   -> Ptr GLfloat -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLfloat@.
   -> m ()
-glGetPixelMapfv v1 v2 = liftIO $ dyn94 ptr_glGetPixelMapfv v1 v2
+glGetPixelMapfv v1 v2 = liftIO $ dyn97 ptr_glGetPixelMapfv v1 v2
 
 {-# NOINLINE ptr_glGetPixelMapfv #-}
 ptr_glGetPixelMapfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -949,7 +1142,7 @@
   => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
   -> Ptr GLuint -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLuint@.
   -> m ()
-glGetPixelMapuiv v1 v2 = liftIO $ dyn125 ptr_glGetPixelMapuiv v1 v2
+glGetPixelMapuiv v1 v2 = liftIO $ dyn128 ptr_glGetPixelMapuiv v1 v2
 
 {-# NOINLINE ptr_glGetPixelMapuiv #-}
 ptr_glGetPixelMapuiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
@@ -963,7 +1156,7 @@
   => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
   -> Ptr GLushort -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLushort@.
   -> m ()
-glGetPixelMapusv v1 v2 = liftIO $ dyn391 ptr_glGetPixelMapusv v1 v2
+glGetPixelMapusv v1 v2 = liftIO $ dyn398 ptr_glGetPixelMapusv v1 v2
 
 {-# NOINLINE ptr_glGetPixelMapusv #-}
 ptr_glGetPixelMapusv :: FunPtr (GLenum -> Ptr GLushort -> IO ())
@@ -977,7 +1170,7 @@
   -> GLint -- ^ @size@.
   -> Ptr GLfixed -- ^ @values@ pointing to @size@ elements of type @GLfixed@.
   -> m ()
-glGetPixelMapxv v1 v2 v3 = liftIO $ dyn392 ptr_glGetPixelMapxv v1 v2 v3
+glGetPixelMapxv v1 v2 v3 = liftIO $ dyn399 ptr_glGetPixelMapxv v1 v2 v3
 
 {-# NOINLINE ptr_glGetPixelMapxv #-}
 ptr_glGetPixelMapxv :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
@@ -990,7 +1183,7 @@
   => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
   -> m ()
-glGetPixelTexGenParameterfvSGIS v1 v2 = liftIO $ dyn94 ptr_glGetPixelTexGenParameterfvSGIS v1 v2
+glGetPixelTexGenParameterfvSGIS v1 v2 = liftIO $ dyn97 ptr_glGetPixelTexGenParameterfvSGIS v1 v2
 
 {-# NOINLINE ptr_glGetPixelTexGenParameterfvSGIS #-}
 ptr_glGetPixelTexGenParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -1003,7 +1196,7 @@
   => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
   -> m ()
-glGetPixelTexGenParameterivSGIS v1 v2 = liftIO $ dyn136 ptr_glGetPixelTexGenParameterivSGIS v1 v2
+glGetPixelTexGenParameterivSGIS v1 v2 = liftIO $ dyn139 ptr_glGetPixelTexGenParameterivSGIS v1 v2
 
 {-# NOINLINE ptr_glGetPixelTexGenParameterivSGIS #-}
 ptr_glGetPixelTexGenParameterivSGIS :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -1017,7 +1210,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetPixelTransformParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glGetPixelTransformParameterfvEXT v1 v2 v3
+glGetPixelTransformParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glGetPixelTransformParameterfvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetPixelTransformParameterfvEXT #-}
 ptr_glGetPixelTransformParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1031,7 +1224,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetPixelTransformParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetPixelTransformParameterivEXT v1 v2 v3
+glGetPixelTransformParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetPixelTransformParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetPixelTransformParameterivEXT #-}
 ptr_glGetPixelTransformParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1045,7 +1238,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr (Ptr a) -- ^ @data@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetPointerIndexedvEXT v1 v2 v3 = liftIO $ dyn393 ptr_glGetPointerIndexedvEXT v1 v2 v3
+glGetPointerIndexedvEXT v1 v2 v3 = liftIO $ dyn400 ptr_glGetPointerIndexedvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetPointerIndexedvEXT #-}
 ptr_glGetPointerIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
@@ -1059,7 +1252,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetPointeri_vEXT v1 v2 v3 = liftIO $ dyn393 ptr_glGetPointeri_vEXT v1 v2 v3
+glGetPointeri_vEXT v1 v2 v3 = liftIO $ dyn400 ptr_glGetPointeri_vEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetPointeri_vEXT #-}
 ptr_glGetPointeri_vEXT :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
@@ -1073,7 +1266,7 @@
   => GLenum -- ^ @pname@ of type [GetPointervPName](Graphics-GL-Groups.html#GetPointervPName).
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetPointerv v1 v2 = liftIO $ dyn268 ptr_glGetPointerv v1 v2
+glGetPointerv v1 v2 = liftIO $ dyn272 ptr_glGetPointerv v1 v2
 
 {-# NOINLINE ptr_glGetPointerv #-}
 ptr_glGetPointerv :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
@@ -1087,7 +1280,7 @@
   => GLenum -- ^ @pname@ of type [GetPointervPName](Graphics-GL-Groups.html#GetPointervPName).
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetPointervEXT v1 v2 = liftIO $ dyn268 ptr_glGetPointervEXT v1 v2
+glGetPointervEXT v1 v2 = liftIO $ dyn272 ptr_glGetPointervEXT v1 v2
 
 {-# NOINLINE ptr_glGetPointervEXT #-}
 ptr_glGetPointervEXT :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
@@ -1101,7 +1294,7 @@
   => GLenum -- ^ @pname@.
   -> Ptr (Ptr a) -- ^ @params@.
   -> m ()
-glGetPointervKHR v1 v2 = liftIO $ dyn268 ptr_glGetPointervKHR v1 v2
+glGetPointervKHR v1 v2 = liftIO $ dyn272 ptr_glGetPointervKHR v1 v2
 
 {-# NOINLINE ptr_glGetPointervKHR #-}
 ptr_glGetPointervKHR :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
@@ -1114,7 +1307,7 @@
   :: MonadIO m
   => Ptr GLubyte -- ^ @mask@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
   -> m ()
-glGetPolygonStipple v1 = liftIO $ dyn101 ptr_glGetPolygonStipple v1
+glGetPolygonStipple v1 = liftIO $ dyn104 ptr_glGetPolygonStipple v1
 
 {-# NOINLINE ptr_glGetPolygonStipple #-}
 ptr_glGetPolygonStipple :: FunPtr (Ptr GLubyte -> IO ())
@@ -1131,7 +1324,7 @@
   -> Ptr GLenum -- ^ @binaryFormat@ pointing to @1@ element of type @GLenum@.
   -> Ptr a -- ^ @binary@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetProgramBinary v1 v2 v3 v4 v5 = liftIO $ dyn394 ptr_glGetProgramBinary v1 v2 v3 v4 v5
+glGetProgramBinary v1 v2 v3 v4 v5 = liftIO $ dyn401 ptr_glGetProgramBinary v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetProgramBinary #-}
 ptr_glGetProgramBinary :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
@@ -1148,7 +1341,7 @@
   -> Ptr GLenum -- ^ @binaryFormat@ pointing to @1@ element of type @GLenum@.
   -> Ptr a -- ^ @binary@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetProgramBinaryOES v1 v2 v3 v4 v5 = liftIO $ dyn394 ptr_glGetProgramBinaryOES v1 v2 v3 v4 v5
+glGetProgramBinaryOES v1 v2 v3 v4 v5 = liftIO $ dyn401 ptr_glGetProgramBinaryOES v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetProgramBinaryOES #-}
 ptr_glGetProgramBinaryOES :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
@@ -1162,7 +1355,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetProgramEnvParameterIivNV v1 v2 v3 = liftIO $ dyn344 ptr_glGetProgramEnvParameterIivNV v1 v2 v3
+glGetProgramEnvParameterIivNV v1 v2 v3 = liftIO $ dyn350 ptr_glGetProgramEnvParameterIivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramEnvParameterIivNV #-}
 ptr_glGetProgramEnvParameterIivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -1176,7 +1369,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
   -> m ()
-glGetProgramEnvParameterIuivNV v1 v2 v3 = liftIO $ dyn214 ptr_glGetProgramEnvParameterIuivNV v1 v2 v3
+glGetProgramEnvParameterIuivNV v1 v2 v3 = liftIO $ dyn217 ptr_glGetProgramEnvParameterIuivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramEnvParameterIuivNV #-}
 ptr_glGetProgramEnvParameterIuivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
@@ -1190,7 +1383,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetProgramEnvParameterdvARB v1 v2 v3 = liftIO $ dyn331 ptr_glGetProgramEnvParameterdvARB v1 v2 v3
+glGetProgramEnvParameterdvARB v1 v2 v3 = liftIO $ dyn337 ptr_glGetProgramEnvParameterdvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramEnvParameterdvARB #-}
 ptr_glGetProgramEnvParameterdvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -1204,7 +1397,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetProgramEnvParameterfvARB v1 v2 v3 = liftIO $ dyn267 ptr_glGetProgramEnvParameterfvARB v1 v2 v3
+glGetProgramEnvParameterfvARB v1 v2 v3 = liftIO $ dyn271 ptr_glGetProgramEnvParameterfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramEnvParameterfvARB #-}
 ptr_glGetProgramEnvParameterfvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
@@ -1220,7 +1413,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetProgramInfoLog v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetProgramInfoLog v1 v2 v3 v4
+glGetProgramInfoLog v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetProgramInfoLog v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramInfoLog #-}
 ptr_glGetProgramInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -1236,7 +1429,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetProgramInterfaceiv v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetProgramInterfaceiv v1 v2 v3 v4
+glGetProgramInterfaceiv v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetProgramInterfaceiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramInterfaceiv #-}
 ptr_glGetProgramInterfaceiv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1250,7 +1443,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetProgramLocalParameterIivNV v1 v2 v3 = liftIO $ dyn344 ptr_glGetProgramLocalParameterIivNV v1 v2 v3
+glGetProgramLocalParameterIivNV v1 v2 v3 = liftIO $ dyn350 ptr_glGetProgramLocalParameterIivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramLocalParameterIivNV #-}
 ptr_glGetProgramLocalParameterIivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
@@ -1264,7 +1457,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
   -> m ()
-glGetProgramLocalParameterIuivNV v1 v2 v3 = liftIO $ dyn214 ptr_glGetProgramLocalParameterIuivNV v1 v2 v3
+glGetProgramLocalParameterIuivNV v1 v2 v3 = liftIO $ dyn217 ptr_glGetProgramLocalParameterIuivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramLocalParameterIuivNV #-}
 ptr_glGetProgramLocalParameterIuivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
@@ -1278,7 +1471,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetProgramLocalParameterdvARB v1 v2 v3 = liftIO $ dyn331 ptr_glGetProgramLocalParameterdvARB v1 v2 v3
+glGetProgramLocalParameterdvARB v1 v2 v3 = liftIO $ dyn337 ptr_glGetProgramLocalParameterdvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramLocalParameterdvARB #-}
 ptr_glGetProgramLocalParameterdvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
@@ -1292,7 +1485,7 @@
   -> GLuint -- ^ @index@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetProgramLocalParameterfvARB v1 v2 v3 = liftIO $ dyn267 ptr_glGetProgramLocalParameterfvARB v1 v2 v3
+glGetProgramLocalParameterfvARB v1 v2 v3 = liftIO $ dyn271 ptr_glGetProgramLocalParameterfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramLocalParameterfvARB #-}
 ptr_glGetProgramLocalParameterfvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
@@ -1307,7 +1500,7 @@
   -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetProgramNamedParameterdvNV v1 v2 v3 v4 = liftIO $ dyn395 ptr_glGetProgramNamedParameterdvNV v1 v2 v3 v4
+glGetProgramNamedParameterdvNV v1 v2 v3 v4 = liftIO $ dyn402 ptr_glGetProgramNamedParameterdvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramNamedParameterdvNV #-}
 ptr_glGetProgramNamedParameterdvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
@@ -1322,7 +1515,7 @@
   -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetProgramNamedParameterfvNV v1 v2 v3 v4 = liftIO $ dyn396 ptr_glGetProgramNamedParameterfvNV v1 v2 v3 v4
+glGetProgramNamedParameterfvNV v1 v2 v3 v4 = liftIO $ dyn403 ptr_glGetProgramNamedParameterfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramNamedParameterfvNV #-}
 ptr_glGetProgramNamedParameterfvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
@@ -1337,7 +1530,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetProgramParameterdvNV v1 v2 v3 v4 = liftIO $ dyn397 ptr_glGetProgramParameterdvNV v1 v2 v3 v4
+glGetProgramParameterdvNV v1 v2 v3 v4 = liftIO $ dyn404 ptr_glGetProgramParameterdvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramParameterdvNV #-}
 ptr_glGetProgramParameterdvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -1352,7 +1545,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetProgramParameterfvNV v1 v2 v3 v4 = liftIO $ dyn352 ptr_glGetProgramParameterfvNV v1 v2 v3 v4
+glGetProgramParameterfvNV v1 v2 v3 v4 = liftIO $ dyn358 ptr_glGetProgramParameterfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramParameterfvNV #-}
 ptr_glGetProgramParameterfvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -1368,7 +1561,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetProgramPipelineInfoLog v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetProgramPipelineInfoLog v1 v2 v3 v4
+glGetProgramPipelineInfoLog v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetProgramPipelineInfoLog v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramPipelineInfoLog #-}
 ptr_glGetProgramPipelineInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -1383,7 +1576,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetProgramPipelineInfoLogEXT v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetProgramPipelineInfoLogEXT v1 v2 v3 v4
+glGetProgramPipelineInfoLogEXT v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetProgramPipelineInfoLogEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetProgramPipelineInfoLogEXT #-}
 ptr_glGetProgramPipelineInfoLogEXT :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -1398,7 +1591,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetProgramPipelineiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetProgramPipelineiv v1 v2 v3
+glGetProgramPipelineiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetProgramPipelineiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramPipelineiv #-}
 ptr_glGetProgramPipelineiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1412,212 +1605,9 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetProgramPipelineivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetProgramPipelineivEXT v1 v2 v3
+glGetProgramPipelineivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetProgramPipelineivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramPipelineivEXT #-}
 ptr_glGetProgramPipelineivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
 ptr_glGetProgramPipelineivEXT = unsafePerformIO $ getCommand "glGetProgramPipelineivEXT"
-
--- glGetProgramResourceIndex ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceIndex.xhtml OpenGL 4.x>.
-glGetProgramResourceIndex
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
-  -> m GLuint
-glGetProgramResourceIndex v1 v2 v3 = liftIO $ dyn398 ptr_glGetProgramResourceIndex v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramResourceIndex #-}
-ptr_glGetProgramResourceIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
-ptr_glGetProgramResourceIndex = unsafePerformIO $ getCommand "glGetProgramResourceIndex"
-
--- glGetProgramResourceLocation ------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocation.xhtml OpenGL 4.x>.
-glGetProgramResourceLocation
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
-  -> m GLint
-glGetProgramResourceLocation v1 v2 v3 = liftIO $ dyn399 ptr_glGetProgramResourceLocation v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramResourceLocation #-}
-ptr_glGetProgramResourceLocation :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
-ptr_glGetProgramResourceLocation = unsafePerformIO $ getCommand "glGetProgramResourceLocation"
-
--- glGetProgramResourceLocationIndex -------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocationIndex.xhtml OpenGL 4.x>.
-glGetProgramResourceLocationIndex
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
-  -> m GLint
-glGetProgramResourceLocationIndex v1 v2 v3 = liftIO $ dyn399 ptr_glGetProgramResourceLocationIndex v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramResourceLocationIndex #-}
-ptr_glGetProgramResourceLocationIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
-ptr_glGetProgramResourceLocationIndex = unsafePerformIO $ getCommand "glGetProgramResourceLocationIndex"
-
--- glGetProgramResourceLocationIndexEXT ----------------------------------------
-
-glGetProgramResourceLocationIndexEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
-  -> m GLint
-glGetProgramResourceLocationIndexEXT v1 v2 v3 = liftIO $ dyn399 ptr_glGetProgramResourceLocationIndexEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramResourceLocationIndexEXT #-}
-ptr_glGetProgramResourceLocationIndexEXT :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
-ptr_glGetProgramResourceLocationIndexEXT = unsafePerformIO $ getCommand "glGetProgramResourceLocationIndexEXT"
-
--- glGetProgramResourceName ----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceName.xhtml OpenGL 4.x>.
-glGetProgramResourceName
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
-  -> m ()
-glGetProgramResourceName v1 v2 v3 v4 v5 v6 = liftIO $ dyn304 ptr_glGetProgramResourceName v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glGetProgramResourceName #-}
-ptr_glGetProgramResourceName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
-ptr_glGetProgramResourceName = unsafePerformIO $ getCommand "glGetProgramResourceName"
-
--- glGetProgramResourcefvNV ----------------------------------------------------
-
-glGetProgramResourcefvNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @propCount@.
-  -> Ptr GLenum -- ^ @props@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@.
-  -> Ptr GLfloat -- ^ @params@.
-  -> m ()
-glGetProgramResourcefvNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn400 ptr_glGetProgramResourcefvNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glGetProgramResourcefvNV #-}
-ptr_glGetProgramResourcefvNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
-ptr_glGetProgramResourcefvNV = unsafePerformIO $ getCommand "glGetProgramResourcefvNV"
-
--- glGetProgramResourceiv ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResource.xhtml OpenGL 4.x>.
-glGetProgramResourceiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @programInterface@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @propCount@.
-  -> Ptr GLenum -- ^ @props@ pointing to @propCount@ elements of type @GLenum@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
-  -> m ()
-glGetProgramResourceiv v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn401 ptr_glGetProgramResourceiv v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glGetProgramResourceiv #-}
-ptr_glGetProgramResourceiv :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
-ptr_glGetProgramResourceiv = unsafePerformIO $ getCommand "glGetProgramResourceiv"
-
--- glGetProgramStageiv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramStage.xhtml OpenGL 4.x>.
-glGetProgramStageiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @shadertype@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @values@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glGetProgramStageiv v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetProgramStageiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetProgramStageiv #-}
-ptr_glGetProgramStageiv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetProgramStageiv = unsafePerformIO $ getCommand "glGetProgramStageiv"
-
--- glGetProgramStringARB -------------------------------------------------------
-
-glGetProgramStringARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLenum -- ^ @pname@ of type @ProgramStringPropertyARB@.
-  -> Ptr a -- ^ @string@ pointing to @COMPSIZE(target,pname)@ elements of type @a@.
-  -> m ()
-glGetProgramStringARB v1 v2 v3 = liftIO $ dyn242 ptr_glGetProgramStringARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramStringARB #-}
-ptr_glGetProgramStringARB :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glGetProgramStringARB = unsafePerformIO $ getCommand "glGetProgramStringARB"
-
--- glGetProgramStringNV --------------------------------------------------------
-
-glGetProgramStringNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
-  -> Ptr GLubyte -- ^ @program@ pointing to @COMPSIZE(id,pname)@ elements of type @ProgramCharacterNV@.
-  -> m ()
-glGetProgramStringNV v1 v2 v3 = liftIO $ dyn402 ptr_glGetProgramStringNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramStringNV #-}
-ptr_glGetProgramStringNV :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
-ptr_glGetProgramStringNV = unsafePerformIO $ getCommand "glGetProgramStringNV"
-
--- glGetProgramSubroutineParameteruivNV ----------------------------------------
-
-glGetProgramSubroutineParameteruivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(target)@ elements of type @GLuint@.
-  -> m ()
-glGetProgramSubroutineParameteruivNV v1 v2 v3 = liftIO $ dyn214 ptr_glGetProgramSubroutineParameteruivNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramSubroutineParameteruivNV #-}
-ptr_glGetProgramSubroutineParameteruivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glGetProgramSubroutineParameteruivNV = unsafePerformIO $ getCommand "glGetProgramSubroutineParameteruivNV"
-
--- glGetProgramiv --------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetProgram.xhtml OpenGL 4.x>.
-glGetProgramiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetProgramiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetProgramiv v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramiv #-}
-ptr_glGetProgramiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetProgramiv = unsafePerformIO $ getCommand "glGetProgramiv"
-
--- glGetProgramivARB -----------------------------------------------------------
-
-glGetProgramivARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLenum -- ^ @pname@ of type @ProgramPropertyARB@.
-  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glGetProgramivARB v1 v2 v3 = liftIO $ dyn133 ptr_glGetProgramivARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetProgramivARB #-}
-ptr_glGetProgramivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetProgramivARB = unsafePerformIO $ getCommand "glGetProgramivARB"
 
diff --git a/src/Graphics/GL/Functions/F12.hs b/src/Graphics/GL/Functions/F12.hs
--- a/src/Graphics/GL/Functions/F12.hs
+++ b/src/Graphics/GL/Functions/F12.hs
@@ -15,6 +15,19 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F12 (
+  glGetProgramResourceIndex,
+  glGetProgramResourceLocation,
+  glGetProgramResourceLocationIndex,
+  glGetProgramResourceLocationIndexEXT,
+  glGetProgramResourceName,
+  glGetProgramResourcefvNV,
+  glGetProgramResourceiv,
+  glGetProgramStageiv,
+  glGetProgramStringARB,
+  glGetProgramStringNV,
+  glGetProgramSubroutineParameteruivNV,
+  glGetProgramiv,
+  glGetProgramivARB,
   glGetProgramivNV,
   glGetQueryBufferObjecti64v,
   glGetQueryBufferObjectiv,
@@ -45,6 +58,7 @@
   glGetSamplerParameterIuivOES,
   glGetSamplerParameterfv,
   glGetSamplerParameteriv,
+  glGetSemaphoreParameterui64vEXT,
   glGetSeparableFilter,
   glGetSeparableFilterEXT,
   glGetShaderInfoLog,
@@ -100,21 +114,7 @@
   glGetTextureParameterIiv,
   glGetTextureParameterIivEXT,
   glGetTextureParameterIuiv,
-  glGetTextureParameterIuivEXT,
-  glGetTextureParameterfv,
-  glGetTextureParameterfvEXT,
-  glGetTextureParameteriv,
-  glGetTextureParameterivEXT,
-  glGetTextureSamplerHandleARB,
-  glGetTextureSamplerHandleIMG,
-  glGetTextureSamplerHandleNV,
-  glGetTextureSubImage,
-  glGetTrackMatrixivNV,
-  glGetTransformFeedbackVarying,
-  glGetTransformFeedbackVaryingEXT,
-  glGetTransformFeedbackVaryingNV,
-  glGetTransformFeedbacki64_v,
-  glGetTransformFeedbacki_v
+  glGetTextureParameterIuivEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,209 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetProgramResourceIndex ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceIndex.xhtml OpenGL 4.x>.
+glGetProgramResourceIndex
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLuint
+glGetProgramResourceIndex v1 v2 v3 = liftIO $ dyn405 ptr_glGetProgramResourceIndex v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramResourceIndex #-}
+ptr_glGetProgramResourceIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
+ptr_glGetProgramResourceIndex = unsafePerformIO $ getCommand "glGetProgramResourceIndex"
+
+-- glGetProgramResourceLocation ------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocation.xhtml OpenGL 4.x>.
+glGetProgramResourceLocation
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLint
+glGetProgramResourceLocation v1 v2 v3 = liftIO $ dyn406 ptr_glGetProgramResourceLocation v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramResourceLocation #-}
+ptr_glGetProgramResourceLocation :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
+ptr_glGetProgramResourceLocation = unsafePerformIO $ getCommand "glGetProgramResourceLocation"
+
+-- glGetProgramResourceLocationIndex -------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocationIndex.xhtml OpenGL 4.x>.
+glGetProgramResourceLocationIndex
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLint
+glGetProgramResourceLocationIndex v1 v2 v3 = liftIO $ dyn406 ptr_glGetProgramResourceLocationIndex v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramResourceLocationIndex #-}
+ptr_glGetProgramResourceLocationIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
+ptr_glGetProgramResourceLocationIndex = unsafePerformIO $ getCommand "glGetProgramResourceLocationIndex"
+
+-- glGetProgramResourceLocationIndexEXT ----------------------------------------
+
+glGetProgramResourceLocationIndexEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLint
+glGetProgramResourceLocationIndexEXT v1 v2 v3 = liftIO $ dyn406 ptr_glGetProgramResourceLocationIndexEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramResourceLocationIndexEXT #-}
+ptr_glGetProgramResourceLocationIndexEXT :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
+ptr_glGetProgramResourceLocationIndexEXT = unsafePerformIO $ getCommand "glGetProgramResourceLocationIndexEXT"
+
+-- glGetProgramResourceName ----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceName.xhtml OpenGL 4.x>.
+glGetProgramResourceName
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
+  -> m ()
+glGetProgramResourceName v1 v2 v3 v4 v5 v6 = liftIO $ dyn310 ptr_glGetProgramResourceName v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glGetProgramResourceName #-}
+ptr_glGetProgramResourceName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
+ptr_glGetProgramResourceName = unsafePerformIO $ getCommand "glGetProgramResourceName"
+
+-- glGetProgramResourcefvNV ----------------------------------------------------
+
+glGetProgramResourcefvNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @propCount@.
+  -> Ptr GLenum -- ^ @props@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@.
+  -> Ptr GLfloat -- ^ @params@.
+  -> m ()
+glGetProgramResourcefvNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn407 ptr_glGetProgramResourcefvNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glGetProgramResourcefvNV #-}
+ptr_glGetProgramResourcefvNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetProgramResourcefvNV = unsafePerformIO $ getCommand "glGetProgramResourcefvNV"
+
+-- glGetProgramResourceiv ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResource.xhtml OpenGL 4.x>.
+glGetProgramResourceiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @programInterface@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @propCount@.
+  -> Ptr GLenum -- ^ @props@ pointing to @propCount@ elements of type @GLenum@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
+  -> m ()
+glGetProgramResourceiv v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn408 ptr_glGetProgramResourceiv v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glGetProgramResourceiv #-}
+ptr_glGetProgramResourceiv :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
+ptr_glGetProgramResourceiv = unsafePerformIO $ getCommand "glGetProgramResourceiv"
+
+-- glGetProgramStageiv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramStage.xhtml OpenGL 4.x>.
+glGetProgramStageiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @shadertype@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @values@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glGetProgramStageiv v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetProgramStageiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetProgramStageiv #-}
+ptr_glGetProgramStageiv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetProgramStageiv = unsafePerformIO $ getCommand "glGetProgramStageiv"
+
+-- glGetProgramStringARB -------------------------------------------------------
+
+glGetProgramStringARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLenum -- ^ @pname@ of type @ProgramStringPropertyARB@.
+  -> Ptr a -- ^ @string@ pointing to @COMPSIZE(target,pname)@ elements of type @a@.
+  -> m ()
+glGetProgramStringARB v1 v2 v3 = liftIO $ dyn245 ptr_glGetProgramStringARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramStringARB #-}
+ptr_glGetProgramStringARB :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glGetProgramStringARB = unsafePerformIO $ getCommand "glGetProgramStringARB"
+
+-- glGetProgramStringNV --------------------------------------------------------
+
+glGetProgramStringNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
+  -> Ptr GLubyte -- ^ @program@ pointing to @COMPSIZE(id,pname)@ elements of type @ProgramCharacterNV@.
+  -> m ()
+glGetProgramStringNV v1 v2 v3 = liftIO $ dyn409 ptr_glGetProgramStringNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramStringNV #-}
+ptr_glGetProgramStringNV :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
+ptr_glGetProgramStringNV = unsafePerformIO $ getCommand "glGetProgramStringNV"
+
+-- glGetProgramSubroutineParameteruivNV ----------------------------------------
+
+glGetProgramSubroutineParameteruivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(target)@ elements of type @GLuint@.
+  -> m ()
+glGetProgramSubroutineParameteruivNV v1 v2 v3 = liftIO $ dyn217 ptr_glGetProgramSubroutineParameteruivNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramSubroutineParameteruivNV #-}
+ptr_glGetProgramSubroutineParameteruivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glGetProgramSubroutineParameteruivNV = unsafePerformIO $ getCommand "glGetProgramSubroutineParameteruivNV"
+
+-- glGetProgramiv --------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetProgram.xhtml OpenGL 4.x>.
+glGetProgramiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetProgramiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetProgramiv v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramiv #-}
+ptr_glGetProgramiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetProgramiv = unsafePerformIO $ getCommand "glGetProgramiv"
+
+-- glGetProgramivARB -----------------------------------------------------------
+
+glGetProgramivARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLenum -- ^ @pname@ of type @ProgramPropertyARB@.
+  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glGetProgramivARB v1 v2 v3 = liftIO $ dyn136 ptr_glGetProgramivARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetProgramivARB #-}
+ptr_glGetProgramivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetProgramivARB = unsafePerformIO $ getCommand "glGetProgramivARB"
+
 -- glGetProgramivNV ------------------------------------------------------------
 
 glGetProgramivNV
@@ -131,7 +334,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetProgramivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetProgramivNV v1 v2 v3
+glGetProgramivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetProgramivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetProgramivNV #-}
 ptr_glGetProgramivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -146,7 +349,7 @@
   -> GLenum -- ^ @pname@.
   -> GLintptr -- ^ @offset@.
   -> m ()
-glGetQueryBufferObjecti64v v1 v2 v3 v4 = liftIO $ dyn403 ptr_glGetQueryBufferObjecti64v v1 v2 v3 v4
+glGetQueryBufferObjecti64v v1 v2 v3 v4 = liftIO $ dyn410 ptr_glGetQueryBufferObjecti64v v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetQueryBufferObjecti64v #-}
 ptr_glGetQueryBufferObjecti64v :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
@@ -161,7 +364,7 @@
   -> GLenum -- ^ @pname@.
   -> GLintptr -- ^ @offset@.
   -> m ()
-glGetQueryBufferObjectiv v1 v2 v3 v4 = liftIO $ dyn403 ptr_glGetQueryBufferObjectiv v1 v2 v3 v4
+glGetQueryBufferObjectiv v1 v2 v3 v4 = liftIO $ dyn410 ptr_glGetQueryBufferObjectiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetQueryBufferObjectiv #-}
 ptr_glGetQueryBufferObjectiv :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
@@ -176,7 +379,7 @@
   -> GLenum -- ^ @pname@.
   -> GLintptr -- ^ @offset@.
   -> m ()
-glGetQueryBufferObjectui64v v1 v2 v3 v4 = liftIO $ dyn403 ptr_glGetQueryBufferObjectui64v v1 v2 v3 v4
+glGetQueryBufferObjectui64v v1 v2 v3 v4 = liftIO $ dyn410 ptr_glGetQueryBufferObjectui64v v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetQueryBufferObjectui64v #-}
 ptr_glGetQueryBufferObjectui64v :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
@@ -191,7 +394,7 @@
   -> GLenum -- ^ @pname@.
   -> GLintptr -- ^ @offset@.
   -> m ()
-glGetQueryBufferObjectuiv v1 v2 v3 v4 = liftIO $ dyn403 ptr_glGetQueryBufferObjectuiv v1 v2 v3 v4
+glGetQueryBufferObjectuiv v1 v2 v3 v4 = liftIO $ dyn410 ptr_glGetQueryBufferObjectuiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetQueryBufferObjectuiv #-}
 ptr_glGetQueryBufferObjectuiv :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
@@ -207,7 +410,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetQueryIndexediv v1 v2 v3 v4 = liftIO $ dyn353 ptr_glGetQueryIndexediv v1 v2 v3 v4
+glGetQueryIndexediv v1 v2 v3 v4 = liftIO $ dyn359 ptr_glGetQueryIndexediv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetQueryIndexediv #-}
 ptr_glGetQueryIndexediv :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -222,7 +425,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
   -> m ()
-glGetQueryObjecti64v v1 v2 v3 = liftIO $ dyn361 ptr_glGetQueryObjecti64v v1 v2 v3
+glGetQueryObjecti64v v1 v2 v3 = liftIO $ dyn367 ptr_glGetQueryObjecti64v v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjecti64v #-}
 ptr_glGetQueryObjecti64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
@@ -237,7 +440,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
   -> m ()
-glGetQueryObjecti64vEXT v1 v2 v3 = liftIO $ dyn361 ptr_glGetQueryObjecti64vEXT v1 v2 v3
+glGetQueryObjecti64vEXT v1 v2 v3 = liftIO $ dyn367 ptr_glGetQueryObjecti64vEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjecti64vEXT #-}
 ptr_glGetQueryObjecti64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
@@ -252,7 +455,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetQueryObjectiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetQueryObjectiv v1 v2 v3
+glGetQueryObjectiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetQueryObjectiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectiv #-}
 ptr_glGetQueryObjectiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -267,7 +470,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetQueryObjectivARB v1 v2 v3 = liftIO $ dyn335 ptr_glGetQueryObjectivARB v1 v2 v3
+glGetQueryObjectivARB v1 v2 v3 = liftIO $ dyn341 ptr_glGetQueryObjectivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectivARB #-}
 ptr_glGetQueryObjectivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -282,7 +485,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetQueryObjectivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetQueryObjectivEXT v1 v2 v3
+glGetQueryObjectivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetQueryObjectivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectivEXT #-}
 ptr_glGetQueryObjectivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -297,7 +500,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64@.
   -> m ()
-glGetQueryObjectui64v v1 v2 v3 = liftIO $ dyn404 ptr_glGetQueryObjectui64v v1 v2 v3
+glGetQueryObjectui64v v1 v2 v3 = liftIO $ dyn411 ptr_glGetQueryObjectui64v v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectui64v #-}
 ptr_glGetQueryObjectui64v :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
@@ -312,7 +515,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64@.
   -> m ()
-glGetQueryObjectui64vEXT v1 v2 v3 = liftIO $ dyn404 ptr_glGetQueryObjectui64vEXT v1 v2 v3
+glGetQueryObjectui64vEXT v1 v2 v3 = liftIO $ dyn411 ptr_glGetQueryObjectui64vEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectui64vEXT #-}
 ptr_glGetQueryObjectui64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
@@ -327,7 +530,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetQueryObjectuiv v1 v2 v3 = liftIO $ dyn377 ptr_glGetQueryObjectuiv v1 v2 v3
+glGetQueryObjectuiv v1 v2 v3 = liftIO $ dyn384 ptr_glGetQueryObjectuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectuiv #-}
 ptr_glGetQueryObjectuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -342,7 +545,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetQueryObjectuivARB v1 v2 v3 = liftIO $ dyn377 ptr_glGetQueryObjectuivARB v1 v2 v3
+glGetQueryObjectuivARB v1 v2 v3 = liftIO $ dyn384 ptr_glGetQueryObjectuivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectuivARB #-}
 ptr_glGetQueryObjectuivARB :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -356,7 +559,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@.
   -> m ()
-glGetQueryObjectuivEXT v1 v2 v3 = liftIO $ dyn377 ptr_glGetQueryObjectuivEXT v1 v2 v3
+glGetQueryObjectuivEXT v1 v2 v3 = liftIO $ dyn384 ptr_glGetQueryObjectuivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryObjectuivEXT #-}
 ptr_glGetQueryObjectuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -371,7 +574,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetQueryiv v1 v2 v3 = liftIO $ dyn133 ptr_glGetQueryiv v1 v2 v3
+glGetQueryiv v1 v2 v3 = liftIO $ dyn136 ptr_glGetQueryiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryiv #-}
 ptr_glGetQueryiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -386,7 +589,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetQueryivARB v1 v2 v3 = liftIO $ dyn133 ptr_glGetQueryivARB v1 v2 v3
+glGetQueryivARB v1 v2 v3 = liftIO $ dyn136 ptr_glGetQueryivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryivARB #-}
 ptr_glGetQueryivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -400,7 +603,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetQueryivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetQueryivEXT v1 v2 v3
+glGetQueryivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetQueryivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetQueryivEXT #-}
 ptr_glGetQueryivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -415,7 +618,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetRenderbufferParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetRenderbufferParameteriv v1 v2 v3
+glGetRenderbufferParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetRenderbufferParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetRenderbufferParameteriv #-}
 ptr_glGetRenderbufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -430,7 +633,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetRenderbufferParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetRenderbufferParameterivEXT v1 v2 v3
+glGetRenderbufferParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetRenderbufferParameterivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetRenderbufferParameterivEXT #-}
 ptr_glGetRenderbufferParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -444,7 +647,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetRenderbufferParameterivOES v1 v2 v3 = liftIO $ dyn133 ptr_glGetRenderbufferParameterivOES v1 v2 v3
+glGetRenderbufferParameterivOES v1 v2 v3 = liftIO $ dyn136 ptr_glGetRenderbufferParameterivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetRenderbufferParameterivOES #-}
 ptr_glGetRenderbufferParameterivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -459,7 +662,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetSamplerParameterIiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetSamplerParameterIiv v1 v2 v3
+glGetSamplerParameterIiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetSamplerParameterIiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIiv #-}
 ptr_glGetSamplerParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -474,7 +677,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetSamplerParameterIivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetSamplerParameterIivEXT v1 v2 v3
+glGetSamplerParameterIivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetSamplerParameterIivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIivEXT #-}
 ptr_glGetSamplerParameterIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -489,7 +692,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetSamplerParameterIivOES v1 v2 v3 = liftIO $ dyn335 ptr_glGetSamplerParameterIivOES v1 v2 v3
+glGetSamplerParameterIivOES v1 v2 v3 = liftIO $ dyn341 ptr_glGetSamplerParameterIivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIivOES #-}
 ptr_glGetSamplerParameterIivOES :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -504,7 +707,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetSamplerParameterIuiv v1 v2 v3 = liftIO $ dyn377 ptr_glGetSamplerParameterIuiv v1 v2 v3
+glGetSamplerParameterIuiv v1 v2 v3 = liftIO $ dyn384 ptr_glGetSamplerParameterIuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIuiv #-}
 ptr_glGetSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -519,7 +722,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn377 ptr_glGetSamplerParameterIuivEXT v1 v2 v3
+glGetSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn384 ptr_glGetSamplerParameterIuivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIuivEXT #-}
 ptr_glGetSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -534,7 +737,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn377 ptr_glGetSamplerParameterIuivOES v1 v2 v3
+glGetSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn384 ptr_glGetSamplerParameterIuivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterIuivOES #-}
 ptr_glGetSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -549,7 +752,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetSamplerParameterfv v1 v2 v3 = liftIO $ dyn351 ptr_glGetSamplerParameterfv v1 v2 v3
+glGetSamplerParameterfv v1 v2 v3 = liftIO $ dyn357 ptr_glGetSamplerParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameterfv #-}
 ptr_glGetSamplerParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -564,12 +767,26 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetSamplerParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glGetSamplerParameteriv v1 v2 v3
+glGetSamplerParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glGetSamplerParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetSamplerParameteriv #-}
 ptr_glGetSamplerParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
 ptr_glGetSamplerParameteriv = unsafePerformIO $ getCommand "glGetSamplerParameteriv"
 
+-- glGetSemaphoreParameterui64vEXT ---------------------------------------------
+
+glGetSemaphoreParameterui64vEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLenum -- ^ @pname@ of type [SemaphoreParameterName](Graphics-GL-Groups.html#SemaphoreParameterName).
+  -> Ptr GLuint64 -- ^ @params@.
+  -> m ()
+glGetSemaphoreParameterui64vEXT v1 v2 v3 = liftIO $ dyn411 ptr_glGetSemaphoreParameterui64vEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetSemaphoreParameterui64vEXT #-}
+ptr_glGetSemaphoreParameterui64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
+ptr_glGetSemaphoreParameterui64vEXT = unsafePerformIO $ getCommand "glGetSemaphoreParameterui64vEXT"
+
 -- glGetSeparableFilter --------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetSeparableFilter.xml OpenGL 2.x>.
@@ -582,7 +799,7 @@
   -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type)@ elements of type @b@.
   -> Ptr c -- ^ @span@ pointing to @COMPSIZE(target,format,type)@ elements of type @c@.
   -> m ()
-glGetSeparableFilter v1 v2 v3 v4 v5 v6 = liftIO $ dyn405 ptr_glGetSeparableFilter v1 v2 v3 v4 v5 v6
+glGetSeparableFilter v1 v2 v3 v4 v5 v6 = liftIO $ dyn412 ptr_glGetSeparableFilter v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetSeparableFilter #-}
 ptr_glGetSeparableFilter :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
@@ -599,7 +816,7 @@
   -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type)@ elements of type @b@.
   -> Ptr c -- ^ @span@ pointing to @COMPSIZE(target,format,type)@ elements of type @c@.
   -> m ()
-glGetSeparableFilterEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn405 ptr_glGetSeparableFilterEXT v1 v2 v3 v4 v5 v6
+glGetSeparableFilterEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn412 ptr_glGetSeparableFilterEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetSeparableFilterEXT #-}
 ptr_glGetSeparableFilterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
@@ -615,7 +832,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetShaderInfoLog v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetShaderInfoLog v1 v2 v3 v4
+glGetShaderInfoLog v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetShaderInfoLog v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetShaderInfoLog #-}
 ptr_glGetShaderInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -631,7 +848,7 @@
   -> Ptr GLint -- ^ @range@ pointing to @2@ elements of type @GLint@.
   -> Ptr GLint -- ^ @precision@ pointing to @2@ elements of type @GLint@.
   -> m ()
-glGetShaderPrecisionFormat v1 v2 v3 v4 = liftIO $ dyn406 ptr_glGetShaderPrecisionFormat v1 v2 v3 v4
+glGetShaderPrecisionFormat v1 v2 v3 v4 = liftIO $ dyn413 ptr_glGetShaderPrecisionFormat v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetShaderPrecisionFormat #-}
 ptr_glGetShaderPrecisionFormat :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
@@ -647,7 +864,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @source@ pointing to @bufSize@ elements of type @GLchar@.
   -> m ()
-glGetShaderSource v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetShaderSource v1 v2 v3 v4
+glGetShaderSource v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetShaderSource v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetShaderSource #-}
 ptr_glGetShaderSource :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -663,7 +880,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLcharARB -- ^ @source@ pointing to @maxLength@ elements of type @GLcharARB@.
   -> m ()
-glGetShaderSourceARB v1 v2 v3 v4 = liftIO $ dyn340 ptr_glGetShaderSourceARB v1 v2 v3 v4
+glGetShaderSourceARB v1 v2 v3 v4 = liftIO $ dyn346 ptr_glGetShaderSourceARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetShaderSourceARB #-}
 ptr_glGetShaderSourceARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
@@ -678,7 +895,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetShaderiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetShaderiv v1 v2 v3
+glGetShaderiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetShaderiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetShaderiv #-}
 ptr_glGetShaderiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -691,7 +908,7 @@
   => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
   -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
   -> m ()
-glGetSharpenTexFuncSGIS v1 v2 = liftIO $ dyn94 ptr_glGetSharpenTexFuncSGIS v1 v2
+glGetSharpenTexFuncSGIS v1 v2 = liftIO $ dyn97 ptr_glGetSharpenTexFuncSGIS v1 v2
 
 {-# NOINLINE ptr_glGetSharpenTexFuncSGIS #-}
 ptr_glGetSharpenTexFuncSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -703,7 +920,7 @@
   :: MonadIO m
   => GLenum -- ^ @shadertype@.
   -> m GLushort
-glGetStageIndexNV v1 = liftIO $ dyn407 ptr_glGetStageIndexNV v1
+glGetStageIndexNV v1 = liftIO $ dyn414 ptr_glGetStageIndexNV v1
 
 {-# NOINLINE ptr_glGetStageIndexNV #-}
 ptr_glGetStageIndexNV :: FunPtr (GLenum -> IO GLushort)
@@ -716,7 +933,7 @@
   :: MonadIO m
   => GLenum -- ^ @name@ of type [StringName](Graphics-GL-Groups.html#StringName).
   -> m (Ptr GLubyte) -- ^ pointing to elements of type @String@.
-glGetString v1 = liftIO $ dyn408 ptr_glGetString v1
+glGetString v1 = liftIO $ dyn415 ptr_glGetString v1
 
 {-# NOINLINE ptr_glGetString #-}
 ptr_glGetString :: FunPtr (GLenum -> IO (Ptr GLubyte))
@@ -730,7 +947,7 @@
   => GLenum -- ^ @name@.
   -> GLuint -- ^ @index@.
   -> m (Ptr GLubyte) -- ^ pointing to elements of type @String@.
-glGetStringi v1 v2 = liftIO $ dyn409 ptr_glGetStringi v1 v2
+glGetStringi v1 v2 = liftIO $ dyn416 ptr_glGetStringi v1 v2
 
 {-# NOINLINE ptr_glGetStringi #-}
 ptr_glGetStringi :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
@@ -745,7 +962,7 @@
   -> GLenum -- ^ @shadertype@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLuint
-glGetSubroutineIndex v1 v2 v3 = liftIO $ dyn398 ptr_glGetSubroutineIndex v1 v2 v3
+glGetSubroutineIndex v1 v2 v3 = liftIO $ dyn405 ptr_glGetSubroutineIndex v1 v2 v3
 
 {-# NOINLINE ptr_glGetSubroutineIndex #-}
 ptr_glGetSubroutineIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
@@ -760,7 +977,7 @@
   -> GLenum -- ^ @shadertype@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLint
-glGetSubroutineUniformLocation v1 v2 v3 = liftIO $ dyn399 ptr_glGetSubroutineUniformLocation v1 v2 v3
+glGetSubroutineUniformLocation v1 v2 v3 = liftIO $ dyn406 ptr_glGetSubroutineUniformLocation v1 v2 v3
 
 {-# NOINLINE ptr_glGetSubroutineUniformLocation #-}
 ptr_glGetSubroutineUniformLocation :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
@@ -777,7 +994,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetSynciv v1 v2 v3 v4 v5 = liftIO $ dyn410 ptr_glGetSynciv v1 v2 v3 v4 v5
+glGetSynciv v1 v2 v3 v4 v5 = liftIO $ dyn417 ptr_glGetSynciv v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetSynciv #-}
 ptr_glGetSynciv :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
@@ -794,7 +1011,7 @@
   -> Ptr GLsizei -- ^ @length@.
   -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetSyncivAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn410 ptr_glGetSyncivAPPLE v1 v2 v3 v4 v5
+glGetSyncivAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn417 ptr_glGetSyncivAPPLE v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetSyncivAPPLE #-}
 ptr_glGetSyncivAPPLE :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
@@ -807,7 +1024,7 @@
   => GLenum -- ^ @pname@ of type @GetTexBumpParameterATI@.
   -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexBumpParameterfvATI v1 v2 = liftIO $ dyn94 ptr_glGetTexBumpParameterfvATI v1 v2
+glGetTexBumpParameterfvATI v1 v2 = liftIO $ dyn97 ptr_glGetTexBumpParameterfvATI v1 v2
 
 {-# NOINLINE ptr_glGetTexBumpParameterfvATI #-}
 ptr_glGetTexBumpParameterfvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
@@ -820,7 +1037,7 @@
   => GLenum -- ^ @pname@ of type @GetTexBumpParameterATI@.
   -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexBumpParameterivATI v1 v2 = liftIO $ dyn136 ptr_glGetTexBumpParameterivATI v1 v2
+glGetTexBumpParameterivATI v1 v2 = liftIO $ dyn139 ptr_glGetTexBumpParameterivATI v1 v2
 
 {-# NOINLINE ptr_glGetTexBumpParameterivATI #-}
 ptr_glGetTexBumpParameterivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
@@ -835,7 +1052,7 @@
   -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexEnvfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetTexEnvfv v1 v2 v3
+glGetTexEnvfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetTexEnvfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexEnvfv #-}
 ptr_glGetTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -850,7 +1067,7 @@
   -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexEnviv v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexEnviv v1 v2 v3
+glGetTexEnviv v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexEnviv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexEnviv #-}
 ptr_glGetTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -864,7 +1081,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexEnvxv v1 v2 v3 = liftIO $ dyn163 ptr_glGetTexEnvxv v1 v2 v3
+glGetTexEnvxv v1 v2 v3 = liftIO $ dyn166 ptr_glGetTexEnvxv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexEnvxv #-}
 ptr_glGetTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -878,7 +1095,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexEnvxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetTexEnvxvOES v1 v2 v3
+glGetTexEnvxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetTexEnvxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexEnvxvOES #-}
 ptr_glGetTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -892,7 +1109,7 @@
   -> GLenum -- ^ @filter@ of type @TextureFilterSGIS@.
   -> Ptr GLfloat -- ^ @weights@ pointing to @COMPSIZE(target,filter)@ elements of type @GLfloat@.
   -> m ()
-glGetTexFilterFuncSGIS v1 v2 v3 = liftIO $ dyn132 ptr_glGetTexFilterFuncSGIS v1 v2 v3
+glGetTexFilterFuncSGIS v1 v2 v3 = liftIO $ dyn135 ptr_glGetTexFilterFuncSGIS v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexFilterFuncSGIS #-}
 ptr_glGetTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -907,7 +1124,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetTexGendv v1 v2 v3 = liftIO $ dyn355 ptr_glGetTexGendv v1 v2 v3
+glGetTexGendv v1 v2 v3 = liftIO $ dyn361 ptr_glGetTexGendv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGendv #-}
 ptr_glGetTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
@@ -922,7 +1139,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexGenfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetTexGenfv v1 v2 v3
+glGetTexGenfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetTexGenfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGenfv #-}
 ptr_glGetTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -936,7 +1153,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexGenfvOES v1 v2 v3 = liftIO $ dyn132 ptr_glGetTexGenfvOES v1 v2 v3
+glGetTexGenfvOES v1 v2 v3 = liftIO $ dyn135 ptr_glGetTexGenfvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGenfvOES #-}
 ptr_glGetTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -951,7 +1168,7 @@
   -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexGeniv v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexGeniv v1 v2 v3
+glGetTexGeniv v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexGeniv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGeniv #-}
 ptr_glGetTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -965,7 +1182,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexGenivOES v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexGenivOES v1 v2 v3
+glGetTexGenivOES v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexGenivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGenivOES #-}
 ptr_glGetTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -979,7 +1196,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexGenxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetTexGenxvOES v1 v2 v3
+glGetTexGenxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetTexGenxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexGenxvOES #-}
 ptr_glGetTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -996,7 +1213,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
   -> m ()
-glGetTexImage v1 v2 v3 v4 v5 = liftIO $ dyn411 ptr_glGetTexImage v1 v2 v3 v4 v5
+glGetTexImage v1 v2 v3 v4 v5 = liftIO $ dyn418 ptr_glGetTexImage v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetTexImage #-}
 ptr_glGetTexImage :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1012,7 +1229,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexLevelParameterfv v1 v2 v3 v4 = liftIO $ dyn412 ptr_glGetTexLevelParameterfv v1 v2 v3 v4
+glGetTexLevelParameterfv v1 v2 v3 v4 = liftIO $ dyn419 ptr_glGetTexLevelParameterfv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTexLevelParameterfv #-}
 ptr_glGetTexLevelParameterfv :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
@@ -1028,7 +1245,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexLevelParameteriv v1 v2 v3 v4 = liftIO $ dyn413 ptr_glGetTexLevelParameteriv v1 v2 v3 v4
+glGetTexLevelParameteriv v1 v2 v3 v4 = liftIO $ dyn420 ptr_glGetTexLevelParameteriv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTexLevelParameteriv #-}
 ptr_glGetTexLevelParameteriv :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
@@ -1043,7 +1260,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexLevelParameterxvOES v1 v2 v3 v4 = liftIO $ dyn414 ptr_glGetTexLevelParameterxvOES v1 v2 v3 v4
+glGetTexLevelParameterxvOES v1 v2 v3 v4 = liftIO $ dyn421 ptr_glGetTexLevelParameterxvOES v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTexLevelParameterxvOES #-}
 ptr_glGetTexLevelParameterxvOES :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ())
@@ -1058,7 +1275,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexParameterIiv v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexParameterIiv v1 v2 v3
+glGetTexParameterIiv v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexParameterIiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIiv #-}
 ptr_glGetTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1073,7 +1290,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexParameterIivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexParameterIivEXT v1 v2 v3
+glGetTexParameterIivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexParameterIivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIivEXT #-}
 ptr_glGetTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1088,7 +1305,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexParameterIivOES v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexParameterIivOES v1 v2 v3
+glGetTexParameterIivOES v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexParameterIivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIivOES #-}
 ptr_glGetTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1103,7 +1320,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetTexParameterIuiv v1 v2 v3 = liftIO $ dyn415 ptr_glGetTexParameterIuiv v1 v2 v3
+glGetTexParameterIuiv v1 v2 v3 = liftIO $ dyn422 ptr_glGetTexParameterIuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIuiv #-}
 ptr_glGetTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
@@ -1118,7 +1335,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetTexParameterIuivEXT v1 v2 v3 = liftIO $ dyn415 ptr_glGetTexParameterIuivEXT v1 v2 v3
+glGetTexParameterIuivEXT v1 v2 v3 = liftIO $ dyn422 ptr_glGetTexParameterIuivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIuivEXT #-}
 ptr_glGetTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
@@ -1133,7 +1350,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetTexParameterIuivOES v1 v2 v3 = liftIO $ dyn415 ptr_glGetTexParameterIuivOES v1 v2 v3
+glGetTexParameterIuivOES v1 v2 v3 = liftIO $ dyn422 ptr_glGetTexParameterIuivOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterIuivOES #-}
 ptr_glGetTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
@@ -1147,7 +1364,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetTexParameterPointervAPPLE v1 v2 v3 = liftIO $ dyn317 ptr_glGetTexParameterPointervAPPLE v1 v2 v3
+glGetTexParameterPointervAPPLE v1 v2 v3 = liftIO $ dyn323 ptr_glGetTexParameterPointervAPPLE v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterPointervAPPLE #-}
 ptr_glGetTexParameterPointervAPPLE :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -1162,7 +1379,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTexParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glGetTexParameterfv v1 v2 v3
+glGetTexParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glGetTexParameterfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterfv #-}
 ptr_glGetTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -1177,7 +1394,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTexParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glGetTexParameteriv v1 v2 v3
+glGetTexParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glGetTexParameteriv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameteriv #-}
 ptr_glGetTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1191,7 +1408,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexParameterxv v1 v2 v3 = liftIO $ dyn163 ptr_glGetTexParameterxv v1 v2 v3
+glGetTexParameterxv v1 v2 v3 = liftIO $ dyn166 ptr_glGetTexParameterxv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterxv #-}
 ptr_glGetTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1205,7 +1422,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
   -> m ()
-glGetTexParameterxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glGetTexParameterxvOES v1 v2 v3
+glGetTexParameterxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glGetTexParameterxvOES v1 v2 v3
 
 {-# NOINLINE ptr_glGetTexParameterxvOES #-}
 ptr_glGetTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
@@ -1217,7 +1434,7 @@
   :: MonadIO m
   => GLuint -- ^ @texture@.
   -> m GLuint64
-glGetTextureHandleARB v1 = liftIO $ dyn416 ptr_glGetTextureHandleARB v1
+glGetTextureHandleARB v1 = liftIO $ dyn423 ptr_glGetTextureHandleARB v1
 
 {-# NOINLINE ptr_glGetTextureHandleARB #-}
 ptr_glGetTextureHandleARB :: FunPtr (GLuint -> IO GLuint64)
@@ -1230,7 +1447,7 @@
   :: MonadIO m
   => GLuint -- ^ @texture@.
   -> m GLuint64
-glGetTextureHandleIMG v1 = liftIO $ dyn416 ptr_glGetTextureHandleIMG v1
+glGetTextureHandleIMG v1 = liftIO $ dyn423 ptr_glGetTextureHandleIMG v1
 
 {-# NOINLINE ptr_glGetTextureHandleIMG #-}
 ptr_glGetTextureHandleIMG :: FunPtr (GLuint -> IO GLuint64)
@@ -1242,7 +1459,7 @@
   :: MonadIO m
   => GLuint -- ^ @texture@.
   -> m GLuint64
-glGetTextureHandleNV v1 = liftIO $ dyn416 ptr_glGetTextureHandleNV v1
+glGetTextureHandleNV v1 = liftIO $ dyn423 ptr_glGetTextureHandleNV v1
 
 {-# NOINLINE ptr_glGetTextureHandleNV #-}
 ptr_glGetTextureHandleNV :: FunPtr (GLuint -> IO GLuint64)
@@ -1260,7 +1477,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @pixels@.
   -> m ()
-glGetTextureImage v1 v2 v3 v4 v5 v6 = liftIO $ dyn417 ptr_glGetTextureImage v1 v2 v3 v4 v5 v6
+glGetTextureImage v1 v2 v3 v4 v5 v6 = liftIO $ dyn424 ptr_glGetTextureImage v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetTextureImage #-}
 ptr_glGetTextureImage :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1277,7 +1494,7 @@
   -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
   -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
   -> m ()
-glGetTextureImageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn418 ptr_glGetTextureImageEXT v1 v2 v3 v4 v5 v6
+glGetTextureImageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn425 ptr_glGetTextureImageEXT v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetTextureImageEXT #-}
 ptr_glGetTextureImageEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
@@ -1293,7 +1510,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@.
   -> m ()
-glGetTextureLevelParameterfv v1 v2 v3 v4 = liftIO $ dyn419 ptr_glGetTextureLevelParameterfv v1 v2 v3 v4
+glGetTextureLevelParameterfv v1 v2 v3 v4 = liftIO $ dyn426 ptr_glGetTextureLevelParameterfv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTextureLevelParameterfv #-}
 ptr_glGetTextureLevelParameterfv :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
@@ -1309,7 +1526,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetTextureLevelParameterfvEXT v1 v2 v3 v4 v5 = liftIO $ dyn420 ptr_glGetTextureLevelParameterfvEXT v1 v2 v3 v4 v5
+glGetTextureLevelParameterfvEXT v1 v2 v3 v4 v5 = liftIO $ dyn427 ptr_glGetTextureLevelParameterfvEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetTextureLevelParameterfvEXT #-}
 ptr_glGetTextureLevelParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
@@ -1325,7 +1542,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetTextureLevelParameteriv v1 v2 v3 v4 = liftIO $ dyn421 ptr_glGetTextureLevelParameteriv v1 v2 v3 v4
+glGetTextureLevelParameteriv v1 v2 v3 v4 = liftIO $ dyn428 ptr_glGetTextureLevelParameteriv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTextureLevelParameteriv #-}
 ptr_glGetTextureLevelParameteriv :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
@@ -1341,7 +1558,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTextureLevelParameterivEXT v1 v2 v3 v4 v5 = liftIO $ dyn271 ptr_glGetTextureLevelParameterivEXT v1 v2 v3 v4 v5
+glGetTextureLevelParameterivEXT v1 v2 v3 v4 v5 = liftIO $ dyn275 ptr_glGetTextureLevelParameterivEXT v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetTextureLevelParameterivEXT #-}
 ptr_glGetTextureLevelParameterivEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
@@ -1356,7 +1573,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetTextureParameterIiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetTextureParameterIiv v1 v2 v3
+glGetTextureParameterIiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetTextureParameterIiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTextureParameterIiv #-}
 ptr_glGetTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1371,7 +1588,7 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetTextureParameterIivEXT v1 v2 v3 v4
+glGetTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetTextureParameterIivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTextureParameterIivEXT #-}
 ptr_glGetTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -1386,7 +1603,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@.
   -> m ()
-glGetTextureParameterIuiv v1 v2 v3 = liftIO $ dyn377 ptr_glGetTextureParameterIuiv v1 v2 v3
+glGetTextureParameterIuiv v1 v2 v3 = liftIO $ dyn384 ptr_glGetTextureParameterIuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTextureParameterIuiv #-}
 ptr_glGetTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -1401,232 +1618,9 @@
   -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetTextureParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn422 ptr_glGetTextureParameterIuivEXT v1 v2 v3 v4
+glGetTextureParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn429 ptr_glGetTextureParameterIuivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTextureParameterIuivEXT #-}
 ptr_glGetTextureParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
 ptr_glGetTextureParameterIuivEXT = unsafePerformIO $ getCommand "glGetTextureParameterIuivEXT"
-
--- glGetTextureParameterfv -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>.
-glGetTextureParameterfv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @params@.
-  -> m ()
-glGetTextureParameterfv v1 v2 v3 = liftIO $ dyn351 ptr_glGetTextureParameterfv v1 v2 v3
-
-{-# NOINLINE ptr_glGetTextureParameterfv #-}
-ptr_glGetTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glGetTextureParameterfv = unsafePerformIO $ getCommand "glGetTextureParameterfv"
-
--- glGetTextureParameterfvEXT --------------------------------------------------
-
-glGetTextureParameterfvEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetTextureParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn423 ptr_glGetTextureParameterfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetTextureParameterfvEXT #-}
-ptr_glGetTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glGetTextureParameterfvEXT = unsafePerformIO $ getCommand "glGetTextureParameterfvEXT"
-
--- glGetTextureParameteriv -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>.
-glGetTextureParameteriv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@.
-  -> m ()
-glGetTextureParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glGetTextureParameteriv v1 v2 v3
-
-{-# NOINLINE ptr_glGetTextureParameteriv #-}
-ptr_glGetTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetTextureParameteriv = unsafePerformIO $ getCommand "glGetTextureParameteriv"
-
--- glGetTextureParameterivEXT --------------------------------------------------
-
-glGetTextureParameterivEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetTextureParameterivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetTextureParameterivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetTextureParameterivEXT #-}
-ptr_glGetTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetTextureParameterivEXT = unsafePerformIO $ getCommand "glGetTextureParameterivEXT"
-
--- glGetTextureSamplerHandleARB ------------------------------------------------
-
-glGetTextureSamplerHandleARB
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLuint -- ^ @sampler@.
-  -> m GLuint64
-glGetTextureSamplerHandleARB v1 v2 = liftIO $ dyn424 ptr_glGetTextureSamplerHandleARB v1 v2
-
-{-# NOINLINE ptr_glGetTextureSamplerHandleARB #-}
-ptr_glGetTextureSamplerHandleARB :: FunPtr (GLuint -> GLuint -> IO GLuint64)
-ptr_glGetTextureSamplerHandleARB = unsafePerformIO $ getCommand "glGetTextureSamplerHandleARB"
-
--- glGetTextureSamplerHandleIMG ------------------------------------------------
-
--- | This command is an alias for 'glGetTextureSamplerHandleARB'.
-glGetTextureSamplerHandleIMG
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLuint -- ^ @sampler@.
-  -> m GLuint64
-glGetTextureSamplerHandleIMG v1 v2 = liftIO $ dyn424 ptr_glGetTextureSamplerHandleIMG v1 v2
-
-{-# NOINLINE ptr_glGetTextureSamplerHandleIMG #-}
-ptr_glGetTextureSamplerHandleIMG :: FunPtr (GLuint -> GLuint -> IO GLuint64)
-ptr_glGetTextureSamplerHandleIMG = unsafePerformIO $ getCommand "glGetTextureSamplerHandleIMG"
-
--- glGetTextureSamplerHandleNV -------------------------------------------------
-
-glGetTextureSamplerHandleNV
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLuint -- ^ @sampler@.
-  -> m GLuint64
-glGetTextureSamplerHandleNV v1 v2 = liftIO $ dyn424 ptr_glGetTextureSamplerHandleNV v1 v2
-
-{-# NOINLINE ptr_glGetTextureSamplerHandleNV #-}
-ptr_glGetTextureSamplerHandleNV :: FunPtr (GLuint -> GLuint -> IO GLuint64)
-ptr_glGetTextureSamplerHandleNV = unsafePerformIO $ getCommand "glGetTextureSamplerHandleNV"
-
--- glGetTextureSubImage --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTextureSubImage.xhtml OpenGL 4.x>.
-glGetTextureSubImage
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @pixels@.
-  -> m ()
-glGetTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn425 ptr_glGetTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
-
-{-# NOINLINE ptr_glGetTextureSubImage #-}
-ptr_glGetTextureSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glGetTextureSubImage = unsafePerformIO $ getCommand "glGetTextureSubImage"
-
--- glGetTrackMatrixivNV --------------------------------------------------------
-
-glGetTrackMatrixivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @address@.
-  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
-  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glGetTrackMatrixivNV v1 v2 v3 v4 = liftIO $ dyn353 ptr_glGetTrackMatrixivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetTrackMatrixivNV #-}
-ptr_glGetTrackMatrixivNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetTrackMatrixivNV = unsafePerformIO $ getCommand "glGetTrackMatrixivNV"
-
--- glGetTransformFeedbackVarying -----------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTransformFeedbackVarying.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedbackVarying.xhtml OpenGL 4.x>.
-glGetTransformFeedbackVarying
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLsizei -- ^ @size@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
-  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
-  -> m ()
-glGetTransformFeedbackVarying v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn308 ptr_glGetTransformFeedbackVarying v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glGetTransformFeedbackVarying #-}
-ptr_glGetTransformFeedbackVarying :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
-ptr_glGetTransformFeedbackVarying = unsafePerformIO $ getCommand "glGetTransformFeedbackVarying"
-
--- glGetTransformFeedbackVaryingEXT --------------------------------------------
-
--- | This command is an alias for 'glGetTransformFeedbackVarying'.
-glGetTransformFeedbackVaryingEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLsizei -- ^ @size@ pointing to @1@ element of type @GLsizei@.
-  -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
-  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
-  -> m ()
-glGetTransformFeedbackVaryingEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn308 ptr_glGetTransformFeedbackVaryingEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glGetTransformFeedbackVaryingEXT #-}
-ptr_glGetTransformFeedbackVaryingEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
-ptr_glGetTransformFeedbackVaryingEXT = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingEXT"
-
--- glGetTransformFeedbackVaryingNV ---------------------------------------------
-
-glGetTransformFeedbackVaryingNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @location@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glGetTransformFeedbackVaryingNV v1 v2 v3 = liftIO $ dyn426 ptr_glGetTransformFeedbackVaryingNV v1 v2 v3
-
-{-# NOINLINE ptr_glGetTransformFeedbackVaryingNV #-}
-ptr_glGetTransformFeedbackVaryingNV :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
-ptr_glGetTransformFeedbackVaryingNV = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingNV"
-
--- glGetTransformFeedbacki64_v -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>.
-glGetTransformFeedbacki64_v
-  :: MonadIO m
-  => GLuint -- ^ @xfb@.
-  -> GLenum -- ^ @pname@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint64 -- ^ @param@.
-  -> m ()
-glGetTransformFeedbacki64_v v1 v2 v3 v4 = liftIO $ dyn427 ptr_glGetTransformFeedbacki64_v v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetTransformFeedbacki64_v #-}
-ptr_glGetTransformFeedbacki64_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
-ptr_glGetTransformFeedbacki64_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki64_v"
-
--- glGetTransformFeedbacki_v ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>.
-glGetTransformFeedbacki_v
-  :: MonadIO m
-  => GLuint -- ^ @xfb@.
-  -> GLenum -- ^ @pname@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @param@.
-  -> m ()
-glGetTransformFeedbacki_v v1 v2 v3 v4 = liftIO $ dyn366 ptr_glGetTransformFeedbacki_v v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetTransformFeedbacki_v #-}
-ptr_glGetTransformFeedbacki_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
-ptr_glGetTransformFeedbacki_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki_v"
 
diff --git a/src/Graphics/GL/Functions/F13.hs b/src/Graphics/GL/Functions/F13.hs
--- a/src/Graphics/GL/Functions/F13.hs
+++ b/src/Graphics/GL/Functions/F13.hs
@@ -15,6 +15,20 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F13 (
+  glGetTextureParameterfv,
+  glGetTextureParameterfvEXT,
+  glGetTextureParameteriv,
+  glGetTextureParameterivEXT,
+  glGetTextureSamplerHandleARB,
+  glGetTextureSamplerHandleIMG,
+  glGetTextureSamplerHandleNV,
+  glGetTextureSubImage,
+  glGetTrackMatrixivNV,
+  glGetTransformFeedbackVarying,
+  glGetTransformFeedbackVaryingEXT,
+  glGetTransformFeedbackVaryingNV,
+  glGetTransformFeedbacki64_v,
+  glGetTransformFeedbacki_v,
   glGetTransformFeedbackiv,
   glGetTranslatedShaderSourceANGLE,
   glGetUniformBlockIndex,
@@ -35,6 +49,8 @@
   glGetUniformui64vNV,
   glGetUniformuiv,
   glGetUniformuivEXT,
+  glGetUnsignedBytei_vEXT,
+  glGetUnsignedBytevEXT,
   glGetVariantArrayObjectfvATI,
   glGetVariantArrayObjectivATI,
   glGetVariantBooleanvEXT,
@@ -80,6 +96,7 @@
   glGetVideoivNV,
   glGetVideoui64vNV,
   glGetVideouivNV,
+  glGetVkProcAddrNV,
   glGetnColorTable,
   glGetnColorTableARB,
   glGetnCompressedTexImage,
@@ -97,24 +114,7 @@
   glGetnMinmax,
   glGetnMinmaxARB,
   glGetnPixelMapfv,
-  glGetnPixelMapfvARB,
-  glGetnPixelMapuiv,
-  glGetnPixelMapuivARB,
-  glGetnPixelMapusv,
-  glGetnPixelMapusvARB,
-  glGetnPolygonStipple,
-  glGetnPolygonStippleARB,
-  glGetnSeparableFilter,
-  glGetnSeparableFilterARB,
-  glGetnTexImage,
-  glGetnTexImageARB,
-  glGetnUniformdv,
-  glGetnUniformdvARB,
-  glGetnUniformfv,
-  glGetnUniformfvARB,
-  glGetnUniformfvEXT,
-  glGetnUniformfvKHR,
-  glGetnUniformi64vARB
+  glGetnPixelMapfvARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,229 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetTextureParameterfv -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>.
+glGetTextureParameterfv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @params@.
+  -> m ()
+glGetTextureParameterfv v1 v2 v3 = liftIO $ dyn357 ptr_glGetTextureParameterfv v1 v2 v3
+
+{-# NOINLINE ptr_glGetTextureParameterfv #-}
+ptr_glGetTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glGetTextureParameterfv = unsafePerformIO $ getCommand "glGetTextureParameterfv"
+
+-- glGetTextureParameterfvEXT --------------------------------------------------
+
+glGetTextureParameterfvEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetTextureParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn430 ptr_glGetTextureParameterfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetTextureParameterfvEXT #-}
+ptr_glGetTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glGetTextureParameterfvEXT = unsafePerformIO $ getCommand "glGetTextureParameterfvEXT"
+
+-- glGetTextureParameteriv -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>.
+glGetTextureParameteriv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glGetTextureParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glGetTextureParameteriv v1 v2 v3
+
+{-# NOINLINE ptr_glGetTextureParameteriv #-}
+ptr_glGetTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetTextureParameteriv = unsafePerformIO $ getCommand "glGetTextureParameteriv"
+
+-- glGetTextureParameterivEXT --------------------------------------------------
+
+glGetTextureParameterivEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetTextureParameterivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glGetTextureParameterivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetTextureParameterivEXT #-}
+ptr_glGetTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetTextureParameterivEXT = unsafePerformIO $ getCommand "glGetTextureParameterivEXT"
+
+-- glGetTextureSamplerHandleARB ------------------------------------------------
+
+glGetTextureSamplerHandleARB
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLuint -- ^ @sampler@.
+  -> m GLuint64
+glGetTextureSamplerHandleARB v1 v2 = liftIO $ dyn431 ptr_glGetTextureSamplerHandleARB v1 v2
+
+{-# NOINLINE ptr_glGetTextureSamplerHandleARB #-}
+ptr_glGetTextureSamplerHandleARB :: FunPtr (GLuint -> GLuint -> IO GLuint64)
+ptr_glGetTextureSamplerHandleARB = unsafePerformIO $ getCommand "glGetTextureSamplerHandleARB"
+
+-- glGetTextureSamplerHandleIMG ------------------------------------------------
+
+-- | This command is an alias for 'glGetTextureSamplerHandleARB'.
+glGetTextureSamplerHandleIMG
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLuint -- ^ @sampler@.
+  -> m GLuint64
+glGetTextureSamplerHandleIMG v1 v2 = liftIO $ dyn431 ptr_glGetTextureSamplerHandleIMG v1 v2
+
+{-# NOINLINE ptr_glGetTextureSamplerHandleIMG #-}
+ptr_glGetTextureSamplerHandleIMG :: FunPtr (GLuint -> GLuint -> IO GLuint64)
+ptr_glGetTextureSamplerHandleIMG = unsafePerformIO $ getCommand "glGetTextureSamplerHandleIMG"
+
+-- glGetTextureSamplerHandleNV -------------------------------------------------
+
+glGetTextureSamplerHandleNV
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLuint -- ^ @sampler@.
+  -> m GLuint64
+glGetTextureSamplerHandleNV v1 v2 = liftIO $ dyn431 ptr_glGetTextureSamplerHandleNV v1 v2
+
+{-# NOINLINE ptr_glGetTextureSamplerHandleNV #-}
+ptr_glGetTextureSamplerHandleNV :: FunPtr (GLuint -> GLuint -> IO GLuint64)
+ptr_glGetTextureSamplerHandleNV = unsafePerformIO $ getCommand "glGetTextureSamplerHandleNV"
+
+-- glGetTextureSubImage --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTextureSubImage.xhtml OpenGL 4.x>.
+glGetTextureSubImage
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @pixels@.
+  -> m ()
+glGetTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn432 ptr_glGetTextureSubImage v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+
+{-# NOINLINE ptr_glGetTextureSubImage #-}
+ptr_glGetTextureSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glGetTextureSubImage = unsafePerformIO $ getCommand "glGetTextureSubImage"
+
+-- glGetTrackMatrixivNV --------------------------------------------------------
+
+glGetTrackMatrixivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @address@.
+  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
+  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glGetTrackMatrixivNV v1 v2 v3 v4 = liftIO $ dyn359 ptr_glGetTrackMatrixivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetTrackMatrixivNV #-}
+ptr_glGetTrackMatrixivNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetTrackMatrixivNV = unsafePerformIO $ getCommand "glGetTrackMatrixivNV"
+
+-- glGetTransformFeedbackVarying -----------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTransformFeedbackVarying.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedbackVarying.xhtml OpenGL 4.x>.
+glGetTransformFeedbackVarying
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLsizei -- ^ @size@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
+  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
+  -> m ()
+glGetTransformFeedbackVarying v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn314 ptr_glGetTransformFeedbackVarying v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glGetTransformFeedbackVarying #-}
+ptr_glGetTransformFeedbackVarying :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
+ptr_glGetTransformFeedbackVarying = unsafePerformIO $ getCommand "glGetTransformFeedbackVarying"
+
+-- glGetTransformFeedbackVaryingEXT --------------------------------------------
+
+-- | This command is an alias for 'glGetTransformFeedbackVarying'.
+glGetTransformFeedbackVaryingEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLsizei -- ^ @size@ pointing to @1@ element of type @GLsizei@.
+  -> Ptr GLenum -- ^ @type@ pointing to @1@ element of type @GLenum@.
+  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
+  -> m ()
+glGetTransformFeedbackVaryingEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn314 ptr_glGetTransformFeedbackVaryingEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glGetTransformFeedbackVaryingEXT #-}
+ptr_glGetTransformFeedbackVaryingEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
+ptr_glGetTransformFeedbackVaryingEXT = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingEXT"
+
+-- glGetTransformFeedbackVaryingNV ---------------------------------------------
+
+glGetTransformFeedbackVaryingNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @location@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glGetTransformFeedbackVaryingNV v1 v2 v3 = liftIO $ dyn433 ptr_glGetTransformFeedbackVaryingNV v1 v2 v3
+
+{-# NOINLINE ptr_glGetTransformFeedbackVaryingNV #-}
+ptr_glGetTransformFeedbackVaryingNV :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
+ptr_glGetTransformFeedbackVaryingNV = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingNV"
+
+-- glGetTransformFeedbacki64_v -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>.
+glGetTransformFeedbacki64_v
+  :: MonadIO m
+  => GLuint -- ^ @xfb@.
+  -> GLenum -- ^ @pname@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint64 -- ^ @param@.
+  -> m ()
+glGetTransformFeedbacki64_v v1 v2 v3 v4 = liftIO $ dyn434 ptr_glGetTransformFeedbacki64_v v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetTransformFeedbacki64_v #-}
+ptr_glGetTransformFeedbacki64_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
+ptr_glGetTransformFeedbacki64_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki64_v"
+
+-- glGetTransformFeedbacki_v ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>.
+glGetTransformFeedbacki_v
+  :: MonadIO m
+  => GLuint -- ^ @xfb@.
+  -> GLenum -- ^ @pname@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @param@.
+  -> m ()
+glGetTransformFeedbacki_v v1 v2 v3 v4 = liftIO $ dyn373 ptr_glGetTransformFeedbacki_v v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetTransformFeedbacki_v #-}
+ptr_glGetTransformFeedbacki_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
+ptr_glGetTransformFeedbacki_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki_v"
+
 -- glGetTransformFeedbackiv ----------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>.
@@ -132,7 +355,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetTransformFeedbackiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetTransformFeedbackiv v1 v2 v3
+glGetTransformFeedbackiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetTransformFeedbackiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetTransformFeedbackiv #-}
 ptr_glGetTransformFeedbackiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -147,7 +370,7 @@
   -> Ptr GLsizei -- ^ @length@ pointing to @1@ element of type @GLsizei@.
   -> Ptr GLchar -- ^ @source@.
   -> m ()
-glGetTranslatedShaderSourceANGLE v1 v2 v3 v4 = liftIO $ dyn332 ptr_glGetTranslatedShaderSourceANGLE v1 v2 v3 v4
+glGetTranslatedShaderSourceANGLE v1 v2 v3 v4 = liftIO $ dyn338 ptr_glGetTranslatedShaderSourceANGLE v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetTranslatedShaderSourceANGLE #-}
 ptr_glGetTranslatedShaderSourceANGLE :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
@@ -161,7 +384,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @uniformBlockName@ pointing to @COMPSIZE()@ elements of type @GLchar@.
   -> m GLuint
-glGetUniformBlockIndex v1 v2 = liftIO $ dyn428 ptr_glGetUniformBlockIndex v1 v2
+glGetUniformBlockIndex v1 v2 = liftIO $ dyn435 ptr_glGetUniformBlockIndex v1 v2
 
 {-# NOINLINE ptr_glGetUniformBlockIndex #-}
 ptr_glGetUniformBlockIndex :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
@@ -174,7 +397,7 @@
   => GLuint -- ^ @program@.
   -> GLint -- ^ @location@.
   -> m GLint
-glGetUniformBufferSizeEXT v1 v2 = liftIO $ dyn429 ptr_glGetUniformBufferSizeEXT v1 v2
+glGetUniformBufferSizeEXT v1 v2 = liftIO $ dyn436 ptr_glGetUniformBufferSizeEXT v1 v2
 
 {-# NOINLINE ptr_glGetUniformBufferSizeEXT #-}
 ptr_glGetUniformBufferSizeEXT :: FunPtr (GLuint -> GLint -> IO GLint)
@@ -190,7 +413,7 @@
   -> Ptr (Ptr GLchar) -- ^ @uniformNames@ pointing to @COMPSIZE(uniformCount)@ elements of type @Ptr GLchar@.
   -> Ptr GLuint -- ^ @uniformIndices@ pointing to @COMPSIZE(uniformCount)@ elements of type @GLuint@.
   -> m ()
-glGetUniformIndices v1 v2 v3 v4 = liftIO $ dyn430 ptr_glGetUniformIndices v1 v2 v3 v4
+glGetUniformIndices v1 v2 v3 v4 = liftIO $ dyn437 ptr_glGetUniformIndices v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetUniformIndices #-}
 ptr_glGetUniformIndices :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
@@ -204,7 +427,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@.
   -> m GLint
-glGetUniformLocation v1 v2 = liftIO $ dyn311 ptr_glGetUniformLocation v1 v2
+glGetUniformLocation v1 v2 = liftIO $ dyn317 ptr_glGetUniformLocation v1 v2
 
 {-# NOINLINE ptr_glGetUniformLocation #-}
 ptr_glGetUniformLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -218,7 +441,7 @@
   => GLhandleARB -- ^ @programObj@ of type @handleARB@.
   -> Ptr GLcharARB -- ^ @name@.
   -> m GLint
-glGetUniformLocationARB v1 v2 = liftIO $ dyn312 ptr_glGetUniformLocationARB v1 v2
+glGetUniformLocationARB v1 v2 = liftIO $ dyn318 ptr_glGetUniformLocationARB v1 v2
 
 {-# NOINLINE ptr_glGetUniformLocationARB #-}
 ptr_glGetUniformLocationARB :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
@@ -231,7 +454,7 @@
   => GLuint -- ^ @program@.
   -> GLint -- ^ @location@.
   -> m GLintptr -- ^ of type @BufferOffset@.
-glGetUniformOffsetEXT v1 v2 = liftIO $ dyn431 ptr_glGetUniformOffsetEXT v1 v2
+glGetUniformOffsetEXT v1 v2 = liftIO $ dyn438 ptr_glGetUniformOffsetEXT v1 v2
 
 {-# NOINLINE ptr_glGetUniformOffsetEXT #-}
 ptr_glGetUniformOffsetEXT :: FunPtr (GLuint -> GLint -> IO GLintptr)
@@ -246,7 +469,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLuint -- ^ @params@ pointing to @1@ element of type @GLuint@.
   -> m ()
-glGetUniformSubroutineuiv v1 v2 v3 = liftIO $ dyn75 ptr_glGetUniformSubroutineuiv v1 v2 v3
+glGetUniformSubroutineuiv v1 v2 v3 = liftIO $ dyn78 ptr_glGetUniformSubroutineuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformSubroutineuiv #-}
 ptr_glGetUniformSubroutineuiv :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
@@ -261,7 +484,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLdouble@.
   -> m ()
-glGetUniformdv v1 v2 v3 = liftIO $ dyn432 ptr_glGetUniformdv v1 v2 v3
+glGetUniformdv v1 v2 v3 = liftIO $ dyn439 ptr_glGetUniformdv v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformdv #-}
 ptr_glGetUniformdv :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
@@ -276,7 +499,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLfloat@.
   -> m ()
-glGetUniformfv v1 v2 v3 = liftIO $ dyn433 ptr_glGetUniformfv v1 v2 v3
+glGetUniformfv v1 v2 v3 = liftIO $ dyn440 ptr_glGetUniformfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformfv #-}
 ptr_glGetUniformfv :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
@@ -291,7 +514,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLfloat@.
   -> m ()
-glGetUniformfvARB v1 v2 v3 = liftIO $ dyn434 ptr_glGetUniformfvARB v1 v2 v3
+glGetUniformfvARB v1 v2 v3 = liftIO $ dyn441 ptr_glGetUniformfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformfvARB #-}
 ptr_glGetUniformfvARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
@@ -305,7 +528,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLint64@.
   -> m ()
-glGetUniformi64vARB v1 v2 v3 = liftIO $ dyn435 ptr_glGetUniformi64vARB v1 v2 v3
+glGetUniformi64vARB v1 v2 v3 = liftIO $ dyn442 ptr_glGetUniformi64vARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformi64vARB #-}
 ptr_glGetUniformi64vARB :: FunPtr (GLuint -> GLint -> Ptr GLint64 -> IO ())
@@ -319,7 +542,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLint64EXT@.
   -> m ()
-glGetUniformi64vNV v1 v2 v3 = liftIO $ dyn436 ptr_glGetUniformi64vNV v1 v2 v3
+glGetUniformi64vNV v1 v2 v3 = liftIO $ dyn443 ptr_glGetUniformi64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformi64vNV #-}
 ptr_glGetUniformi64vNV :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
@@ -334,7 +557,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLint@.
   -> m ()
-glGetUniformiv v1 v2 v3 = liftIO $ dyn437 ptr_glGetUniformiv v1 v2 v3
+glGetUniformiv v1 v2 v3 = liftIO $ dyn444 ptr_glGetUniformiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformiv #-}
 ptr_glGetUniformiv :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
@@ -349,7 +572,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLint@.
   -> m ()
-glGetUniformivARB v1 v2 v3 = liftIO $ dyn438 ptr_glGetUniformivARB v1 v2 v3
+glGetUniformivARB v1 v2 v3 = liftIO $ dyn445 ptr_glGetUniformivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformivARB #-}
 ptr_glGetUniformivARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLint -> IO ())
@@ -363,7 +586,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLuint64 -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint64@.
   -> m ()
-glGetUniformui64vARB v1 v2 v3 = liftIO $ dyn439 ptr_glGetUniformui64vARB v1 v2 v3
+glGetUniformui64vARB v1 v2 v3 = liftIO $ dyn446 ptr_glGetUniformui64vARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformui64vARB #-}
 ptr_glGetUniformui64vARB :: FunPtr (GLuint -> GLint -> Ptr GLuint64 -> IO ())
@@ -377,7 +600,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetUniformui64vNV v1 v2 v3 = liftIO $ dyn440 ptr_glGetUniformui64vNV v1 v2 v3
+glGetUniformui64vNV v1 v2 v3 = liftIO $ dyn447 ptr_glGetUniformui64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformui64vNV #-}
 ptr_glGetUniformui64vNV :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
@@ -392,7 +615,7 @@
   -> GLint -- ^ @location@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint@.
   -> m ()
-glGetUniformuiv v1 v2 v3 = liftIO $ dyn441 ptr_glGetUniformuiv v1 v2 v3
+glGetUniformuiv v1 v2 v3 = liftIO $ dyn448 ptr_glGetUniformuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformuiv #-}
 ptr_glGetUniformuiv :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
@@ -407,12 +630,39 @@
   -> GLint -- ^ @location@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint@.
   -> m ()
-glGetUniformuivEXT v1 v2 v3 = liftIO $ dyn441 ptr_glGetUniformuivEXT v1 v2 v3
+glGetUniformuivEXT v1 v2 v3 = liftIO $ dyn448 ptr_glGetUniformuivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetUniformuivEXT #-}
 ptr_glGetUniformuivEXT :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
 ptr_glGetUniformuivEXT = unsafePerformIO $ getCommand "glGetUniformuivEXT"
 
+-- glGetUnsignedBytei_vEXT -----------------------------------------------------
+
+glGetUnsignedBytei_vEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLubyte@.
+  -> m ()
+glGetUnsignedBytei_vEXT v1 v2 v3 = liftIO $ dyn449 ptr_glGetUnsignedBytei_vEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetUnsignedBytei_vEXT #-}
+ptr_glGetUnsignedBytei_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLubyte -> IO ())
+ptr_glGetUnsignedBytei_vEXT = unsafePerformIO $ getCommand "glGetUnsignedBytei_vEXT"
+
+-- glGetUnsignedBytevEXT -------------------------------------------------------
+
+glGetUnsignedBytevEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [GetPName](Graphics-GL-Groups.html#GetPName).
+  -> Ptr GLubyte -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLubyte@.
+  -> m ()
+glGetUnsignedBytevEXT v1 v2 = liftIO $ dyn450 ptr_glGetUnsignedBytevEXT v1 v2
+
+{-# NOINLINE ptr_glGetUnsignedBytevEXT #-}
+ptr_glGetUnsignedBytevEXT :: FunPtr (GLenum -> Ptr GLubyte -> IO ())
+ptr_glGetUnsignedBytevEXT = unsafePerformIO $ getCommand "glGetUnsignedBytevEXT"
+
 -- glGetVariantArrayObjectfvATI ------------------------------------------------
 
 glGetVariantArrayObjectfvATI
@@ -421,7 +671,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
   -> m ()
-glGetVariantArrayObjectfvATI v1 v2 v3 = liftIO $ dyn351 ptr_glGetVariantArrayObjectfvATI v1 v2 v3
+glGetVariantArrayObjectfvATI v1 v2 v3 = liftIO $ dyn357 ptr_glGetVariantArrayObjectfvATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantArrayObjectfvATI #-}
 ptr_glGetVariantArrayObjectfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -435,7 +685,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetVariantArrayObjectivATI v1 v2 v3 = liftIO $ dyn335 ptr_glGetVariantArrayObjectivATI v1 v2 v3
+glGetVariantArrayObjectivATI v1 v2 v3 = liftIO $ dyn341 ptr_glGetVariantArrayObjectivATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantArrayObjectivATI #-}
 ptr_glGetVariantArrayObjectivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -449,7 +699,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glGetVariantBooleanvEXT v1 v2 v3 = liftIO $ dyn350 ptr_glGetVariantBooleanvEXT v1 v2 v3
+glGetVariantBooleanvEXT v1 v2 v3 = liftIO $ dyn356 ptr_glGetVariantBooleanvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantBooleanvEXT #-}
 ptr_glGetVariantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
@@ -463,7 +713,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
   -> m ()
-glGetVariantFloatvEXT v1 v2 v3 = liftIO $ dyn351 ptr_glGetVariantFloatvEXT v1 v2 v3
+glGetVariantFloatvEXT v1 v2 v3 = liftIO $ dyn357 ptr_glGetVariantFloatvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantFloatvEXT #-}
 ptr_glGetVariantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -477,7 +727,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
   -> m ()
-glGetVariantIntegervEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetVariantIntegervEXT v1 v2 v3
+glGetVariantIntegervEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetVariantIntegervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantIntegervEXT #-}
 ptr_glGetVariantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -491,7 +741,7 @@
   -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
   -> Ptr (Ptr a) -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @Ptr a@.
   -> m ()
-glGetVariantPointervEXT v1 v2 v3 = liftIO $ dyn363 ptr_glGetVariantPointervEXT v1 v2 v3
+glGetVariantPointervEXT v1 v2 v3 = liftIO $ dyn369 ptr_glGetVariantPointervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVariantPointervEXT #-}
 ptr_glGetVariantPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -504,7 +754,7 @@
   => GLuint -- ^ @program@.
   -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
   -> m GLint
-glGetVaryingLocationNV v1 v2 = liftIO $ dyn311 ptr_glGetVaryingLocationNV v1 v2
+glGetVaryingLocationNV v1 v2 = liftIO $ dyn317 ptr_glGetVaryingLocationNV v1 v2
 
 {-# NOINLINE ptr_glGetVaryingLocationNV #-}
 ptr_glGetVaryingLocationNV :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
@@ -520,7 +770,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint64 -- ^ @param@.
   -> m ()
-glGetVertexArrayIndexed64iv v1 v2 v3 v4 = liftIO $ dyn442 ptr_glGetVertexArrayIndexed64iv v1 v2 v3 v4
+glGetVertexArrayIndexed64iv v1 v2 v3 v4 = liftIO $ dyn451 ptr_glGetVertexArrayIndexed64iv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVertexArrayIndexed64iv #-}
 ptr_glGetVertexArrayIndexed64iv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
@@ -536,7 +786,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetVertexArrayIndexediv v1 v2 v3 v4 = liftIO $ dyn301 ptr_glGetVertexArrayIndexediv v1 v2 v3 v4
+glGetVertexArrayIndexediv v1 v2 v3 v4 = liftIO $ dyn307 ptr_glGetVertexArrayIndexediv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVertexArrayIndexediv #-}
 ptr_glGetVertexArrayIndexediv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -551,7 +801,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetVertexArrayIntegeri_vEXT v1 v2 v3 v4 = liftIO $ dyn301 ptr_glGetVertexArrayIntegeri_vEXT v1 v2 v3 v4
+glGetVertexArrayIntegeri_vEXT v1 v2 v3 v4 = liftIO $ dyn307 ptr_glGetVertexArrayIntegeri_vEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVertexArrayIntegeri_vEXT #-}
 ptr_glGetVertexArrayIntegeri_vEXT :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -565,7 +815,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetVertexArrayIntegervEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexArrayIntegervEXT v1 v2 v3
+glGetVertexArrayIntegervEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexArrayIntegervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexArrayIntegervEXT #-}
 ptr_glGetVertexArrayIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -580,7 +830,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr (Ptr a) -- ^ @param@.
   -> m ()
-glGetVertexArrayPointeri_vEXT v1 v2 v3 v4 = liftIO $ dyn443 ptr_glGetVertexArrayPointeri_vEXT v1 v2 v3 v4
+glGetVertexArrayPointeri_vEXT v1 v2 v3 v4 = liftIO $ dyn452 ptr_glGetVertexArrayPointeri_vEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVertexArrayPointeri_vEXT #-}
 ptr_glGetVertexArrayPointeri_vEXT :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -594,7 +844,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr (Ptr a) -- ^ @param@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetVertexArrayPointervEXT v1 v2 v3 = liftIO $ dyn363 ptr_glGetVertexArrayPointervEXT v1 v2 v3
+glGetVertexArrayPointervEXT v1 v2 v3 = liftIO $ dyn369 ptr_glGetVertexArrayPointervEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexArrayPointervEXT #-}
 ptr_glGetVertexArrayPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -609,7 +859,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @param@.
   -> m ()
-glGetVertexArrayiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexArrayiv v1 v2 v3
+glGetVertexArrayiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexArrayiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexArrayiv #-}
 ptr_glGetVertexArrayiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -623,7 +873,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetVertexAttribArrayObjectfvATI v1 v2 v3 = liftIO $ dyn351 ptr_glGetVertexAttribArrayObjectfvATI v1 v2 v3
+glGetVertexAttribArrayObjectfvATI v1 v2 v3 = liftIO $ dyn357 ptr_glGetVertexAttribArrayObjectfvATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribArrayObjectfvATI #-}
 ptr_glGetVertexAttribArrayObjectfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -637,7 +887,7 @@
   -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetVertexAttribArrayObjectivATI v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribArrayObjectivATI v1 v2 v3
+glGetVertexAttribArrayObjectivATI v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribArrayObjectivATI v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribArrayObjectivATI #-}
 ptr_glGetVertexAttribArrayObjectivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -652,7 +902,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetVertexAttribIiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribIiv v1 v2 v3
+glGetVertexAttribIiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribIiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribIiv #-}
 ptr_glGetVertexAttribIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -667,7 +917,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetVertexAttribIivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribIivEXT v1 v2 v3
+glGetVertexAttribIivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribIivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribIivEXT #-}
 ptr_glGetVertexAttribIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -682,7 +932,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
   -> Ptr GLuint -- ^ @params@ pointing to @1@ element of type @GLuint@.
   -> m ()
-glGetVertexAttribIuiv v1 v2 v3 = liftIO $ dyn377 ptr_glGetVertexAttribIuiv v1 v2 v3
+glGetVertexAttribIuiv v1 v2 v3 = liftIO $ dyn384 ptr_glGetVertexAttribIuiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribIuiv #-}
 ptr_glGetVertexAttribIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -697,7 +947,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
   -> Ptr GLuint -- ^ @params@ pointing to @1@ element of type @GLuint@.
   -> m ()
-glGetVertexAttribIuivEXT v1 v2 v3 = liftIO $ dyn377 ptr_glGetVertexAttribIuivEXT v1 v2 v3
+glGetVertexAttribIuivEXT v1 v2 v3 = liftIO $ dyn384 ptr_glGetVertexAttribIuivEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribIuivEXT #-}
 ptr_glGetVertexAttribIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
@@ -712,7 +962,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetVertexAttribLdv v1 v2 v3 = liftIO $ dyn444 ptr_glGetVertexAttribLdv v1 v2 v3
+glGetVertexAttribLdv v1 v2 v3 = liftIO $ dyn453 ptr_glGetVertexAttribLdv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribLdv #-}
 ptr_glGetVertexAttribLdv :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -727,7 +977,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetVertexAttribLdvEXT v1 v2 v3 = liftIO $ dyn444 ptr_glGetVertexAttribLdvEXT v1 v2 v3
+glGetVertexAttribLdvEXT v1 v2 v3 = liftIO $ dyn453 ptr_glGetVertexAttribLdvEXT v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribLdvEXT #-}
 ptr_glGetVertexAttribLdvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -741,7 +991,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64EXT@.
   -> m ()
-glGetVertexAttribLi64vNV v1 v2 v3 = liftIO $ dyn445 ptr_glGetVertexAttribLi64vNV v1 v2 v3
+glGetVertexAttribLi64vNV v1 v2 v3 = liftIO $ dyn454 ptr_glGetVertexAttribLi64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribLi64vNV #-}
 ptr_glGetVertexAttribLi64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
@@ -755,7 +1005,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64EXT -- ^ @params@.
   -> m ()
-glGetVertexAttribLui64vARB v1 v2 v3 = liftIO $ dyn362 ptr_glGetVertexAttribLui64vARB v1 v2 v3
+glGetVertexAttribLui64vARB v1 v2 v3 = liftIO $ dyn368 ptr_glGetVertexAttribLui64vARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribLui64vARB #-}
 ptr_glGetVertexAttribLui64vARB :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
@@ -769,7 +1019,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetVertexAttribLui64vNV v1 v2 v3 = liftIO $ dyn362 ptr_glGetVertexAttribLui64vNV v1 v2 v3
+glGetVertexAttribLui64vNV v1 v2 v3 = liftIO $ dyn368 ptr_glGetVertexAttribLui64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribLui64vNV #-}
 ptr_glGetVertexAttribLui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
@@ -784,7 +1034,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPointerPropertyARB@.
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetVertexAttribPointerv v1 v2 v3 = liftIO $ dyn363 ptr_glGetVertexAttribPointerv v1 v2 v3
+glGetVertexAttribPointerv v1 v2 v3 = liftIO $ dyn369 ptr_glGetVertexAttribPointerv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribPointerv #-}
 ptr_glGetVertexAttribPointerv :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -799,7 +1049,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPointerPropertyARB@.
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetVertexAttribPointervARB v1 v2 v3 = liftIO $ dyn363 ptr_glGetVertexAttribPointervARB v1 v2 v3
+glGetVertexAttribPointervARB v1 v2 v3 = liftIO $ dyn369 ptr_glGetVertexAttribPointervARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribPointervARB #-}
 ptr_glGetVertexAttribPointervARB :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -814,7 +1064,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ element of type @Ptr a@.
   -> m ()
-glGetVertexAttribPointervNV v1 v2 v3 = liftIO $ dyn363 ptr_glGetVertexAttribPointervNV v1 v2 v3
+glGetVertexAttribPointervNV v1 v2 v3 = liftIO $ dyn369 ptr_glGetVertexAttribPointervNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribPointervNV #-}
 ptr_glGetVertexAttribPointervNV :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
@@ -829,7 +1079,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetVertexAttribdv v1 v2 v3 = liftIO $ dyn444 ptr_glGetVertexAttribdv v1 v2 v3
+glGetVertexAttribdv v1 v2 v3 = liftIO $ dyn453 ptr_glGetVertexAttribdv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribdv #-}
 ptr_glGetVertexAttribdv :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -844,7 +1094,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
   -> m ()
-glGetVertexAttribdvARB v1 v2 v3 = liftIO $ dyn444 ptr_glGetVertexAttribdvARB v1 v2 v3
+glGetVertexAttribdvARB v1 v2 v3 = liftIO $ dyn453 ptr_glGetVertexAttribdvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribdvARB #-}
 ptr_glGetVertexAttribdvARB :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -859,7 +1109,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLdouble -- ^ @params@ pointing to @1@ element of type @GLdouble@.
   -> m ()
-glGetVertexAttribdvNV v1 v2 v3 = liftIO $ dyn444 ptr_glGetVertexAttribdvNV v1 v2 v3
+glGetVertexAttribdvNV v1 v2 v3 = liftIO $ dyn453 ptr_glGetVertexAttribdvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribdvNV #-}
 ptr_glGetVertexAttribdvNV :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -874,7 +1124,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetVertexAttribfv v1 v2 v3 = liftIO $ dyn351 ptr_glGetVertexAttribfv v1 v2 v3
+glGetVertexAttribfv v1 v2 v3 = liftIO $ dyn357 ptr_glGetVertexAttribfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribfv #-}
 ptr_glGetVertexAttribfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -889,7 +1139,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
   -> m ()
-glGetVertexAttribfvARB v1 v2 v3 = liftIO $ dyn351 ptr_glGetVertexAttribfvARB v1 v2 v3
+glGetVertexAttribfvARB v1 v2 v3 = liftIO $ dyn357 ptr_glGetVertexAttribfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribfvARB #-}
 ptr_glGetVertexAttribfvARB :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -904,7 +1154,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
   -> m ()
-glGetVertexAttribfvNV v1 v2 v3 = liftIO $ dyn351 ptr_glGetVertexAttribfvNV v1 v2 v3
+glGetVertexAttribfvNV v1 v2 v3 = liftIO $ dyn357 ptr_glGetVertexAttribfvNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribfvNV #-}
 ptr_glGetVertexAttribfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -919,7 +1169,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetVertexAttribiv v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribiv v1 v2 v3
+glGetVertexAttribiv v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribiv v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribiv #-}
 ptr_glGetVertexAttribiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -934,7 +1184,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
   -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
   -> m ()
-glGetVertexAttribivARB v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribivARB v1 v2 v3
+glGetVertexAttribivARB v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribivARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribivARB #-}
 ptr_glGetVertexAttribivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -949,7 +1199,7 @@
   -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
   -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
   -> m ()
-glGetVertexAttribivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetVertexAttribivNV v1 v2 v3
+glGetVertexAttribivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetVertexAttribivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVertexAttribivNV #-}
 ptr_glGetVertexAttribivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -964,7 +1214,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
   -> m ()
-glGetVideoCaptureStreamdvNV v1 v2 v3 v4 = liftIO $ dyn446 ptr_glGetVideoCaptureStreamdvNV v1 v2 v3 v4
+glGetVideoCaptureStreamdvNV v1 v2 v3 v4 = liftIO $ dyn455 ptr_glGetVideoCaptureStreamdvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVideoCaptureStreamdvNV #-}
 ptr_glGetVideoCaptureStreamdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
@@ -979,7 +1229,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glGetVideoCaptureStreamfvNV v1 v2 v3 v4 = liftIO $ dyn447 ptr_glGetVideoCaptureStreamfvNV v1 v2 v3 v4
+glGetVideoCaptureStreamfvNV v1 v2 v3 v4 = liftIO $ dyn456 ptr_glGetVideoCaptureStreamfvNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVideoCaptureStreamfvNV #-}
 ptr_glGetVideoCaptureStreamfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
@@ -994,7 +1244,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetVideoCaptureStreamivNV v1 v2 v3 v4 = liftIO $ dyn301 ptr_glGetVideoCaptureStreamivNV v1 v2 v3 v4
+glGetVideoCaptureStreamivNV v1 v2 v3 v4 = liftIO $ dyn307 ptr_glGetVideoCaptureStreamivNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetVideoCaptureStreamivNV #-}
 ptr_glGetVideoCaptureStreamivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1008,7 +1258,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetVideoCaptureivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetVideoCaptureivNV v1 v2 v3
+glGetVideoCaptureivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetVideoCaptureivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVideoCaptureivNV #-}
 ptr_glGetVideoCaptureivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1022,7 +1272,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64EXT@.
   -> m ()
-glGetVideoi64vNV v1 v2 v3 = liftIO $ dyn445 ptr_glGetVideoi64vNV v1 v2 v3
+glGetVideoi64vNV v1 v2 v3 = liftIO $ dyn454 ptr_glGetVideoi64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVideoi64vNV #-}
 ptr_glGetVideoi64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
@@ -1036,7 +1286,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glGetVideoivNV v1 v2 v3 = liftIO $ dyn335 ptr_glGetVideoivNV v1 v2 v3
+glGetVideoivNV v1 v2 v3 = liftIO $ dyn341 ptr_glGetVideoivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVideoivNV #-}
 ptr_glGetVideoivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
@@ -1050,7 +1300,7 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
   -> m ()
-glGetVideoui64vNV v1 v2 v3 = liftIO $ dyn362 ptr_glGetVideoui64vNV v1 v2 v3
+glGetVideoui64vNV v1 v2 v3 = liftIO $ dyn368 ptr_glGetVideoui64vNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVideoui64vNV #-}
 ptr_glGetVideoui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
@@ -1064,12 +1314,24 @@
   -> GLenum -- ^ @pname@.
   -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
   -> m ()
-glGetVideouivNV v1 v2 v3 = liftIO $ dyn377 ptr_glGetVideouivNV v1 v2 v3
+glGetVideouivNV v1 v2 v3 = liftIO $ dyn384 ptr_glGetVideouivNV v1 v2 v3
 
 {-# NOINLINE ptr_glGetVideouivNV #-}
 ptr_glGetVideouivNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
 ptr_glGetVideouivNV = unsafePerformIO $ getCommand "glGetVideouivNV"
 
+-- glGetVkProcAddrNV -----------------------------------------------------------
+
+glGetVkProcAddrNV
+  :: MonadIO m
+  => Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLVULKANPROCNV
+glGetVkProcAddrNV v1 = liftIO $ dyn457 ptr_glGetVkProcAddrNV v1
+
+{-# NOINLINE ptr_glGetVkProcAddrNV #-}
+ptr_glGetVkProcAddrNV :: FunPtr (Ptr GLchar -> IO GLVULKANPROCNV)
+ptr_glGetVkProcAddrNV = unsafePerformIO $ getCommand "glGetVkProcAddrNV"
+
 -- glGetnColorTable ------------------------------------------------------------
 
 glGetnColorTable
@@ -1080,7 +1342,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @table@.
   -> m ()
-glGetnColorTable v1 v2 v3 v4 v5 = liftIO $ dyn448 ptr_glGetnColorTable v1 v2 v3 v4 v5
+glGetnColorTable v1 v2 v3 v4 v5 = liftIO $ dyn458 ptr_glGetnColorTable v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetnColorTable #-}
 ptr_glGetnColorTable :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1096,7 +1358,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @table@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetnColorTableARB v1 v2 v3 v4 v5 = liftIO $ dyn448 ptr_glGetnColorTableARB v1 v2 v3 v4 v5
+glGetnColorTableARB v1 v2 v3 v4 v5 = liftIO $ dyn458 ptr_glGetnColorTableARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetnColorTableARB #-}
 ptr_glGetnColorTableARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1112,7 +1374,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @pixels@.
   -> m ()
-glGetnCompressedTexImage v1 v2 v3 v4 = liftIO $ dyn449 ptr_glGetnCompressedTexImage v1 v2 v3 v4
+glGetnCompressedTexImage v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnCompressedTexImage v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnCompressedTexImage #-}
 ptr_glGetnCompressedTexImage :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -1127,7 +1389,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @img@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetnCompressedTexImageARB v1 v2 v3 v4 = liftIO $ dyn449 ptr_glGetnCompressedTexImageARB v1 v2 v3 v4
+glGetnCompressedTexImageARB v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnCompressedTexImageARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnCompressedTexImageARB #-}
 ptr_glGetnCompressedTexImageARB :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
@@ -1143,7 +1405,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @image@.
   -> m ()
-glGetnConvolutionFilter v1 v2 v3 v4 v5 = liftIO $ dyn448 ptr_glGetnConvolutionFilter v1 v2 v3 v4 v5
+glGetnConvolutionFilter v1 v2 v3 v4 v5 = liftIO $ dyn458 ptr_glGetnConvolutionFilter v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetnConvolutionFilter #-}
 ptr_glGetnConvolutionFilter :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1159,7 +1421,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @image@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetnConvolutionFilterARB v1 v2 v3 v4 v5 = liftIO $ dyn448 ptr_glGetnConvolutionFilterARB v1 v2 v3 v4 v5
+glGetnConvolutionFilterARB v1 v2 v3 v4 v5 = liftIO $ dyn458 ptr_glGetnConvolutionFilterARB v1 v2 v3 v4 v5
 
 {-# NOINLINE ptr_glGetnConvolutionFilterARB #-}
 ptr_glGetnConvolutionFilterARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1176,7 +1438,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @values@.
   -> m ()
-glGetnHistogram v1 v2 v3 v4 v5 v6 = liftIO $ dyn450 ptr_glGetnHistogram v1 v2 v3 v4 v5 v6
+glGetnHistogram v1 v2 v3 v4 v5 v6 = liftIO $ dyn460 ptr_glGetnHistogram v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetnHistogram #-}
 ptr_glGetnHistogram :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1193,7 +1455,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @values@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetnHistogramARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn450 ptr_glGetnHistogramARB v1 v2 v3 v4 v5 v6
+glGetnHistogramARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn460 ptr_glGetnHistogramARB v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetnHistogramARB #-}
 ptr_glGetnHistogramARB :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1208,7 +1470,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLdouble -- ^ @v@.
   -> m ()
-glGetnMapdv v1 v2 v3 v4 = liftIO $ dyn451 ptr_glGetnMapdv v1 v2 v3 v4
+glGetnMapdv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnMapdv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapdv #-}
 ptr_glGetnMapdv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
@@ -1223,7 +1485,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLdouble -- ^ @v@ pointing to @bufSize@ elements of type @GLdouble@.
   -> m ()
-glGetnMapdvARB v1 v2 v3 v4 = liftIO $ dyn451 ptr_glGetnMapdvARB v1 v2 v3 v4
+glGetnMapdvARB v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnMapdvARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapdvARB #-}
 ptr_glGetnMapdvARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
@@ -1238,7 +1500,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLfloat -- ^ @v@.
   -> m ()
-glGetnMapfv v1 v2 v3 v4 = liftIO $ dyn452 ptr_glGetnMapfv v1 v2 v3 v4
+glGetnMapfv v1 v2 v3 v4 = liftIO $ dyn462 ptr_glGetnMapfv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapfv #-}
 ptr_glGetnMapfv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
@@ -1253,7 +1515,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLfloat -- ^ @v@ pointing to @bufSize@ elements of type @GLfloat@.
   -> m ()
-glGetnMapfvARB v1 v2 v3 v4 = liftIO $ dyn452 ptr_glGetnMapfvARB v1 v2 v3 v4
+glGetnMapfvARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glGetnMapfvARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapfvARB #-}
 ptr_glGetnMapfvARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
@@ -1268,7 +1530,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @v@.
   -> m ()
-glGetnMapiv v1 v2 v3 v4 = liftIO $ dyn453 ptr_glGetnMapiv v1 v2 v3 v4
+glGetnMapiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glGetnMapiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapiv #-}
 ptr_glGetnMapiv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
@@ -1283,7 +1545,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @v@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetnMapivARB v1 v2 v3 v4 = liftIO $ dyn453 ptr_glGetnMapivARB v1 v2 v3 v4
+glGetnMapivARB v1 v2 v3 v4 = liftIO $ dyn463 ptr_glGetnMapivARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnMapivARB #-}
 ptr_glGetnMapivARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
@@ -1300,7 +1562,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @values@.
   -> m ()
-glGetnMinmax v1 v2 v3 v4 v5 v6 = liftIO $ dyn450 ptr_glGetnMinmax v1 v2 v3 v4 v5 v6
+glGetnMinmax v1 v2 v3 v4 v5 v6 = liftIO $ dyn460 ptr_glGetnMinmax v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetnMinmax #-}
 ptr_glGetnMinmax :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1317,7 +1579,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr a -- ^ @values@ pointing to @bufSize@ elements of type @a@.
   -> m ()
-glGetnMinmaxARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn450 ptr_glGetnMinmaxARB v1 v2 v3 v4 v5 v6
+glGetnMinmaxARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn460 ptr_glGetnMinmaxARB v1 v2 v3 v4 v5 v6
 
 {-# NOINLINE ptr_glGetnMinmaxARB #-}
 ptr_glGetnMinmaxARB :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
@@ -1331,7 +1593,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLfloat -- ^ @values@.
   -> m ()
-glGetnPixelMapfv v1 v2 v3 = liftIO $ dyn225 ptr_glGetnPixelMapfv v1 v2 v3
+glGetnPixelMapfv v1 v2 v3 = liftIO $ dyn228 ptr_glGetnPixelMapfv v1 v2 v3
 
 {-# NOINLINE ptr_glGetnPixelMapfv #-}
 ptr_glGetnPixelMapfv :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
@@ -1345,272 +1607,9 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLfloat -- ^ @values@ pointing to @bufSize@ elements of type @GLfloat@.
   -> m ()
-glGetnPixelMapfvARB v1 v2 v3 = liftIO $ dyn225 ptr_glGetnPixelMapfvARB v1 v2 v3
+glGetnPixelMapfvARB v1 v2 v3 = liftIO $ dyn228 ptr_glGetnPixelMapfvARB v1 v2 v3
 
 {-# NOINLINE ptr_glGetnPixelMapfvARB #-}
 ptr_glGetnPixelMapfvARB :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glGetnPixelMapfvARB = unsafePerformIO $ getCommand "glGetnPixelMapfvARB"
-
--- glGetnPixelMapuiv -----------------------------------------------------------
-
-glGetnPixelMapuiv
-  :: MonadIO m
-  => GLenum -- ^ @map@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLuint -- ^ @values@.
-  -> m ()
-glGetnPixelMapuiv v1 v2 v3 = liftIO $ dyn197 ptr_glGetnPixelMapuiv v1 v2 v3
-
-{-# NOINLINE ptr_glGetnPixelMapuiv #-}
-ptr_glGetnPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glGetnPixelMapuiv = unsafePerformIO $ getCommand "glGetnPixelMapuiv"
-
--- glGetnPixelMapuivARB --------------------------------------------------------
-
-glGetnPixelMapuivARB
-  :: MonadIO m
-  => GLenum -- ^ @map@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLuint -- ^ @values@ pointing to @bufSize@ elements of type @GLuint@.
-  -> m ()
-glGetnPixelMapuivARB v1 v2 v3 = liftIO $ dyn197 ptr_glGetnPixelMapuivARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetnPixelMapuivARB #-}
-ptr_glGetnPixelMapuivARB :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glGetnPixelMapuivARB = unsafePerformIO $ getCommand "glGetnPixelMapuivARB"
-
--- glGetnPixelMapusv -----------------------------------------------------------
-
-glGetnPixelMapusv
-  :: MonadIO m
-  => GLenum -- ^ @map@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLushort -- ^ @values@.
-  -> m ()
-glGetnPixelMapusv v1 v2 v3 = liftIO $ dyn454 ptr_glGetnPixelMapusv v1 v2 v3
-
-{-# NOINLINE ptr_glGetnPixelMapusv #-}
-ptr_glGetnPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
-ptr_glGetnPixelMapusv = unsafePerformIO $ getCommand "glGetnPixelMapusv"
-
--- glGetnPixelMapusvARB --------------------------------------------------------
-
-glGetnPixelMapusvARB
-  :: MonadIO m
-  => GLenum -- ^ @map@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLushort -- ^ @values@ pointing to @bufSize@ elements of type @GLushort@.
-  -> m ()
-glGetnPixelMapusvARB v1 v2 v3 = liftIO $ dyn454 ptr_glGetnPixelMapusvARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetnPixelMapusvARB #-}
-ptr_glGetnPixelMapusvARB :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
-ptr_glGetnPixelMapusvARB = unsafePerformIO $ getCommand "glGetnPixelMapusvARB"
-
--- glGetnPolygonStipple --------------------------------------------------------
-
-glGetnPolygonStipple
-  :: MonadIO m
-  => GLsizei -- ^ @bufSize@.
-  -> Ptr GLubyte -- ^ @pattern@.
-  -> m ()
-glGetnPolygonStipple v1 v2 = liftIO $ dyn455 ptr_glGetnPolygonStipple v1 v2
-
-{-# NOINLINE ptr_glGetnPolygonStipple #-}
-ptr_glGetnPolygonStipple :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
-ptr_glGetnPolygonStipple = unsafePerformIO $ getCommand "glGetnPolygonStipple"
-
--- glGetnPolygonStippleARB -----------------------------------------------------
-
-glGetnPolygonStippleARB
-  :: MonadIO m
-  => GLsizei -- ^ @bufSize@.
-  -> Ptr GLubyte -- ^ @pattern@ pointing to @bufSize@ elements of type @GLubyte@.
-  -> m ()
-glGetnPolygonStippleARB v1 v2 = liftIO $ dyn455 ptr_glGetnPolygonStippleARB v1 v2
-
-{-# NOINLINE ptr_glGetnPolygonStippleARB #-}
-ptr_glGetnPolygonStippleARB :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
-ptr_glGetnPolygonStippleARB = unsafePerformIO $ getCommand "glGetnPolygonStippleARB"
-
--- glGetnSeparableFilter -------------------------------------------------------
-
-glGetnSeparableFilter
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @rowBufSize@.
-  -> Ptr a -- ^ @row@.
-  -> GLsizei -- ^ @columnBufSize@.
-  -> Ptr b -- ^ @column@.
-  -> Ptr c -- ^ @span@.
-  -> m ()
-glGetnSeparableFilter v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn456 ptr_glGetnSeparableFilter v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glGetnSeparableFilter #-}
-ptr_glGetnSeparableFilter :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
-ptr_glGetnSeparableFilter = unsafePerformIO $ getCommand "glGetnSeparableFilter"
-
--- glGetnSeparableFilterARB ----------------------------------------------------
-
-glGetnSeparableFilterARB
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @rowBufSize@.
-  -> Ptr a -- ^ @row@ pointing to @rowBufSize@ elements of type @a@.
-  -> GLsizei -- ^ @columnBufSize@.
-  -> Ptr b -- ^ @column@ pointing to @columnBufSize@ elements of type @b@.
-  -> Ptr c -- ^ @span@ pointing to @0@ elements of type @c@.
-  -> m ()
-glGetnSeparableFilterARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn456 ptr_glGetnSeparableFilterARB v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glGetnSeparableFilterARB #-}
-ptr_glGetnSeparableFilterARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
-ptr_glGetnSeparableFilterARB = unsafePerformIO $ getCommand "glGetnSeparableFilterARB"
-
--- glGetnTexImage --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexImage.xhtml OpenGL 4.x>.
-glGetnTexImage
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @pixels@.
-  -> m ()
-glGetnTexImage v1 v2 v3 v4 v5 v6 = liftIO $ dyn457 ptr_glGetnTexImage v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glGetnTexImage #-}
-ptr_glGetnTexImage :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glGetnTexImage = unsafePerformIO $ getCommand "glGetnTexImage"
-
--- glGetnTexImageARB -----------------------------------------------------------
-
-glGetnTexImageARB
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @img@ pointing to @bufSize@ elements of type @a@.
-  -> m ()
-glGetnTexImageARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn457 ptr_glGetnTexImageARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glGetnTexImageARB #-}
-ptr_glGetnTexImageARB :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glGetnTexImageARB = unsafePerformIO $ getCommand "glGetnTexImageARB"
-
--- glGetnUniformdv -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
-glGetnUniformdv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLdouble -- ^ @params@.
-  -> m ()
-glGetnUniformdv v1 v2 v3 v4 = liftIO $ dyn458 ptr_glGetnUniformdv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformdv #-}
-ptr_glGetnUniformdv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glGetnUniformdv = unsafePerformIO $ getCommand "glGetnUniformdv"
-
--- glGetnUniformdvARB ----------------------------------------------------------
-
-glGetnUniformdvARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @bufSize@ elements of type @GLdouble@.
-  -> m ()
-glGetnUniformdvARB v1 v2 v3 v4 = liftIO $ dyn458 ptr_glGetnUniformdvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformdvARB #-}
-ptr_glGetnUniformdvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glGetnUniformdvARB = unsafePerformIO $ getCommand "glGetnUniformdvARB"
-
--- glGetnUniformfv -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
-glGetnUniformfv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLfloat -- ^ @params@.
-  -> m ()
-glGetnUniformfv v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnUniformfv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformfv #-}
-ptr_glGetnUniformfv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glGetnUniformfv = unsafePerformIO $ getCommand "glGetnUniformfv"
-
--- glGetnUniformfvARB ----------------------------------------------------------
-
-glGetnUniformfvARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
-  -> m ()
-glGetnUniformfvARB v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnUniformfvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformfvARB #-}
-ptr_glGetnUniformfvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glGetnUniformfvARB = unsafePerformIO $ getCommand "glGetnUniformfvARB"
-
--- glGetnUniformfvEXT ----------------------------------------------------------
-
-glGetnUniformfvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
-  -> m ()
-glGetnUniformfvEXT v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnUniformfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformfvEXT #-}
-ptr_glGetnUniformfvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glGetnUniformfvEXT = unsafePerformIO $ getCommand "glGetnUniformfvEXT"
-
--- glGetnUniformfvKHR ----------------------------------------------------------
-
--- | This command is an alias for 'glGetnUniformfv'.
-glGetnUniformfvKHR
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLfloat -- ^ @params@.
-  -> m ()
-glGetnUniformfvKHR v1 v2 v3 v4 = liftIO $ dyn459 ptr_glGetnUniformfvKHR v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformfvKHR #-}
-ptr_glGetnUniformfvKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glGetnUniformfvKHR = unsafePerformIO $ getCommand "glGetnUniformfvKHR"
-
--- glGetnUniformi64vARB --------------------------------------------------------
-
-glGetnUniformi64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLint64 -- ^ @params@.
-  -> m ()
-glGetnUniformi64vARB v1 v2 v3 v4 = liftIO $ dyn460 ptr_glGetnUniformi64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetnUniformi64vARB #-}
-ptr_glGetnUniformi64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glGetnUniformi64vARB = unsafePerformIO $ getCommand "glGetnUniformi64vARB"
 
diff --git a/src/Graphics/GL/Functions/F14.hs b/src/Graphics/GL/Functions/F14.hs
--- a/src/Graphics/GL/Functions/F14.hs
+++ b/src/Graphics/GL/Functions/F14.hs
@@ -15,6 +15,23 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F14 (
+  glGetnPixelMapuiv,
+  glGetnPixelMapuivARB,
+  glGetnPixelMapusv,
+  glGetnPixelMapusvARB,
+  glGetnPolygonStipple,
+  glGetnPolygonStippleARB,
+  glGetnSeparableFilter,
+  glGetnSeparableFilterARB,
+  glGetnTexImage,
+  glGetnTexImageARB,
+  glGetnUniformdv,
+  glGetnUniformdvARB,
+  glGetnUniformfv,
+  glGetnUniformfvARB,
+  glGetnUniformfvEXT,
+  glGetnUniformfvKHR,
+  glGetnUniformi64vARB,
   glGetnUniformiv,
   glGetnUniformivARB,
   glGetnUniformivEXT,
@@ -40,6 +57,12 @@
   glImageTransformParameterfvHP,
   glImageTransformParameteriHP,
   glImageTransformParameterivHP,
+  glImportMemoryFdEXT,
+  glImportMemoryWin32HandleEXT,
+  glImportMemoryWin32NameEXT,
+  glImportSemaphoreFdEXT,
+  glImportSemaphoreWin32HandleEXT,
+  glImportSemaphoreWin32NameEXT,
   glImportSyncEXT,
   glIndexFormatNV,
   glIndexFuncEXT,
@@ -91,30 +114,7 @@
   glIsFramebufferEXT,
   glIsFramebufferOES,
   glIsImageHandleResidentARB,
-  glIsImageHandleResidentNV,
-  glIsList,
-  glIsNameAMD,
-  glIsNamedBufferResidentNV,
-  glIsNamedStringARB,
-  glIsObjectBufferATI,
-  glIsOcclusionQueryNV,
-  glIsPathNV,
-  glIsPointInFillPathNV,
-  glIsPointInStrokePathNV,
-  glIsProgram,
-  glIsProgramARB,
-  glIsProgramNV,
-  glIsProgramPipeline,
-  glIsProgramPipelineEXT,
-  glIsQuery,
-  glIsQueryARB,
-  glIsQueryEXT,
-  glIsRenderbuffer,
-  glIsRenderbufferEXT,
-  glIsRenderbufferOES,
-  glIsSampler,
-  glIsShader,
-  glIsStateNV
+  glIsImageHandleResidentNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,270 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetnPixelMapuiv -----------------------------------------------------------
+
+glGetnPixelMapuiv
+  :: MonadIO m
+  => GLenum -- ^ @map@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLuint -- ^ @values@.
+  -> m ()
+glGetnPixelMapuiv v1 v2 v3 = liftIO $ dyn200 ptr_glGetnPixelMapuiv v1 v2 v3
+
+{-# NOINLINE ptr_glGetnPixelMapuiv #-}
+ptr_glGetnPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glGetnPixelMapuiv = unsafePerformIO $ getCommand "glGetnPixelMapuiv"
+
+-- glGetnPixelMapuivARB --------------------------------------------------------
+
+glGetnPixelMapuivARB
+  :: MonadIO m
+  => GLenum -- ^ @map@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLuint -- ^ @values@ pointing to @bufSize@ elements of type @GLuint@.
+  -> m ()
+glGetnPixelMapuivARB v1 v2 v3 = liftIO $ dyn200 ptr_glGetnPixelMapuivARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetnPixelMapuivARB #-}
+ptr_glGetnPixelMapuivARB :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glGetnPixelMapuivARB = unsafePerformIO $ getCommand "glGetnPixelMapuivARB"
+
+-- glGetnPixelMapusv -----------------------------------------------------------
+
+glGetnPixelMapusv
+  :: MonadIO m
+  => GLenum -- ^ @map@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLushort -- ^ @values@.
+  -> m ()
+glGetnPixelMapusv v1 v2 v3 = liftIO $ dyn464 ptr_glGetnPixelMapusv v1 v2 v3
+
+{-# NOINLINE ptr_glGetnPixelMapusv #-}
+ptr_glGetnPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
+ptr_glGetnPixelMapusv = unsafePerformIO $ getCommand "glGetnPixelMapusv"
+
+-- glGetnPixelMapusvARB --------------------------------------------------------
+
+glGetnPixelMapusvARB
+  :: MonadIO m
+  => GLenum -- ^ @map@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLushort -- ^ @values@ pointing to @bufSize@ elements of type @GLushort@.
+  -> m ()
+glGetnPixelMapusvARB v1 v2 v3 = liftIO $ dyn464 ptr_glGetnPixelMapusvARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetnPixelMapusvARB #-}
+ptr_glGetnPixelMapusvARB :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
+ptr_glGetnPixelMapusvARB = unsafePerformIO $ getCommand "glGetnPixelMapusvARB"
+
+-- glGetnPolygonStipple --------------------------------------------------------
+
+glGetnPolygonStipple
+  :: MonadIO m
+  => GLsizei -- ^ @bufSize@.
+  -> Ptr GLubyte -- ^ @pattern@.
+  -> m ()
+glGetnPolygonStipple v1 v2 = liftIO $ dyn465 ptr_glGetnPolygonStipple v1 v2
+
+{-# NOINLINE ptr_glGetnPolygonStipple #-}
+ptr_glGetnPolygonStipple :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
+ptr_glGetnPolygonStipple = unsafePerformIO $ getCommand "glGetnPolygonStipple"
+
+-- glGetnPolygonStippleARB -----------------------------------------------------
+
+glGetnPolygonStippleARB
+  :: MonadIO m
+  => GLsizei -- ^ @bufSize@.
+  -> Ptr GLubyte -- ^ @pattern@ pointing to @bufSize@ elements of type @GLubyte@.
+  -> m ()
+glGetnPolygonStippleARB v1 v2 = liftIO $ dyn465 ptr_glGetnPolygonStippleARB v1 v2
+
+{-# NOINLINE ptr_glGetnPolygonStippleARB #-}
+ptr_glGetnPolygonStippleARB :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
+ptr_glGetnPolygonStippleARB = unsafePerformIO $ getCommand "glGetnPolygonStippleARB"
+
+-- glGetnSeparableFilter -------------------------------------------------------
+
+glGetnSeparableFilter
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @rowBufSize@.
+  -> Ptr a -- ^ @row@.
+  -> GLsizei -- ^ @columnBufSize@.
+  -> Ptr b -- ^ @column@.
+  -> Ptr c -- ^ @span@.
+  -> m ()
+glGetnSeparableFilter v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn466 ptr_glGetnSeparableFilter v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glGetnSeparableFilter #-}
+ptr_glGetnSeparableFilter :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
+ptr_glGetnSeparableFilter = unsafePerformIO $ getCommand "glGetnSeparableFilter"
+
+-- glGetnSeparableFilterARB ----------------------------------------------------
+
+glGetnSeparableFilterARB
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @rowBufSize@.
+  -> Ptr a -- ^ @row@ pointing to @rowBufSize@ elements of type @a@.
+  -> GLsizei -- ^ @columnBufSize@.
+  -> Ptr b -- ^ @column@ pointing to @columnBufSize@ elements of type @b@.
+  -> Ptr c -- ^ @span@ pointing to @0@ elements of type @c@.
+  -> m ()
+glGetnSeparableFilterARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn466 ptr_glGetnSeparableFilterARB v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glGetnSeparableFilterARB #-}
+ptr_glGetnSeparableFilterARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
+ptr_glGetnSeparableFilterARB = unsafePerformIO $ getCommand "glGetnSeparableFilterARB"
+
+-- glGetnTexImage --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexImage.xhtml OpenGL 4.x>.
+glGetnTexImage
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @pixels@.
+  -> m ()
+glGetnTexImage v1 v2 v3 v4 v5 v6 = liftIO $ dyn467 ptr_glGetnTexImage v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glGetnTexImage #-}
+ptr_glGetnTexImage :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glGetnTexImage = unsafePerformIO $ getCommand "glGetnTexImage"
+
+-- glGetnTexImageARB -----------------------------------------------------------
+
+glGetnTexImageARB
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @img@ pointing to @bufSize@ elements of type @a@.
+  -> m ()
+glGetnTexImageARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn467 ptr_glGetnTexImageARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glGetnTexImageARB #-}
+ptr_glGetnTexImageARB :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glGetnTexImageARB = unsafePerformIO $ getCommand "glGetnTexImageARB"
+
+-- glGetnUniformdv -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
+glGetnUniformdv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLdouble -- ^ @params@.
+  -> m ()
+glGetnUniformdv v1 v2 v3 v4 = liftIO $ dyn468 ptr_glGetnUniformdv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformdv #-}
+ptr_glGetnUniformdv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glGetnUniformdv = unsafePerformIO $ getCommand "glGetnUniformdv"
+
+-- glGetnUniformdvARB ----------------------------------------------------------
+
+glGetnUniformdvARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @bufSize@ elements of type @GLdouble@.
+  -> m ()
+glGetnUniformdvARB v1 v2 v3 v4 = liftIO $ dyn468 ptr_glGetnUniformdvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformdvARB #-}
+ptr_glGetnUniformdvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glGetnUniformdvARB = unsafePerformIO $ getCommand "glGetnUniformdvARB"
+
+-- glGetnUniformfv -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
+glGetnUniformfv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLfloat -- ^ @params@.
+  -> m ()
+glGetnUniformfv v1 v2 v3 v4 = liftIO $ dyn469 ptr_glGetnUniformfv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformfv #-}
+ptr_glGetnUniformfv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetnUniformfv = unsafePerformIO $ getCommand "glGetnUniformfv"
+
+-- glGetnUniformfvARB ----------------------------------------------------------
+
+glGetnUniformfvARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
+  -> m ()
+glGetnUniformfvARB v1 v2 v3 v4 = liftIO $ dyn469 ptr_glGetnUniformfvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformfvARB #-}
+ptr_glGetnUniformfvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetnUniformfvARB = unsafePerformIO $ getCommand "glGetnUniformfvARB"
+
+-- glGetnUniformfvEXT ----------------------------------------------------------
+
+-- | This command is an alias for 'glGetnUniformfv'.
+glGetnUniformfvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
+  -> m ()
+glGetnUniformfvEXT v1 v2 v3 v4 = liftIO $ dyn469 ptr_glGetnUniformfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformfvEXT #-}
+ptr_glGetnUniformfvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetnUniformfvEXT = unsafePerformIO $ getCommand "glGetnUniformfvEXT"
+
+-- glGetnUniformfvKHR ----------------------------------------------------------
+
+-- | This command is an alias for 'glGetnUniformfv'.
+glGetnUniformfvKHR
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLfloat -- ^ @params@.
+  -> m ()
+glGetnUniformfvKHR v1 v2 v3 v4 = liftIO $ dyn469 ptr_glGetnUniformfvKHR v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformfvKHR #-}
+ptr_glGetnUniformfvKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glGetnUniformfvKHR = unsafePerformIO $ getCommand "glGetnUniformfvKHR"
+
+-- glGetnUniformi64vARB --------------------------------------------------------
+
+glGetnUniformi64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLint64 -- ^ @params@.
+  -> m ()
+glGetnUniformi64vARB v1 v2 v3 v4 = liftIO $ dyn470 ptr_glGetnUniformi64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetnUniformi64vARB #-}
+ptr_glGetnUniformi64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glGetnUniformi64vARB = unsafePerformIO $ getCommand "glGetnUniformi64vARB"
+
 -- glGetnUniformiv -------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
@@ -133,7 +397,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetnUniformiv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnUniformiv v1 v2 v3 v4
+glGetnUniformiv v1 v2 v3 v4 = liftIO $ dyn471 ptr_glGetnUniformiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformiv #-}
 ptr_glGetnUniformiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
@@ -148,7 +412,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetnUniformivARB v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnUniformivARB v1 v2 v3 v4
+glGetnUniformivARB v1 v2 v3 v4 = liftIO $ dyn471 ptr_glGetnUniformivARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformivARB #-}
 ptr_glGetnUniformivARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
@@ -156,6 +420,7 @@
 
 -- glGetnUniformivEXT ----------------------------------------------------------
 
+-- | This command is an alias for 'glGetnUniformiv'.
 glGetnUniformivEXT
   :: MonadIO m
   => GLuint -- ^ @program@.
@@ -163,7 +428,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
   -> m ()
-glGetnUniformivEXT v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnUniformivEXT v1 v2 v3 v4
+glGetnUniformivEXT v1 v2 v3 v4 = liftIO $ dyn471 ptr_glGetnUniformivEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformivEXT #-}
 ptr_glGetnUniformivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
@@ -179,7 +444,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLint -- ^ @params@.
   -> m ()
-glGetnUniformivKHR v1 v2 v3 v4 = liftIO $ dyn461 ptr_glGetnUniformivKHR v1 v2 v3 v4
+glGetnUniformivKHR v1 v2 v3 v4 = liftIO $ dyn471 ptr_glGetnUniformivKHR v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformivKHR #-}
 ptr_glGetnUniformivKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
@@ -194,7 +459,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLuint64 -- ^ @params@.
   -> m ()
-glGetnUniformui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glGetnUniformui64vARB v1 v2 v3 v4
+glGetnUniformui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glGetnUniformui64vARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformui64vARB #-}
 ptr_glGetnUniformui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
@@ -210,7 +475,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLuint -- ^ @params@.
   -> m ()
-glGetnUniformuiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glGetnUniformuiv v1 v2 v3 v4
+glGetnUniformuiv v1 v2 v3 v4 = liftIO $ dyn473 ptr_glGetnUniformuiv v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformuiv #-}
 ptr_glGetnUniformuiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
@@ -225,7 +490,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLuint -- ^ @params@ pointing to @bufSize@ elements of type @GLuint@.
   -> m ()
-glGetnUniformuivARB v1 v2 v3 v4 = liftIO $ dyn463 ptr_glGetnUniformuivARB v1 v2 v3 v4
+glGetnUniformuivARB v1 v2 v3 v4 = liftIO $ dyn473 ptr_glGetnUniformuivARB v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformuivARB #-}
 ptr_glGetnUniformuivARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
@@ -241,7 +506,7 @@
   -> GLsizei -- ^ @bufSize@.
   -> Ptr GLuint -- ^ @params@.
   -> m ()
-glGetnUniformuivKHR v1 v2 v3 v4 = liftIO $ dyn463 ptr_glGetnUniformuivKHR v1 v2 v3 v4
+glGetnUniformuivKHR v1 v2 v3 v4 = liftIO $ dyn473 ptr_glGetnUniformuivKHR v1 v2 v3 v4
 
 {-# NOINLINE ptr_glGetnUniformuivKHR #-}
 ptr_glGetnUniformuivKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
@@ -253,7 +518,7 @@
   :: MonadIO m
   => GLbyte -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactorbSUN v1 = liftIO $ dyn464 ptr_glGlobalAlphaFactorbSUN v1
+glGlobalAlphaFactorbSUN v1 = liftIO $ dyn474 ptr_glGlobalAlphaFactorbSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactorbSUN #-}
 ptr_glGlobalAlphaFactorbSUN :: FunPtr (GLbyte -> IO ())
@@ -265,7 +530,7 @@
   :: MonadIO m
   => GLdouble -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactordSUN v1 = liftIO $ dyn78 ptr_glGlobalAlphaFactordSUN v1
+glGlobalAlphaFactordSUN v1 = liftIO $ dyn81 ptr_glGlobalAlphaFactordSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactordSUN #-}
 ptr_glGlobalAlphaFactordSUN :: FunPtr (GLdouble -> IO ())
@@ -277,7 +542,7 @@
   :: MonadIO m
   => GLfloat -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactorfSUN v1 = liftIO $ dyn79 ptr_glGlobalAlphaFactorfSUN v1
+glGlobalAlphaFactorfSUN v1 = liftIO $ dyn82 ptr_glGlobalAlphaFactorfSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactorfSUN #-}
 ptr_glGlobalAlphaFactorfSUN :: FunPtr (GLfloat -> IO ())
@@ -289,7 +554,7 @@
   :: MonadIO m
   => GLint -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactoriSUN v1 = liftIO $ dyn12 ptr_glGlobalAlphaFactoriSUN v1
+glGlobalAlphaFactoriSUN v1 = liftIO $ dyn13 ptr_glGlobalAlphaFactoriSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactoriSUN #-}
 ptr_glGlobalAlphaFactoriSUN :: FunPtr (GLint -> IO ())
@@ -301,7 +566,7 @@
   :: MonadIO m
   => GLshort -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactorsSUN v1 = liftIO $ dyn465 ptr_glGlobalAlphaFactorsSUN v1
+glGlobalAlphaFactorsSUN v1 = liftIO $ dyn475 ptr_glGlobalAlphaFactorsSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactorsSUN #-}
 ptr_glGlobalAlphaFactorsSUN :: FunPtr (GLshort -> IO ())
@@ -313,7 +578,7 @@
   :: MonadIO m
   => GLubyte -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactorubSUN v1 = liftIO $ dyn466 ptr_glGlobalAlphaFactorubSUN v1
+glGlobalAlphaFactorubSUN v1 = liftIO $ dyn476 ptr_glGlobalAlphaFactorubSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactorubSUN #-}
 ptr_glGlobalAlphaFactorubSUN :: FunPtr (GLubyte -> IO ())
@@ -325,7 +590,7 @@
   :: MonadIO m
   => GLuint -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactoruiSUN v1 = liftIO $ dyn2 ptr_glGlobalAlphaFactoruiSUN v1
+glGlobalAlphaFactoruiSUN v1 = liftIO $ dyn3 ptr_glGlobalAlphaFactoruiSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactoruiSUN #-}
 ptr_glGlobalAlphaFactoruiSUN :: FunPtr (GLuint -> IO ())
@@ -337,7 +602,7 @@
   :: MonadIO m
   => GLushort -- ^ @factor@.
   -> m ()
-glGlobalAlphaFactorusSUN v1 = liftIO $ dyn467 ptr_glGlobalAlphaFactorusSUN v1
+glGlobalAlphaFactorusSUN v1 = liftIO $ dyn477 ptr_glGlobalAlphaFactorusSUN v1
 
 {-# NOINLINE ptr_glGlobalAlphaFactorusSUN #-}
 ptr_glGlobalAlphaFactorusSUN :: FunPtr (GLushort -> IO ())
@@ -351,7 +616,7 @@
   => GLenum -- ^ @target@ of type [HintTarget](Graphics-GL-Groups.html#HintTarget).
   -> GLenum -- ^ @mode@ of type [HintMode](Graphics-GL-Groups.html#HintMode).
   -> m ()
-glHint v1 v2 = liftIO $ dyn51 ptr_glHint v1 v2
+glHint v1 v2 = liftIO $ dyn52 ptr_glHint v1 v2
 
 {-# NOINLINE ptr_glHint #-}
 ptr_glHint :: FunPtr (GLenum -> GLenum -> IO ())
@@ -364,7 +629,7 @@
   => GLenum -- ^ @target@ of type @HintTargetPGI@.
   -> GLint -- ^ @mode@.
   -> m ()
-glHintPGI v1 v2 = liftIO $ dyn55 ptr_glHintPGI v1 v2
+glHintPGI v1 v2 = liftIO $ dyn56 ptr_glHintPGI v1 v2
 
 {-# NOINLINE ptr_glHintPGI #-}
 ptr_glHintPGI :: FunPtr (GLenum -> GLint -> IO ())
@@ -380,7 +645,7 @@
   -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
   -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glHistogram v1 v2 v3 v4 = liftIO $ dyn468 ptr_glHistogram v1 v2 v3 v4
+glHistogram v1 v2 v3 v4 = liftIO $ dyn478 ptr_glHistogram v1 v2 v3 v4
 
 {-# NOINLINE ptr_glHistogram #-}
 ptr_glHistogram :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
@@ -396,7 +661,7 @@
   -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
   -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
   -> m ()
-glHistogramEXT v1 v2 v3 v4 = liftIO $ dyn468 ptr_glHistogramEXT v1 v2 v3 v4
+glHistogramEXT v1 v2 v3 v4 = liftIO $ dyn478 ptr_glHistogramEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glHistogramEXT #-}
 ptr_glHistogramEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
@@ -409,7 +674,7 @@
   => GLenum -- ^ @pname@ of type @IglooFunctionSelectSGIX@.
   -> Ptr a -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @IglooParameterSGIX@.
   -> m ()
-glIglooInterfaceSGIX v1 v2 = liftIO $ dyn230 ptr_glIglooInterfaceSGIX v1 v2
+glIglooInterfaceSGIX v1 v2 = liftIO $ dyn233 ptr_glIglooInterfaceSGIX v1 v2
 
 {-# NOINLINE ptr_glIglooInterfaceSGIX #-}
 ptr_glIglooInterfaceSGIX :: FunPtr (GLenum -> Ptr a -> IO ())
@@ -423,7 +688,7 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> GLfloat -- ^ @param@.
   -> m ()
-glImageTransformParameterfHP v1 v2 v3 = liftIO $ dyn161 ptr_glImageTransformParameterfHP v1 v2 v3
+glImageTransformParameterfHP v1 v2 v3 = liftIO $ dyn164 ptr_glImageTransformParameterfHP v1 v2 v3
 
 {-# NOINLINE ptr_glImageTransformParameterfHP #-}
 ptr_glImageTransformParameterfHP :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
@@ -437,7 +702,7 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
   -> m ()
-glImageTransformParameterfvHP v1 v2 v3 = liftIO $ dyn132 ptr_glImageTransformParameterfvHP v1 v2 v3
+glImageTransformParameterfvHP v1 v2 v3 = liftIO $ dyn135 ptr_glImageTransformParameterfvHP v1 v2 v3
 
 {-# NOINLINE ptr_glImageTransformParameterfvHP #-}
 ptr_glImageTransformParameterfvHP :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
@@ -451,7 +716,7 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> GLint -- ^ @param@.
   -> m ()
-glImageTransformParameteriHP v1 v2 v3 = liftIO $ dyn62 ptr_glImageTransformParameteriHP v1 v2 v3
+glImageTransformParameteriHP v1 v2 v3 = liftIO $ dyn63 ptr_glImageTransformParameteriHP v1 v2 v3
 
 {-# NOINLINE ptr_glImageTransformParameteriHP #-}
 ptr_glImageTransformParameteriHP :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
@@ -465,12 +730,99 @@
   -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
   -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
   -> m ()
-glImageTransformParameterivHP v1 v2 v3 = liftIO $ dyn133 ptr_glImageTransformParameterivHP v1 v2 v3
+glImageTransformParameterivHP v1 v2 v3 = liftIO $ dyn136 ptr_glImageTransformParameterivHP v1 v2 v3
 
 {-# NOINLINE ptr_glImageTransformParameterivHP #-}
 ptr_glImageTransformParameterivHP :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
 ptr_glImageTransformParameterivHP = unsafePerformIO $ getCommand "glImageTransformParameterivHP"
 
+-- glImportMemoryFdEXT ---------------------------------------------------------
+
+glImportMemoryFdEXT
+  :: MonadIO m
+  => GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @size@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> GLint -- ^ @fd@.
+  -> m ()
+glImportMemoryFdEXT v1 v2 v3 v4 = liftIO $ dyn479 ptr_glImportMemoryFdEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glImportMemoryFdEXT #-}
+ptr_glImportMemoryFdEXT :: FunPtr (GLuint -> GLuint64 -> GLenum -> GLint -> IO ())
+ptr_glImportMemoryFdEXT = unsafePerformIO $ getCommand "glImportMemoryFdEXT"
+
+-- glImportMemoryWin32HandleEXT ------------------------------------------------
+
+glImportMemoryWin32HandleEXT
+  :: MonadIO m
+  => GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @size@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> Ptr a -- ^ @handle@.
+  -> m ()
+glImportMemoryWin32HandleEXT v1 v2 v3 v4 = liftIO $ dyn480 ptr_glImportMemoryWin32HandleEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glImportMemoryWin32HandleEXT #-}
+ptr_glImportMemoryWin32HandleEXT :: FunPtr (GLuint -> GLuint64 -> GLenum -> Ptr a -> IO ())
+ptr_glImportMemoryWin32HandleEXT = unsafePerformIO $ getCommand "glImportMemoryWin32HandleEXT"
+
+-- glImportMemoryWin32NameEXT --------------------------------------------------
+
+glImportMemoryWin32NameEXT
+  :: MonadIO m
+  => GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @size@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> Ptr a -- ^ @name@.
+  -> m ()
+glImportMemoryWin32NameEXT v1 v2 v3 v4 = liftIO $ dyn480 ptr_glImportMemoryWin32NameEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glImportMemoryWin32NameEXT #-}
+ptr_glImportMemoryWin32NameEXT :: FunPtr (GLuint -> GLuint64 -> GLenum -> Ptr a -> IO ())
+ptr_glImportMemoryWin32NameEXT = unsafePerformIO $ getCommand "glImportMemoryWin32NameEXT"
+
+-- glImportSemaphoreFdEXT ------------------------------------------------------
+
+glImportSemaphoreFdEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> GLint -- ^ @fd@.
+  -> m ()
+glImportSemaphoreFdEXT v1 v2 v3 = liftIO $ dyn481 ptr_glImportSemaphoreFdEXT v1 v2 v3
+
+{-# NOINLINE ptr_glImportSemaphoreFdEXT #-}
+ptr_glImportSemaphoreFdEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glImportSemaphoreFdEXT = unsafePerformIO $ getCommand "glImportSemaphoreFdEXT"
+
+-- glImportSemaphoreWin32HandleEXT ---------------------------------------------
+
+glImportSemaphoreWin32HandleEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> Ptr a -- ^ @handle@.
+  -> m ()
+glImportSemaphoreWin32HandleEXT v1 v2 v3 = liftIO $ dyn482 ptr_glImportSemaphoreWin32HandleEXT v1 v2 v3
+
+{-# NOINLINE ptr_glImportSemaphoreWin32HandleEXT #-}
+ptr_glImportSemaphoreWin32HandleEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
+ptr_glImportSemaphoreWin32HandleEXT = unsafePerformIO $ getCommand "glImportSemaphoreWin32HandleEXT"
+
+-- glImportSemaphoreWin32NameEXT -----------------------------------------------
+
+glImportSemaphoreWin32NameEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLenum -- ^ @handleType@ of type [ExternalHandleType](Graphics-GL-Groups.html#ExternalHandleType).
+  -> Ptr a -- ^ @name@.
+  -> m ()
+glImportSemaphoreWin32NameEXT v1 v2 v3 = liftIO $ dyn482 ptr_glImportSemaphoreWin32NameEXT v1 v2 v3
+
+{-# NOINLINE ptr_glImportSemaphoreWin32NameEXT #-}
+ptr_glImportSemaphoreWin32NameEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
+ptr_glImportSemaphoreWin32NameEXT = unsafePerformIO $ getCommand "glImportSemaphoreWin32NameEXT"
+
 -- glImportSyncEXT -------------------------------------------------------------
 
 glImportSyncEXT
@@ -479,7 +831,7 @@
   -> GLintptr -- ^ @external_sync@.
   -> GLbitfield -- ^ @flags@.
   -> m GLsync -- ^ of type @sync@.
-glImportSyncEXT v1 v2 v3 = liftIO $ dyn469 ptr_glImportSyncEXT v1 v2 v3
+glImportSyncEXT v1 v2 v3 = liftIO $ dyn483 ptr_glImportSyncEXT v1 v2 v3
 
 {-# NOINLINE ptr_glImportSyncEXT #-}
 ptr_glImportSyncEXT :: FunPtr (GLenum -> GLintptr -> GLbitfield -> IO GLsync)
@@ -492,7 +844,7 @@
   => GLenum -- ^ @type@.
   -> GLsizei -- ^ @stride@.
   -> m ()
-glIndexFormatNV v1 v2 = liftIO $ dyn239 ptr_glIndexFormatNV v1 v2
+glIndexFormatNV v1 v2 = liftIO $ dyn242 ptr_glIndexFormatNV v1 v2
 
 {-# NOINLINE ptr_glIndexFormatNV #-}
 ptr_glIndexFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
@@ -505,7 +857,7 @@
   => GLenum -- ^ @func@ of type @IndexFunctionEXT@.
   -> GLclampf -- ^ @ref@ of type @ClampedFloat32@.
   -> m ()
-glIndexFuncEXT v1 v2 = liftIO $ dyn9 ptr_glIndexFuncEXT v1 v2
+glIndexFuncEXT v1 v2 = liftIO $ dyn10 ptr_glIndexFuncEXT v1 v2
 
 {-# NOINLINE ptr_glIndexFuncEXT #-}
 ptr_glIndexFuncEXT :: FunPtr (GLenum -> GLclampf -> IO ())
@@ -518,7 +870,7 @@
   :: MonadIO m
   => GLuint -- ^ @mask@ of type @MaskedColorIndexValueI@.
   -> m ()
-glIndexMask v1 = liftIO $ dyn2 ptr_glIndexMask v1
+glIndexMask v1 = liftIO $ dyn3 ptr_glIndexMask v1
 
 {-# NOINLINE ptr_glIndexMask #-}
 ptr_glIndexMask :: FunPtr (GLuint -> IO ())
@@ -531,7 +883,7 @@
   => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
   -> GLenum -- ^ @mode@ of type @IndexMaterialParameterEXT@.
   -> m ()
-glIndexMaterialEXT v1 v2 = liftIO $ dyn51 ptr_glIndexMaterialEXT v1 v2
+glIndexMaterialEXT v1 v2 = liftIO $ dyn52 ptr_glIndexMaterialEXT v1 v2
 
 {-# NOINLINE ptr_glIndexMaterialEXT #-}
 ptr_glIndexMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
@@ -546,7 +898,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
   -> m ()
-glIndexPointer v1 v2 v3 = liftIO $ dyn46 ptr_glIndexPointer v1 v2 v3
+glIndexPointer v1 v2 v3 = liftIO $ dyn47 ptr_glIndexPointer v1 v2 v3
 
 {-# NOINLINE ptr_glIndexPointer #-}
 ptr_glIndexPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
@@ -561,7 +913,7 @@
   -> GLsizei -- ^ @count@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride,count)@ elements of type @a@.
   -> m ()
-glIndexPointerEXT v1 v2 v3 v4 = liftIO $ dyn470 ptr_glIndexPointerEXT v1 v2 v3 v4
+glIndexPointerEXT v1 v2 v3 v4 = liftIO $ dyn484 ptr_glIndexPointerEXT v1 v2 v3 v4
 
 {-# NOINLINE ptr_glIndexPointerEXT #-}
 ptr_glIndexPointerEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
@@ -576,7 +928,7 @@
   -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
   -> GLint -- ^ @ptrstride@.
   -> m ()
-glIndexPointerListIBM v1 v2 v3 v4 = liftIO $ dyn280 ptr_glIndexPointerListIBM v1 v2 v3 v4
+glIndexPointerListIBM v1 v2 v3 v4 = liftIO $ dyn284 ptr_glIndexPointerListIBM v1 v2 v3 v4
 
 {-# NOINLINE ptr_glIndexPointerListIBM #-}
 ptr_glIndexPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
@@ -589,7 +941,7 @@
   :: MonadIO m
   => GLdouble -- ^ @c@ of type @ColorIndexValueD@.
   -> m ()
-glIndexd v1 = liftIO $ dyn78 ptr_glIndexd v1
+glIndexd v1 = liftIO $ dyn81 ptr_glIndexd v1
 
 {-# NOINLINE ptr_glIndexd #-}
 ptr_glIndexd :: FunPtr (GLdouble -> IO ())
@@ -602,7 +954,7 @@
   :: MonadIO m
   => Ptr GLdouble -- ^ @c@ pointing to @1@ element of type @ColorIndexValueD@.
   -> m ()
-glIndexdv v1 = liftIO $ dyn39 ptr_glIndexdv v1
+glIndexdv v1 = liftIO $ dyn40 ptr_glIndexdv v1
 
 {-# NOINLINE ptr_glIndexdv #-}
 ptr_glIndexdv :: FunPtr (Ptr GLdouble -> IO ())
@@ -615,7 +967,7 @@
   :: MonadIO m
   => GLfloat -- ^ @c@ of type @ColorIndexValueF@.
   -> m ()
-glIndexf v1 = liftIO $ dyn79 ptr_glIndexf v1
+glIndexf v1 = liftIO $ dyn82 ptr_glIndexf v1
 
 {-# NOINLINE ptr_glIndexf #-}
 ptr_glIndexf :: FunPtr (GLfloat -> IO ())
@@ -628,7 +980,7 @@
   :: MonadIO m
   => Ptr GLfloat -- ^ @c@ pointing to @1@ element of type @ColorIndexValueF@.
   -> m ()
-glIndexfv v1 = liftIO $ dyn41 ptr_glIndexfv v1
+glIndexfv v1 = liftIO $ dyn42 ptr_glIndexfv v1
 
 {-# NOINLINE ptr_glIndexfv #-}
 ptr_glIndexfv :: FunPtr (Ptr GLfloat -> IO ())
@@ -641,7 +993,7 @@
   :: MonadIO m
   => GLint -- ^ @c@ of type @ColorIndexValueI@.
   -> m ()
-glIndexi v1 = liftIO $ dyn12 ptr_glIndexi v1
+glIndexi v1 = liftIO $ dyn13 ptr_glIndexi v1
 
 {-# NOINLINE ptr_glIndexi #-}
 ptr_glIndexi :: FunPtr (GLint -> IO ())
@@ -654,7 +1006,7 @@
   :: MonadIO m
   => Ptr GLint -- ^ @c@ pointing to @1@ element of type @ColorIndexValueI@.
   -> m ()
-glIndexiv v1 = liftIO $ dyn43 ptr_glIndexiv v1
+glIndexiv v1 = liftIO $ dyn44 ptr_glIndexiv v1
 
 {-# NOINLINE ptr_glIndexiv #-}
 ptr_glIndexiv :: FunPtr (Ptr GLint -> IO ())
@@ -667,7 +1019,7 @@
   :: MonadIO m
   => GLshort -- ^ @c@ of type @ColorIndexValueS@.
   -> m ()
-glIndexs v1 = liftIO $ dyn465 ptr_glIndexs v1
+glIndexs v1 = liftIO $ dyn475 ptr_glIndexs v1
 
 {-# NOINLINE ptr_glIndexs #-}
 ptr_glIndexs :: FunPtr (GLshort -> IO ())
@@ -680,7 +1032,7 @@
   :: MonadIO m
   => Ptr GLshort -- ^ @c@ pointing to @1@ element of type @ColorIndexValueS@.
   -> m ()
-glIndexsv v1 = liftIO $ dyn45 ptr_glIndexsv v1
+glIndexsv v1 = liftIO $ dyn46 ptr_glIndexsv v1
 
 {-# NOINLINE ptr_glIndexsv #-}
 ptr_glIndexsv :: FunPtr (Ptr GLshort -> IO ())
@@ -693,7 +1045,7 @@
   :: MonadIO m
   => GLubyte -- ^ @c@ of type @ColorIndexValueUB@.
   -> m ()
-glIndexub v1 = liftIO $ dyn466 ptr_glIndexub v1
+glIndexub v1 = liftIO $ dyn476 ptr_glIndexub v1
 
 {-# NOINLINE ptr_glIndexub #-}
 ptr_glIndexub :: FunPtr (GLubyte -> IO ())
@@ -706,7 +1058,7 @@
   :: MonadIO m
   => Ptr GLubyte -- ^ @c@ pointing to @1@ element of type @ColorIndexValueUB@.
   -> m ()
-glIndexubv v1 = liftIO $ dyn101 ptr_glIndexubv v1
+glIndexubv v1 = liftIO $ dyn104 ptr_glIndexubv v1
 
 {-# NOINLINE ptr_glIndexubv #-}
 ptr_glIndexubv :: FunPtr (Ptr GLubyte -> IO ())
@@ -718,7 +1070,7 @@
   :: MonadIO m
   => GLfixed -- ^ @component@.
   -> m ()
-glIndexxOES v1 = liftIO $ dyn81 ptr_glIndexxOES v1
+glIndexxOES v1 = liftIO $ dyn84 ptr_glIndexxOES v1
 
 {-# NOINLINE ptr_glIndexxOES #-}
 ptr_glIndexxOES :: FunPtr (GLfixed -> IO ())
@@ -730,7 +1082,7 @@
   :: MonadIO m
   => Ptr GLfixed -- ^ @component@ pointing to @1@ element of type @GLfixed@.
   -> m ()
-glIndexxvOES v1 = liftIO $ dyn107 ptr_glIndexxvOES v1
+glIndexxvOES v1 = liftIO $ dyn110 ptr_glIndexxvOES v1
 
 {-# NOINLINE ptr_glIndexxvOES #-}
 ptr_glIndexxvOES :: FunPtr (Ptr GLfixed -> IO ())
@@ -742,7 +1094,7 @@
 glInitNames
   :: MonadIO m
   => m ()
-glInitNames = liftIO $ dyn10 ptr_glInitNames
+glInitNames = liftIO $ dyn11 ptr_glInitNames
 
 {-# NOINLINE ptr_glInitNames #-}
 ptr_glInitNames :: FunPtr (IO ())
@@ -756,7 +1108,7 @@
   -> GLuint -- ^ @src@.
   -> GLuint -- ^ @num@.
   -> m ()
-glInsertComponentEXT v1 v2 v3 = liftIO $ dyn102 ptr_glInsertComponentEXT v1 v2 v3
+glInsertComponentEXT v1 v2 v3 = liftIO $ dyn105 ptr_glInsertComponentEXT v1 v2 v3
 
 {-# NOINLINE ptr_glInsertComponentEXT #-}
 ptr_glInsertComponentEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
@@ -769,7 +1121,7 @@
   => GLsizei -- ^ @length@.
   -> Ptr GLchar -- ^ @marker@.
   -> m ()
-glInsertEventMarkerEXT v1 v2 = liftIO $ dyn471 ptr_glInsertEventMarkerEXT v1 v2
+glInsertEventMarkerEXT v1 v2 = liftIO $ dyn485 ptr_glInsertEventMarkerEXT v1 v2
 
 {-# NOINLINE ptr_glInsertEventMarkerEXT #-}
 ptr_glInsertEventMarkerEXT :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
@@ -782,7 +1134,7 @@
   => GLsizei -- ^ @size@.
   -> Ptr GLint -- ^ @buffer@ pointing to @size@ elements of type @GLint@.
   -> m ()
-glInstrumentsBufferSGIX v1 v2 = liftIO $ dyn472 ptr_glInstrumentsBufferSGIX v1 v2
+glInstrumentsBufferSGIX v1 v2 = liftIO $ dyn486 ptr_glInstrumentsBufferSGIX v1 v2
 
 {-# NOINLINE ptr_glInstrumentsBufferSGIX #-}
 ptr_glInstrumentsBufferSGIX :: FunPtr (GLsizei -> Ptr GLint -> IO ())
@@ -797,7 +1149,7 @@
   -> GLsizei -- ^ @stride@.
   -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(format,stride)@ elements of type @a@.
   -> m ()
-glInterleavedArrays v1 v2 v3 = liftIO $ dyn46 ptr_glInterleavedArrays v1 v2 v3
+glInterleavedArrays v1 v2 v3 = liftIO $ dyn47 ptr_glInterleavedArrays v1 v2 v3
 
 {-# NOINLINE ptr_glInterleavedArrays #-}
 ptr_glInterleavedArrays :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
@@ -812,7 +1164,7 @@
   -> GLuint -- ^ @pathB@ of type @Path@.
   -> GLfloat -- ^ @weight@.
   -> m ()
-glInterpolatePathsNV v1 v2 v3 v4 = liftIO $ dyn473 ptr_glInterpolatePathsNV v1 v2 v3 v4
+glInterpolatePathsNV v1 v2 v3 v4 = liftIO $ dyn487 ptr_glInterpolatePathsNV v1 v2 v3 v4
 
 {-# NOINLINE ptr_glInterpolatePathsNV #-}
 ptr_glInterpolatePathsNV :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
@@ -825,7 +1177,7 @@
   :: MonadIO m
   => GLuint -- ^ @buffer@.
   -> m ()
-glInvalidateBufferData v1 = liftIO $ dyn2 ptr_glInvalidateBufferData v1
+glInvalidateBufferData v1 = liftIO $ dyn3 ptr_glInvalidateBufferData v1
 
 {-# NOINLINE ptr_glInvalidateBufferData #-}
 ptr_glInvalidateBufferData :: FunPtr (GLuint -> IO ())
@@ -840,7 +1192,7 @@
   -> GLintptr -- ^ @offset@ of type @BufferOffset@.
   -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
   -> m ()
-glInvalidateBufferSubData v1 v2 v3 = liftIO $ dyn279 ptr_glInvalidateBufferSubData v1 v2 v3
+glInvalidateBufferSubData v1 v2 v3 = liftIO $ dyn283 ptr_glInvalidateBufferSubData v1 v2 v3
 
 {-# NOINLINE ptr_glInvalidateBufferSubData #-}
 ptr_glInvalidateBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
@@ -855,7 +1207,7 @@
   -> GLsizei -- ^ @numAttachments@.
   -> Ptr GLenum -- ^ @attachments@ pointing to @numAttachments@ elements of type @GLenum@.
   -> m ()
-glInvalidateFramebuffer v1 v2 v3 = liftIO $ dyn226 ptr_glInvalidateFramebuffer v1 v2 v3
+glInvalidateFramebuffer v1 v2 v3 = liftIO $ dyn229 ptr_glInvalidateFramebuffer v1 v2 v3
 
 {-# NOINLINE ptr_glInvalidateFramebuffer #-}
 ptr_glInvalidateFramebuffer :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
@@ -870,7 +1222,7 @@
   -> GLsizei -- ^ @numAttachments@.
   -> Ptr GLenum -- ^ @attachments@.
   -> m ()
-glInvalidateNamedFramebufferData v1 v2 v3 = liftIO $ dyn282 ptr_glInvalidateNamedFramebufferData v1 v2 v3
+glInvalidateNamedFramebufferData v1 v2 v3 = liftIO $ dyn286 ptr_glInvalidateNamedFramebufferData v1 v2 v3
 
 {-# NOINLINE ptr_glInvalidateNamedFramebufferData #-}
 ptr_glInvalidateNamedFramebufferData :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
@@ -889,7 +1241,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glInvalidateNamedFramebufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn474 ptr_glInvalidateNamedFramebufferSubData v1 v2 v3 v4 v5 v6 v7
+glInvalidateNamedFramebufferSubData v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn488 ptr_glInvalidateNamedFramebufferSubData v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glInvalidateNamedFramebufferSubData #-}
 ptr_glInvalidateNamedFramebufferSubData :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -908,7 +1260,7 @@
   -> GLsizei -- ^ @width@.
   -> GLsizei -- ^ @height@.
   -> m ()
-glInvalidateSubFramebuffer v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn475 ptr_glInvalidateSubFramebuffer v1 v2 v3 v4 v5 v6 v7
+glInvalidateSubFramebuffer v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn489 ptr_glInvalidateSubFramebuffer v1 v2 v3 v4 v5 v6 v7
 
 {-# NOINLINE ptr_glInvalidateSubFramebuffer #-}
 ptr_glInvalidateSubFramebuffer :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
@@ -922,7 +1274,7 @@
   => GLuint -- ^ @texture@.
   -> GLint -- ^ @level@.
   -> m ()
-glInvalidateTexImage v1 v2 = liftIO $ dyn476 ptr_glInvalidateTexImage v1 v2
+glInvalidateTexImage v1 v2 = liftIO $ dyn490 ptr_glInvalidateTexImage v1 v2
 
 {-# NOINLINE ptr_glInvalidateTexImage #-}
 ptr_glInvalidateTexImage :: FunPtr (GLuint -> GLint -> IO ())
@@ -942,7 +1294,7 @@
   -> GLsizei -- ^ @height@.
   -> GLsizei -- ^ @depth@.
   -> m ()
-glInvalidateTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn477 ptr_glInvalidateTexSubImage v1 v2 v3 v4 v5 v6 v7 v8
+glInvalidateTexSubImage v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn491 ptr_glInvalidateTexSubImage v1 v2 v3 v4 v5 v6 v7 v8
 
 {-# NOINLINE ptr_glInvalidateTexSubImage #-}
 ptr_glInvalidateTexSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
@@ -954,7 +1306,7 @@
   :: MonadIO m
   => GLuint -- ^ @marker@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsAsyncMarkerSGIX v1 = liftIO $ dyn273 ptr_glIsAsyncMarkerSGIX v1
+glIsAsyncMarkerSGIX v1 = liftIO $ dyn277 ptr_glIsAsyncMarkerSGIX v1
 
 {-# NOINLINE ptr_glIsAsyncMarkerSGIX #-}
 ptr_glIsAsyncMarkerSGIX :: FunPtr (GLuint -> IO GLboolean)
@@ -967,7 +1319,7 @@
   :: MonadIO m
   => GLuint -- ^ @buffer@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsBuffer v1 = liftIO $ dyn273 ptr_glIsBuffer v1
+glIsBuffer v1 = liftIO $ dyn277 ptr_glIsBuffer v1
 
 {-# NOINLINE ptr_glIsBuffer #-}
 ptr_glIsBuffer :: FunPtr (GLuint -> IO GLboolean)
@@ -980,7 +1332,7 @@
   :: MonadIO m
   => GLuint -- ^ @buffer@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsBufferARB v1 = liftIO $ dyn273 ptr_glIsBufferARB v1
+glIsBufferARB v1 = liftIO $ dyn277 ptr_glIsBufferARB v1
 
 {-# NOINLINE ptr_glIsBufferARB #-}
 ptr_glIsBufferARB :: FunPtr (GLuint -> IO GLboolean)
@@ -992,7 +1344,7 @@
   :: MonadIO m
   => GLenum -- ^ @target@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsBufferResidentNV v1 = liftIO $ dyn478 ptr_glIsBufferResidentNV v1
+glIsBufferResidentNV v1 = liftIO $ dyn492 ptr_glIsBufferResidentNV v1
 
 {-# NOINLINE ptr_glIsBufferResidentNV #-}
 ptr_glIsBufferResidentNV :: FunPtr (GLenum -> IO GLboolean)
@@ -1004,7 +1356,7 @@
   :: MonadIO m
   => GLuint -- ^ @list@.
   -> m GLboolean
-glIsCommandListNV v1 = liftIO $ dyn273 ptr_glIsCommandListNV v1
+glIsCommandListNV v1 = liftIO $ dyn277 ptr_glIsCommandListNV v1
 
 {-# NOINLINE ptr_glIsCommandListNV #-}
 ptr_glIsCommandListNV :: FunPtr (GLuint -> IO GLboolean)
@@ -1017,7 +1369,7 @@
   :: MonadIO m
   => GLenum -- ^ @cap@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnabled v1 = liftIO $ dyn478 ptr_glIsEnabled v1
+glIsEnabled v1 = liftIO $ dyn492 ptr_glIsEnabled v1
 
 {-# NOINLINE ptr_glIsEnabled #-}
 ptr_glIsEnabled :: FunPtr (GLenum -> IO GLboolean)
@@ -1031,7 +1383,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnabledIndexedEXT v1 v2 = liftIO $ dyn479 ptr_glIsEnabledIndexedEXT v1 v2
+glIsEnabledIndexedEXT v1 v2 = liftIO $ dyn493 ptr_glIsEnabledIndexedEXT v1 v2
 
 {-# NOINLINE ptr_glIsEnabledIndexedEXT #-}
 ptr_glIsEnabledIndexedEXT :: FunPtr (GLenum -> GLuint -> IO GLboolean)
@@ -1045,7 +1397,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnabledi v1 v2 = liftIO $ dyn479 ptr_glIsEnabledi v1 v2
+glIsEnabledi v1 v2 = liftIO $ dyn493 ptr_glIsEnabledi v1 v2
 
 {-# NOINLINE ptr_glIsEnabledi #-}
 ptr_glIsEnabledi :: FunPtr (GLenum -> GLuint -> IO GLboolean)
@@ -1059,7 +1411,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnablediEXT v1 v2 = liftIO $ dyn479 ptr_glIsEnablediEXT v1 v2
+glIsEnablediEXT v1 v2 = liftIO $ dyn493 ptr_glIsEnablediEXT v1 v2
 
 {-# NOINLINE ptr_glIsEnablediEXT #-}
 ptr_glIsEnablediEXT :: FunPtr (GLenum -> GLuint -> IO GLboolean)
@@ -1073,7 +1425,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnablediNV v1 v2 = liftIO $ dyn479 ptr_glIsEnablediNV v1 v2
+glIsEnablediNV v1 v2 = liftIO $ dyn493 ptr_glIsEnablediNV v1 v2
 
 {-# NOINLINE ptr_glIsEnablediNV #-}
 ptr_glIsEnablediNV :: FunPtr (GLenum -> GLuint -> IO GLboolean)
@@ -1087,7 +1439,7 @@
   => GLenum -- ^ @target@.
   -> GLuint -- ^ @index@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsEnablediOES v1 v2 = liftIO $ dyn479 ptr_glIsEnablediOES v1 v2
+glIsEnablediOES v1 v2 = liftIO $ dyn493 ptr_glIsEnablediOES v1 v2
 
 {-# NOINLINE ptr_glIsEnablediOES #-}
 ptr_glIsEnablediOES :: FunPtr (GLenum -> GLuint -> IO GLboolean)
@@ -1099,7 +1451,7 @@
   :: MonadIO m
   => GLuint -- ^ @fence@ of type @FenceNV@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsFenceAPPLE v1 = liftIO $ dyn273 ptr_glIsFenceAPPLE v1
+glIsFenceAPPLE v1 = liftIO $ dyn277 ptr_glIsFenceAPPLE v1
 
 {-# NOINLINE ptr_glIsFenceAPPLE #-}
 ptr_glIsFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
@@ -1111,7 +1463,7 @@
   :: MonadIO m
   => GLuint -- ^ @fence@ of type @FenceNV@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsFenceNV v1 = liftIO $ dyn273 ptr_glIsFenceNV v1
+glIsFenceNV v1 = liftIO $ dyn277 ptr_glIsFenceNV v1
 
 {-# NOINLINE ptr_glIsFenceNV #-}
 ptr_glIsFenceNV :: FunPtr (GLuint -> IO GLboolean)
@@ -1124,7 +1476,7 @@
   :: MonadIO m
   => GLuint -- ^ @framebuffer@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsFramebuffer v1 = liftIO $ dyn273 ptr_glIsFramebuffer v1
+glIsFramebuffer v1 = liftIO $ dyn277 ptr_glIsFramebuffer v1
 
 {-# NOINLINE ptr_glIsFramebuffer #-}
 ptr_glIsFramebuffer :: FunPtr (GLuint -> IO GLboolean)
@@ -1137,7 +1489,7 @@
   :: MonadIO m
   => GLuint -- ^ @framebuffer@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsFramebufferEXT v1 = liftIO $ dyn273 ptr_glIsFramebufferEXT v1
+glIsFramebufferEXT v1 = liftIO $ dyn277 ptr_glIsFramebufferEXT v1
 
 {-# NOINLINE ptr_glIsFramebufferEXT #-}
 ptr_glIsFramebufferEXT :: FunPtr (GLuint -> IO GLboolean)
@@ -1149,7 +1501,7 @@
   :: MonadIO m
   => GLuint -- ^ @framebuffer@.
   -> m GLboolean
-glIsFramebufferOES v1 = liftIO $ dyn273 ptr_glIsFramebufferOES v1
+glIsFramebufferOES v1 = liftIO $ dyn277 ptr_glIsFramebufferOES v1
 
 {-# NOINLINE ptr_glIsFramebufferOES #-}
 ptr_glIsFramebufferOES :: FunPtr (GLuint -> IO GLboolean)
@@ -1161,7 +1513,7 @@
   :: MonadIO m
   => GLuint64 -- ^ @handle@.
   -> m GLboolean
-glIsImageHandleResidentARB v1 = liftIO $ dyn480 ptr_glIsImageHandleResidentARB v1
+glIsImageHandleResidentARB v1 = liftIO $ dyn494 ptr_glIsImageHandleResidentARB v1
 
 {-# NOINLINE ptr_glIsImageHandleResidentARB #-}
 ptr_glIsImageHandleResidentARB :: FunPtr (GLuint64 -> IO GLboolean)
@@ -1173,302 +1525,9 @@
   :: MonadIO m
   => GLuint64 -- ^ @handle@.
   -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsImageHandleResidentNV v1 = liftIO $ dyn480 ptr_glIsImageHandleResidentNV v1
+glIsImageHandleResidentNV v1 = liftIO $ dyn494 ptr_glIsImageHandleResidentNV v1
 
 {-# NOINLINE ptr_glIsImageHandleResidentNV #-}
 ptr_glIsImageHandleResidentNV :: FunPtr (GLuint64 -> IO GLboolean)
 ptr_glIsImageHandleResidentNV = unsafePerformIO $ getCommand "glIsImageHandleResidentNV"
-
--- glIsList --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsList.xml OpenGL 2.x>.
-glIsList
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsList v1 = liftIO $ dyn273 ptr_glIsList v1
-
-{-# NOINLINE ptr_glIsList #-}
-ptr_glIsList :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsList = unsafePerformIO $ getCommand "glIsList"
-
--- glIsNameAMD -----------------------------------------------------------------
-
-glIsNameAMD
-  :: MonadIO m
-  => GLenum -- ^ @identifier@.
-  -> GLuint -- ^ @name@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsNameAMD v1 v2 = liftIO $ dyn479 ptr_glIsNameAMD v1 v2
-
-{-# NOINLINE ptr_glIsNameAMD #-}
-ptr_glIsNameAMD :: FunPtr (GLenum -> GLuint -> IO GLboolean)
-ptr_glIsNameAMD = unsafePerformIO $ getCommand "glIsNameAMD"
-
--- glIsNamedBufferResidentNV ---------------------------------------------------
-
-glIsNamedBufferResidentNV
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsNamedBufferResidentNV v1 = liftIO $ dyn273 ptr_glIsNamedBufferResidentNV v1
-
-{-# NOINLINE ptr_glIsNamedBufferResidentNV #-}
-ptr_glIsNamedBufferResidentNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsNamedBufferResidentNV = unsafePerformIO $ getCommand "glIsNamedBufferResidentNV"
-
--- glIsNamedStringARB ----------------------------------------------------------
-
-glIsNamedStringARB
-  :: MonadIO m
-  => GLint -- ^ @namelen@.
-  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsNamedStringARB v1 v2 = liftIO $ dyn481 ptr_glIsNamedStringARB v1 v2
-
-{-# NOINLINE ptr_glIsNamedStringARB #-}
-ptr_glIsNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
-ptr_glIsNamedStringARB = unsafePerformIO $ getCommand "glIsNamedStringARB"
-
--- glIsObjectBufferATI ---------------------------------------------------------
-
-glIsObjectBufferATI
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsObjectBufferATI v1 = liftIO $ dyn273 ptr_glIsObjectBufferATI v1
-
-{-# NOINLINE ptr_glIsObjectBufferATI #-}
-ptr_glIsObjectBufferATI :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsObjectBufferATI = unsafePerformIO $ getCommand "glIsObjectBufferATI"
-
--- glIsOcclusionQueryNV --------------------------------------------------------
-
-glIsOcclusionQueryNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsOcclusionQueryNV v1 = liftIO $ dyn273 ptr_glIsOcclusionQueryNV v1
-
-{-# NOINLINE ptr_glIsOcclusionQueryNV #-}
-ptr_glIsOcclusionQueryNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsOcclusionQueryNV = unsafePerformIO $ getCommand "glIsOcclusionQueryNV"
-
--- glIsPathNV ------------------------------------------------------------------
-
-glIsPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsPathNV v1 = liftIO $ dyn273 ptr_glIsPathNV v1
-
-{-# NOINLINE ptr_glIsPathNV #-}
-ptr_glIsPathNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsPathNV = unsafePerformIO $ getCommand "glIsPathNV"
-
--- glIsPointInFillPathNV -------------------------------------------------------
-
-glIsPointInFillPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsPointInFillPathNV v1 v2 v3 v4 = liftIO $ dyn482 ptr_glIsPointInFillPathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glIsPointInFillPathNV #-}
-ptr_glIsPointInFillPathNV :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
-ptr_glIsPointInFillPathNV = unsafePerformIO $ getCommand "glIsPointInFillPathNV"
-
--- glIsPointInStrokePathNV -----------------------------------------------------
-
-glIsPointInStrokePathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsPointInStrokePathNV v1 v2 v3 = liftIO $ dyn483 ptr_glIsPointInStrokePathNV v1 v2 v3
-
-{-# NOINLINE ptr_glIsPointInStrokePathNV #-}
-ptr_glIsPointInStrokePathNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
-ptr_glIsPointInStrokePathNV = unsafePerformIO $ getCommand "glIsPointInStrokePathNV"
-
--- glIsProgram -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsProgram.xhtml OpenGL 4.x>.
-glIsProgram
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsProgram v1 = liftIO $ dyn273 ptr_glIsProgram v1
-
-{-# NOINLINE ptr_glIsProgram #-}
-ptr_glIsProgram :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsProgram = unsafePerformIO $ getCommand "glIsProgram"
-
--- glIsProgramARB --------------------------------------------------------------
-
-glIsProgramARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsProgramARB v1 = liftIO $ dyn273 ptr_glIsProgramARB v1
-
-{-# NOINLINE ptr_glIsProgramARB #-}
-ptr_glIsProgramARB :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsProgramARB = unsafePerformIO $ getCommand "glIsProgramARB"
-
--- glIsProgramNV ---------------------------------------------------------------
-
--- | This command is an alias for 'glIsProgramARB'.
-glIsProgramNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsProgramNV v1 = liftIO $ dyn273 ptr_glIsProgramNV v1
-
-{-# NOINLINE ptr_glIsProgramNV #-}
-ptr_glIsProgramNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsProgramNV = unsafePerformIO $ getCommand "glIsProgramNV"
-
--- glIsProgramPipeline ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsProgramPipeline.xhtml OpenGL 4.x>.
-glIsProgramPipeline
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsProgramPipeline v1 = liftIO $ dyn273 ptr_glIsProgramPipeline v1
-
-{-# NOINLINE ptr_glIsProgramPipeline #-}
-ptr_glIsProgramPipeline :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsProgramPipeline = unsafePerformIO $ getCommand "glIsProgramPipeline"
-
--- glIsProgramPipelineEXT ------------------------------------------------------
-
-glIsProgramPipelineEXT
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m GLboolean
-glIsProgramPipelineEXT v1 = liftIO $ dyn273 ptr_glIsProgramPipelineEXT v1
-
-{-# NOINLINE ptr_glIsProgramPipelineEXT #-}
-ptr_glIsProgramPipelineEXT :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsProgramPipelineEXT = unsafePerformIO $ getCommand "glIsProgramPipelineEXT"
-
--- glIsQuery -------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsQuery.xhtml OpenGL 4.x>.
-glIsQuery
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsQuery v1 = liftIO $ dyn273 ptr_glIsQuery v1
-
-{-# NOINLINE ptr_glIsQuery #-}
-ptr_glIsQuery :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsQuery = unsafePerformIO $ getCommand "glIsQuery"
-
--- glIsQueryARB ----------------------------------------------------------------
-
--- | This command is an alias for 'glIsQuery'.
-glIsQueryARB
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsQueryARB v1 = liftIO $ dyn273 ptr_glIsQueryARB v1
-
-{-# NOINLINE ptr_glIsQueryARB #-}
-ptr_glIsQueryARB :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsQueryARB = unsafePerformIO $ getCommand "glIsQueryARB"
-
--- glIsQueryEXT ----------------------------------------------------------------
-
-glIsQueryEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean
-glIsQueryEXT v1 = liftIO $ dyn273 ptr_glIsQueryEXT v1
-
-{-# NOINLINE ptr_glIsQueryEXT #-}
-ptr_glIsQueryEXT :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsQueryEXT = unsafePerformIO $ getCommand "glIsQueryEXT"
-
--- glIsRenderbuffer ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsRenderbuffer.xhtml OpenGL 4.x>.
-glIsRenderbuffer
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsRenderbuffer v1 = liftIO $ dyn273 ptr_glIsRenderbuffer v1
-
-{-# NOINLINE ptr_glIsRenderbuffer #-}
-ptr_glIsRenderbuffer :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsRenderbuffer = unsafePerformIO $ getCommand "glIsRenderbuffer"
-
--- glIsRenderbufferEXT ---------------------------------------------------------
-
--- | This command is an alias for 'glIsRenderbuffer'.
-glIsRenderbufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsRenderbufferEXT v1 = liftIO $ dyn273 ptr_glIsRenderbufferEXT v1
-
-{-# NOINLINE ptr_glIsRenderbufferEXT #-}
-ptr_glIsRenderbufferEXT :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsRenderbufferEXT = unsafePerformIO $ getCommand "glIsRenderbufferEXT"
-
--- glIsRenderbufferOES ---------------------------------------------------------
-
-glIsRenderbufferOES
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@.
-  -> m GLboolean
-glIsRenderbufferOES v1 = liftIO $ dyn273 ptr_glIsRenderbufferOES v1
-
-{-# NOINLINE ptr_glIsRenderbufferOES #-}
-ptr_glIsRenderbufferOES :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsRenderbufferOES = unsafePerformIO $ getCommand "glIsRenderbufferOES"
-
--- glIsSampler -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSampler.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSampler.xhtml OpenGL 4.x>.
-glIsSampler
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsSampler v1 = liftIO $ dyn273 ptr_glIsSampler v1
-
-{-# NOINLINE ptr_glIsSampler #-}
-ptr_glIsSampler :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsSampler = unsafePerformIO $ getCommand "glIsSampler"
-
--- glIsShader ------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsShader.xhtml OpenGL 4.x>.
-glIsShader
-  :: MonadIO m
-  => GLuint -- ^ @shader@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsShader v1 = liftIO $ dyn273 ptr_glIsShader v1
-
-{-# NOINLINE ptr_glIsShader #-}
-ptr_glIsShader :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsShader = unsafePerformIO $ getCommand "glIsShader"
-
--- glIsStateNV -----------------------------------------------------------------
-
-glIsStateNV
-  :: MonadIO m
-  => GLuint -- ^ @state@.
-  -> m GLboolean
-glIsStateNV v1 = liftIO $ dyn273 ptr_glIsStateNV v1
-
-{-# NOINLINE ptr_glIsStateNV #-}
-ptr_glIsStateNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsStateNV = unsafePerformIO $ getCommand "glIsStateNV"
 
diff --git a/src/Graphics/GL/Functions/F15.hs b/src/Graphics/GL/Functions/F15.hs
--- a/src/Graphics/GL/Functions/F15.hs
+++ b/src/Graphics/GL/Functions/F15.hs
@@ -15,1524 +15,1434 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F15 (
-  glIsSync,
-  glIsSyncAPPLE,
-  glIsTexture,
-  glIsTextureEXT,
-  glIsTextureHandleResidentARB,
-  glIsTextureHandleResidentNV,
-  glIsTransformFeedback,
-  glIsTransformFeedbackNV,
-  glIsVariantEnabledEXT,
-  glIsVertexArray,
-  glIsVertexArrayAPPLE,
-  glIsVertexArrayOES,
-  glIsVertexAttribEnabledAPPLE,
-  glLabelObjectEXT,
-  glLightEnviSGIX,
-  glLightModelf,
-  glLightModelfv,
-  glLightModeli,
-  glLightModeliv,
-  glLightModelx,
-  glLightModelxOES,
-  glLightModelxv,
-  glLightModelxvOES,
-  glLightf,
-  glLightfv,
-  glLighti,
-  glLightiv,
-  glLightx,
-  glLightxOES,
-  glLightxv,
-  glLightxvOES,
-  glLineStipple,
-  glLineWidth,
-  glLineWidthx,
-  glLineWidthxOES,
-  glLinkProgram,
-  glLinkProgramARB,
-  glListBase,
-  glListDrawCommandsStatesClientNV,
-  glListParameterfSGIX,
-  glListParameterfvSGIX,
-  glListParameteriSGIX,
-  glListParameterivSGIX,
-  glLoadIdentity,
-  glLoadIdentityDeformationMapSGIX,
-  glLoadMatrixd,
-  glLoadMatrixf,
-  glLoadMatrixx,
-  glLoadMatrixxOES,
-  glLoadName,
-  glLoadPaletteFromModelViewMatrixOES,
-  glLoadProgramNV,
-  glLoadTransposeMatrixd,
-  glLoadTransposeMatrixdARB,
-  glLoadTransposeMatrixf,
-  glLoadTransposeMatrixfARB,
-  glLoadTransposeMatrixxOES,
-  glLockArraysEXT,
-  glLogicOp,
-  glMakeBufferNonResidentNV,
-  glMakeBufferResidentNV,
-  glMakeImageHandleNonResidentARB,
-  glMakeImageHandleNonResidentNV,
-  glMakeImageHandleResidentARB,
-  glMakeImageHandleResidentNV,
-  glMakeNamedBufferNonResidentNV,
-  glMakeNamedBufferResidentNV,
-  glMakeTextureHandleNonResidentARB,
-  glMakeTextureHandleNonResidentNV,
-  glMakeTextureHandleResidentARB,
-  glMakeTextureHandleResidentNV,
-  glMap1d,
-  glMap1f,
-  glMap1xOES,
-  glMap2d,
-  glMap2f,
-  glMap2xOES,
-  glMapBuffer,
-  glMapBufferARB,
-  glMapBufferOES,
-  glMapBufferRange,
-  glMapBufferRangeEXT,
-  glMapControlPointsNV,
-  glMapGrid1d,
-  glMapGrid1f,
-  glMapGrid1xOES,
-  glMapGrid2d,
-  glMapGrid2f,
-  glMapGrid2xOES,
-  glMapNamedBuffer,
-  glMapNamedBufferEXT,
-  glMapNamedBufferRange,
-  glMapNamedBufferRangeEXT,
-  glMapObjectBufferATI,
-  glMapParameterfvNV,
-  glMapParameterivNV,
-  glMapTexture2DINTEL,
-  glMapVertexAttrib1dAPPLE,
-  glMapVertexAttrib1fAPPLE,
-  glMapVertexAttrib2dAPPLE
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glIsSync --------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSync.xhtml OpenGL 4.x>.
-glIsSync
-  :: MonadIO m
-  => GLsync -- ^ @sync@ of type @sync@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsSync v1 = liftIO $ dyn484 ptr_glIsSync v1
-
-{-# NOINLINE ptr_glIsSync #-}
-ptr_glIsSync :: FunPtr (GLsync -> IO GLboolean)
-ptr_glIsSync = unsafePerformIO $ getCommand "glIsSync"
-
--- glIsSyncAPPLE ---------------------------------------------------------------
-
--- | This command is an alias for 'glIsSync'.
-glIsSyncAPPLE
-  :: MonadIO m
-  => GLsync -- ^ @sync@.
-  -> m GLboolean
-glIsSyncAPPLE v1 = liftIO $ dyn484 ptr_glIsSyncAPPLE v1
-
-{-# NOINLINE ptr_glIsSyncAPPLE #-}
-ptr_glIsSyncAPPLE :: FunPtr (GLsync -> IO GLboolean)
-ptr_glIsSyncAPPLE = unsafePerformIO $ getCommand "glIsSyncAPPLE"
-
--- glIsTexture -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsTexture.xhtml OpenGL 4.x>.
-glIsTexture
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsTexture v1 = liftIO $ dyn273 ptr_glIsTexture v1
-
-{-# NOINLINE ptr_glIsTexture #-}
-ptr_glIsTexture :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsTexture = unsafePerformIO $ getCommand "glIsTexture"
-
--- glIsTextureEXT --------------------------------------------------------------
-
-glIsTextureEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsTextureEXT v1 = liftIO $ dyn273 ptr_glIsTextureEXT v1
-
-{-# NOINLINE ptr_glIsTextureEXT #-}
-ptr_glIsTextureEXT :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsTextureEXT = unsafePerformIO $ getCommand "glIsTextureEXT"
-
--- glIsTextureHandleResidentARB ------------------------------------------------
-
-glIsTextureHandleResidentARB
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m GLboolean
-glIsTextureHandleResidentARB v1 = liftIO $ dyn480 ptr_glIsTextureHandleResidentARB v1
-
-{-# NOINLINE ptr_glIsTextureHandleResidentARB #-}
-ptr_glIsTextureHandleResidentARB :: FunPtr (GLuint64 -> IO GLboolean)
-ptr_glIsTextureHandleResidentARB = unsafePerformIO $ getCommand "glIsTextureHandleResidentARB"
-
--- glIsTextureHandleResidentNV -------------------------------------------------
-
-glIsTextureHandleResidentNV
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsTextureHandleResidentNV v1 = liftIO $ dyn480 ptr_glIsTextureHandleResidentNV v1
-
-{-# NOINLINE ptr_glIsTextureHandleResidentNV #-}
-ptr_glIsTextureHandleResidentNV :: FunPtr (GLuint64 -> IO GLboolean)
-ptr_glIsTextureHandleResidentNV = unsafePerformIO $ getCommand "glIsTextureHandleResidentNV"
-
--- glIsTransformFeedback -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsTransformFeedback.xhtml OpenGL 4.x>.
-glIsTransformFeedback
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsTransformFeedback v1 = liftIO $ dyn273 ptr_glIsTransformFeedback v1
-
-{-# NOINLINE ptr_glIsTransformFeedback #-}
-ptr_glIsTransformFeedback :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsTransformFeedback = unsafePerformIO $ getCommand "glIsTransformFeedback"
-
--- glIsTransformFeedbackNV -----------------------------------------------------
-
--- | This command is an alias for 'glIsTransformFeedback'.
-glIsTransformFeedbackNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsTransformFeedbackNV v1 = liftIO $ dyn273 ptr_glIsTransformFeedbackNV v1
-
-{-# NOINLINE ptr_glIsTransformFeedbackNV #-}
-ptr_glIsTransformFeedbackNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsTransformFeedbackNV = unsafePerformIO $ getCommand "glIsTransformFeedbackNV"
-
--- glIsVariantEnabledEXT -------------------------------------------------------
-
-glIsVariantEnabledEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @cap@ of type @VariantCapEXT@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVariantEnabledEXT v1 v2 = liftIO $ dyn485 ptr_glIsVariantEnabledEXT v1 v2
-
-{-# NOINLINE ptr_glIsVariantEnabledEXT #-}
-ptr_glIsVariantEnabledEXT :: FunPtr (GLuint -> GLenum -> IO GLboolean)
-ptr_glIsVariantEnabledEXT = unsafePerformIO $ getCommand "glIsVariantEnabledEXT"
-
--- glIsVertexArray -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsVertexArray.xhtml OpenGL 4.x>.
-glIsVertexArray
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVertexArray v1 = liftIO $ dyn273 ptr_glIsVertexArray v1
-
-{-# NOINLINE ptr_glIsVertexArray #-}
-ptr_glIsVertexArray :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArray = unsafePerformIO $ getCommand "glIsVertexArray"
-
--- glIsVertexArrayAPPLE --------------------------------------------------------
-
--- | This command is an alias for 'glIsVertexArray'.
-glIsVertexArrayAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVertexArrayAPPLE v1 = liftIO $ dyn273 ptr_glIsVertexArrayAPPLE v1
-
-{-# NOINLINE ptr_glIsVertexArrayAPPLE #-}
-ptr_glIsVertexArrayAPPLE :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArrayAPPLE = unsafePerformIO $ getCommand "glIsVertexArrayAPPLE"
-
--- glIsVertexArrayOES ----------------------------------------------------------
-
--- | This command is an alias for 'glIsVertexArray'.
-glIsVertexArrayOES
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean
-glIsVertexArrayOES v1 = liftIO $ dyn273 ptr_glIsVertexArrayOES v1
-
-{-# NOINLINE ptr_glIsVertexArrayOES #-}
-ptr_glIsVertexArrayOES :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArrayOES = unsafePerformIO $ getCommand "glIsVertexArrayOES"
-
--- glIsVertexAttribEnabledAPPLE ------------------------------------------------
-
-glIsVertexAttribEnabledAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @pname@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVertexAttribEnabledAPPLE v1 v2 = liftIO $ dyn485 ptr_glIsVertexAttribEnabledAPPLE v1 v2
-
-{-# NOINLINE ptr_glIsVertexAttribEnabledAPPLE #-}
-ptr_glIsVertexAttribEnabledAPPLE :: FunPtr (GLuint -> GLenum -> IO GLboolean)
-ptr_glIsVertexAttribEnabledAPPLE = unsafePerformIO $ getCommand "glIsVertexAttribEnabledAPPLE"
-
--- glLabelObjectEXT ------------------------------------------------------------
-
-glLabelObjectEXT
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @object@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @label@.
-  -> m ()
-glLabelObjectEXT v1 v2 v3 v4 = liftIO $ dyn486 ptr_glLabelObjectEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glLabelObjectEXT #-}
-ptr_glLabelObjectEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glLabelObjectEXT = unsafePerformIO $ getCommand "glLabelObjectEXT"
-
--- glLightEnviSGIX -------------------------------------------------------------
-
-glLightEnviSGIX
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [LightEnvParameterSGIX](Graphics-GL-Groups.html#LightEnvParameterSGIX).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glLightEnviSGIX v1 v2 = liftIO $ dyn55 ptr_glLightEnviSGIX v1 v2
-
-{-# NOINLINE ptr_glLightEnviSGIX #-}
-ptr_glLightEnviSGIX :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glLightEnviSGIX = unsafePerformIO $ getCommand "glLightEnviSGIX"
-
--- glLightModelf ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
-glLightModelf
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glLightModelf v1 v2 = liftIO $ dyn0 ptr_glLightModelf v1 v2
-
-{-# NOINLINE ptr_glLightModelf #-}
-ptr_glLightModelf :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glLightModelf = unsafePerformIO $ getCommand "glLightModelf"
-
--- glLightModelfv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
-glLightModelfv
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glLightModelfv v1 v2 = liftIO $ dyn94 ptr_glLightModelfv v1 v2
-
-{-# NOINLINE ptr_glLightModelfv #-}
-ptr_glLightModelfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glLightModelfv = unsafePerformIO $ getCommand "glLightModelfv"
-
--- glLightModeli ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
-glLightModeli
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
-  -> GLint -- ^ @param@.
-  -> m ()
-glLightModeli v1 v2 = liftIO $ dyn55 ptr_glLightModeli v1 v2
-
-{-# NOINLINE ptr_glLightModeli #-}
-ptr_glLightModeli :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glLightModeli = unsafePerformIO $ getCommand "glLightModeli"
-
--- glLightModeliv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
-glLightModeliv
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glLightModeliv v1 v2 = liftIO $ dyn136 ptr_glLightModeliv v1 v2
-
-{-# NOINLINE ptr_glLightModeliv #-}
-ptr_glLightModeliv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glLightModeliv = unsafePerformIO $ getCommand "glLightModeliv"
-
--- glLightModelx ---------------------------------------------------------------
-
-glLightModelx
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glLightModelx v1 v2 = liftIO $ dyn1 ptr_glLightModelx v1 v2
-
-{-# NOINLINE ptr_glLightModelx #-}
-ptr_glLightModelx :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glLightModelx = unsafePerformIO $ getCommand "glLightModelx"
-
--- glLightModelxOES ------------------------------------------------------------
-
-glLightModelxOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glLightModelxOES v1 v2 = liftIO $ dyn1 ptr_glLightModelxOES v1 v2
-
-{-# NOINLINE ptr_glLightModelxOES #-}
-ptr_glLightModelxOES :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glLightModelxOES = unsafePerformIO $ getCommand "glLightModelxOES"
-
--- glLightModelxv --------------------------------------------------------------
-
-glLightModelxv
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glLightModelxv v1 v2 = liftIO $ dyn95 ptr_glLightModelxv v1 v2
-
-{-# NOINLINE ptr_glLightModelxv #-}
-ptr_glLightModelxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glLightModelxv = unsafePerformIO $ getCommand "glLightModelxv"
-
--- glLightModelxvOES -----------------------------------------------------------
-
-glLightModelxvOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glLightModelxvOES v1 v2 = liftIO $ dyn95 ptr_glLightModelxvOES v1 v2
-
-{-# NOINLINE ptr_glLightModelxvOES #-}
-ptr_glLightModelxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glLightModelxvOES = unsafePerformIO $ getCommand "glLightModelxvOES"
-
--- glLightf --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
-glLightf
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
-  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glLightf v1 v2 v3 = liftIO $ dyn161 ptr_glLightf v1 v2 v3
-
-{-# NOINLINE ptr_glLightf #-}
-ptr_glLightf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glLightf = unsafePerformIO $ getCommand "glLightf"
-
--- glLightfv -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
-glLightfv
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
-  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glLightfv v1 v2 v3 = liftIO $ dyn132 ptr_glLightfv v1 v2 v3
-
-{-# NOINLINE ptr_glLightfv #-}
-ptr_glLightfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glLightfv = unsafePerformIO $ getCommand "glLightfv"
-
--- glLighti --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
-glLighti
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
-  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glLighti v1 v2 v3 = liftIO $ dyn62 ptr_glLighti v1 v2 v3
-
-{-# NOINLINE ptr_glLighti #-}
-ptr_glLighti :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glLighti = unsafePerformIO $ getCommand "glLighti"
-
--- glLightiv -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
-glLightiv
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
-  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glLightiv v1 v2 v3 = liftIO $ dyn133 ptr_glLightiv v1 v2 v3
-
-{-# NOINLINE ptr_glLightiv #-}
-ptr_glLightiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glLightiv = unsafePerformIO $ getCommand "glLightiv"
-
--- glLightx --------------------------------------------------------------------
-
-glLightx
-  :: MonadIO m
-  => GLenum -- ^ @light@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glLightx v1 v2 v3 = liftIO $ dyn162 ptr_glLightx v1 v2 v3
-
-{-# NOINLINE ptr_glLightx #-}
-ptr_glLightx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glLightx = unsafePerformIO $ getCommand "glLightx"
-
--- glLightxOES -----------------------------------------------------------------
-
-glLightxOES
-  :: MonadIO m
-  => GLenum -- ^ @light@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glLightxOES v1 v2 v3 = liftIO $ dyn162 ptr_glLightxOES v1 v2 v3
-
-{-# NOINLINE ptr_glLightxOES #-}
-ptr_glLightxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glLightxOES = unsafePerformIO $ getCommand "glLightxOES"
-
--- glLightxv -------------------------------------------------------------------
-
-glLightxv
-  :: MonadIO m
-  => GLenum -- ^ @light@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glLightxv v1 v2 v3 = liftIO $ dyn163 ptr_glLightxv v1 v2 v3
-
-{-# NOINLINE ptr_glLightxv #-}
-ptr_glLightxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glLightxv = unsafePerformIO $ getCommand "glLightxv"
-
--- glLightxvOES ----------------------------------------------------------------
-
-glLightxvOES
-  :: MonadIO m
-  => GLenum -- ^ @light@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glLightxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glLightxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glLightxvOES #-}
-ptr_glLightxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glLightxvOES = unsafePerformIO $ getCommand "glLightxvOES"
-
--- glLineStipple ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineStipple.xml OpenGL 2.x>.
-glLineStipple
-  :: MonadIO m
-  => GLint -- ^ @factor@ of type @CheckedInt32@.
-  -> GLushort -- ^ @pattern@ of type @LineStipple@.
-  -> m ()
-glLineStipple v1 v2 = liftIO $ dyn487 ptr_glLineStipple v1 v2
-
-{-# NOINLINE ptr_glLineStipple #-}
-ptr_glLineStipple :: FunPtr (GLint -> GLushort -> IO ())
-ptr_glLineStipple = unsafePerformIO $ getCommand "glLineStipple"
-
--- glLineWidth -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineWidth.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLineWidth.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLineWidth.xhtml OpenGL 4.x>.
-glLineWidth
-  :: MonadIO m
-  => GLfloat -- ^ @width@ of type @CheckedFloat32@.
-  -> m ()
-glLineWidth v1 = liftIO $ dyn79 ptr_glLineWidth v1
-
-{-# NOINLINE ptr_glLineWidth #-}
-ptr_glLineWidth :: FunPtr (GLfloat -> IO ())
-ptr_glLineWidth = unsafePerformIO $ getCommand "glLineWidth"
-
--- glLineWidthx ----------------------------------------------------------------
-
-glLineWidthx
-  :: MonadIO m
-  => GLfixed -- ^ @width@.
-  -> m ()
-glLineWidthx v1 = liftIO $ dyn81 ptr_glLineWidthx v1
-
-{-# NOINLINE ptr_glLineWidthx #-}
-ptr_glLineWidthx :: FunPtr (GLfixed -> IO ())
-ptr_glLineWidthx = unsafePerformIO $ getCommand "glLineWidthx"
-
--- glLineWidthxOES -------------------------------------------------------------
-
-glLineWidthxOES
-  :: MonadIO m
-  => GLfixed -- ^ @width@.
-  -> m ()
-glLineWidthxOES v1 = liftIO $ dyn81 ptr_glLineWidthxOES v1
-
-{-# NOINLINE ptr_glLineWidthxOES #-}
-ptr_glLineWidthxOES :: FunPtr (GLfixed -> IO ())
-ptr_glLineWidthxOES = unsafePerformIO $ getCommand "glLineWidthxOES"
-
--- glLinkProgram ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLinkProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLinkProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLinkProgram.xhtml OpenGL 4.x>.
-glLinkProgram
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> m ()
-glLinkProgram v1 = liftIO $ dyn2 ptr_glLinkProgram v1
-
-{-# NOINLINE ptr_glLinkProgram #-}
-ptr_glLinkProgram :: FunPtr (GLuint -> IO ())
-ptr_glLinkProgram = unsafePerformIO $ getCommand "glLinkProgram"
-
--- glLinkProgramARB ------------------------------------------------------------
-
--- | This command is an alias for 'glLinkProgram'.
-glLinkProgramARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
-  -> m ()
-glLinkProgramARB v1 = liftIO $ dyn137 ptr_glLinkProgramARB v1
-
-{-# NOINLINE ptr_glLinkProgramARB #-}
-ptr_glLinkProgramARB :: FunPtr (GLhandleARB -> IO ())
-ptr_glLinkProgramARB = unsafePerformIO $ getCommand "glLinkProgramARB"
-
--- glListBase ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glListBase.xml OpenGL 2.x>.
-glListBase
-  :: MonadIO m
-  => GLuint -- ^ @base@ of type @List@.
-  -> m ()
-glListBase v1 = liftIO $ dyn2 ptr_glListBase v1
-
-{-# NOINLINE ptr_glListBase #-}
-ptr_glListBase :: FunPtr (GLuint -> IO ())
-ptr_glListBase = unsafePerformIO $ getCommand "glListBase"
-
--- glListDrawCommandsStatesClientNV --------------------------------------------
-
-glListDrawCommandsStatesClientNV
-  :: MonadIO m
-  => GLuint -- ^ @list@.
-  -> GLuint -- ^ @segment@.
-  -> Ptr (Ptr a) -- ^ @indirects@.
-  -> Ptr GLsizei -- ^ @sizes@.
-  -> Ptr GLuint -- ^ @states@.
-  -> Ptr GLuint -- ^ @fbos@.
-  -> GLuint -- ^ @count@.
-  -> m ()
-glListDrawCommandsStatesClientNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn488 ptr_glListDrawCommandsStatesClientNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glListDrawCommandsStatesClientNV #-}
-ptr_glListDrawCommandsStatesClientNV :: FunPtr (GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
-ptr_glListDrawCommandsStatesClientNV = unsafePerformIO $ getCommand "glListDrawCommandsStatesClientNV"
-
--- glListParameterfSGIX --------------------------------------------------------
-
-glListParameterfSGIX
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glListParameterfSGIX v1 v2 v3 = liftIO $ dyn489 ptr_glListParameterfSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glListParameterfSGIX #-}
-ptr_glListParameterfSGIX :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-ptr_glListParameterfSGIX = unsafePerformIO $ getCommand "glListParameterfSGIX"
-
--- glListParameterfvSGIX -------------------------------------------------------
-
-glListParameterfvSGIX
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glListParameterfvSGIX v1 v2 v3 = liftIO $ dyn351 ptr_glListParameterfvSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glListParameterfvSGIX #-}
-ptr_glListParameterfvSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glListParameterfvSGIX = unsafePerformIO $ getCommand "glListParameterfvSGIX"
-
--- glListParameteriSGIX --------------------------------------------------------
-
-glListParameteriSGIX
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glListParameteriSGIX v1 v2 v3 = liftIO $ dyn490 ptr_glListParameteriSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glListParameteriSGIX #-}
-ptr_glListParameteriSGIX :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glListParameteriSGIX = unsafePerformIO $ getCommand "glListParameteriSGIX"
-
--- glListParameterivSGIX -------------------------------------------------------
-
-glListParameterivSGIX
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glListParameterivSGIX v1 v2 v3 = liftIO $ dyn335 ptr_glListParameterivSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glListParameterivSGIX #-}
-ptr_glListParameterivSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glListParameterivSGIX = unsafePerformIO $ getCommand "glListParameterivSGIX"
-
--- glLoadIdentity --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadIdentity.xml OpenGL 2.x>.
-glLoadIdentity
-  :: MonadIO m
-  => m ()
-glLoadIdentity = liftIO $ dyn10 ptr_glLoadIdentity
-
-{-# NOINLINE ptr_glLoadIdentity #-}
-ptr_glLoadIdentity :: FunPtr (IO ())
-ptr_glLoadIdentity = unsafePerformIO $ getCommand "glLoadIdentity"
-
--- glLoadIdentityDeformationMapSGIX --------------------------------------------
-
-glLoadIdentityDeformationMapSGIX
-  :: MonadIO m
-  => GLbitfield -- ^ @mask@ of type [FfdMaskSGIX](Graphics-GL-Groups.html#FfdMaskSGIX).
-  -> m ()
-glLoadIdentityDeformationMapSGIX v1 = liftIO $ dyn69 ptr_glLoadIdentityDeformationMapSGIX v1
-
-{-# NOINLINE ptr_glLoadIdentityDeformationMapSGIX #-}
-ptr_glLoadIdentityDeformationMapSGIX :: FunPtr (GLbitfield -> IO ())
-ptr_glLoadIdentityDeformationMapSGIX = unsafePerformIO $ getCommand "glLoadIdentityDeformationMapSGIX"
-
--- glLoadMatrixd ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>.
-glLoadMatrixd
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glLoadMatrixd v1 = liftIO $ dyn39 ptr_glLoadMatrixd v1
-
-{-# NOINLINE ptr_glLoadMatrixd #-}
-ptr_glLoadMatrixd :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glLoadMatrixd = unsafePerformIO $ getCommand "glLoadMatrixd"
-
--- glLoadMatrixf ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>.
-glLoadMatrixf
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glLoadMatrixf v1 = liftIO $ dyn41 ptr_glLoadMatrixf v1
-
-{-# NOINLINE ptr_glLoadMatrixf #-}
-ptr_glLoadMatrixf :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glLoadMatrixf = unsafePerformIO $ getCommand "glLoadMatrixf"
-
--- glLoadMatrixx ---------------------------------------------------------------
-
-glLoadMatrixx
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glLoadMatrixx v1 = liftIO $ dyn107 ptr_glLoadMatrixx v1
-
-{-# NOINLINE ptr_glLoadMatrixx #-}
-ptr_glLoadMatrixx :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glLoadMatrixx = unsafePerformIO $ getCommand "glLoadMatrixx"
-
--- glLoadMatrixxOES ------------------------------------------------------------
-
-glLoadMatrixxOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glLoadMatrixxOES v1 = liftIO $ dyn107 ptr_glLoadMatrixxOES v1
-
-{-# NOINLINE ptr_glLoadMatrixxOES #-}
-ptr_glLoadMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glLoadMatrixxOES = unsafePerformIO $ getCommand "glLoadMatrixxOES"
-
--- glLoadName ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadName.xml OpenGL 2.x>.
-glLoadName
-  :: MonadIO m
-  => GLuint -- ^ @name@ of type @SelectName@.
-  -> m ()
-glLoadName v1 = liftIO $ dyn2 ptr_glLoadName v1
-
-{-# NOINLINE ptr_glLoadName #-}
-ptr_glLoadName :: FunPtr (GLuint -> IO ())
-ptr_glLoadName = unsafePerformIO $ getCommand "glLoadName"
-
--- glLoadPaletteFromModelViewMatrixOES -----------------------------------------
-
-glLoadPaletteFromModelViewMatrixOES
-  :: MonadIO m
-  => m ()
-glLoadPaletteFromModelViewMatrixOES = liftIO $ dyn10 ptr_glLoadPaletteFromModelViewMatrixOES
-
-{-# NOINLINE ptr_glLoadPaletteFromModelViewMatrixOES #-}
-ptr_glLoadPaletteFromModelViewMatrixOES :: FunPtr (IO ())
-ptr_glLoadPaletteFromModelViewMatrixOES = unsafePerformIO $ getCommand "glLoadPaletteFromModelViewMatrixOES"
-
--- glLoadProgramNV -------------------------------------------------------------
-
-glLoadProgramNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @id@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr GLubyte -- ^ @program@ pointing to @len@ elements of type @GLubyte@.
-  -> m ()
-glLoadProgramNV v1 v2 v3 v4 = liftIO $ dyn491 ptr_glLoadProgramNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glLoadProgramNV #-}
-ptr_glLoadProgramNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
-ptr_glLoadProgramNV = unsafePerformIO $ getCommand "glLoadProgramNV"
-
--- glLoadTransposeMatrixd ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>.
-glLoadTransposeMatrixd
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glLoadTransposeMatrixd v1 = liftIO $ dyn39 ptr_glLoadTransposeMatrixd v1
-
-{-# NOINLINE ptr_glLoadTransposeMatrixd #-}
-ptr_glLoadTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glLoadTransposeMatrixd = unsafePerformIO $ getCommand "glLoadTransposeMatrixd"
-
--- glLoadTransposeMatrixdARB ---------------------------------------------------
-
--- | This command is an alias for 'glLoadTransposeMatrixd'.
-glLoadTransposeMatrixdARB
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glLoadTransposeMatrixdARB v1 = liftIO $ dyn39 ptr_glLoadTransposeMatrixdARB v1
-
-{-# NOINLINE ptr_glLoadTransposeMatrixdARB #-}
-ptr_glLoadTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glLoadTransposeMatrixdARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixdARB"
-
--- glLoadTransposeMatrixf ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>.
-glLoadTransposeMatrixf
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glLoadTransposeMatrixf v1 = liftIO $ dyn41 ptr_glLoadTransposeMatrixf v1
-
-{-# NOINLINE ptr_glLoadTransposeMatrixf #-}
-ptr_glLoadTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glLoadTransposeMatrixf = unsafePerformIO $ getCommand "glLoadTransposeMatrixf"
-
--- glLoadTransposeMatrixfARB ---------------------------------------------------
-
--- | This command is an alias for 'glLoadTransposeMatrixf'.
-glLoadTransposeMatrixfARB
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glLoadTransposeMatrixfARB v1 = liftIO $ dyn41 ptr_glLoadTransposeMatrixfARB v1
-
-{-# NOINLINE ptr_glLoadTransposeMatrixfARB #-}
-ptr_glLoadTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glLoadTransposeMatrixfARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixfARB"
-
--- glLoadTransposeMatrixxOES ---------------------------------------------------
-
-glLoadTransposeMatrixxOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glLoadTransposeMatrixxOES v1 = liftIO $ dyn107 ptr_glLoadTransposeMatrixxOES v1
-
-{-# NOINLINE ptr_glLoadTransposeMatrixxOES #-}
-ptr_glLoadTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glLoadTransposeMatrixxOES = unsafePerformIO $ getCommand "glLoadTransposeMatrixxOES"
-
--- glLockArraysEXT -------------------------------------------------------------
-
-glLockArraysEXT
-  :: MonadIO m
-  => GLint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> m ()
-glLockArraysEXT v1 v2 = liftIO $ dyn492 ptr_glLockArraysEXT v1 v2
-
-{-# NOINLINE ptr_glLockArraysEXT #-}
-ptr_glLockArraysEXT :: FunPtr (GLint -> GLsizei -> IO ())
-ptr_glLockArraysEXT = unsafePerformIO $ getCommand "glLockArraysEXT"
-
--- glLogicOp -------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLogicOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLogicOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLogicOp.xhtml OpenGL 4.x>.
-glLogicOp
-  :: MonadIO m
-  => GLenum -- ^ @opcode@ of type [LogicOp](Graphics-GL-Groups.html#LogicOp).
-  -> m ()
-glLogicOp v1 = liftIO $ dyn4 ptr_glLogicOp v1
-
-{-# NOINLINE ptr_glLogicOp #-}
-ptr_glLogicOp :: FunPtr (GLenum -> IO ())
-ptr_glLogicOp = unsafePerformIO $ getCommand "glLogicOp"
-
--- glMakeBufferNonResidentNV ---------------------------------------------------
-
-glMakeBufferNonResidentNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> m ()
-glMakeBufferNonResidentNV v1 = liftIO $ dyn4 ptr_glMakeBufferNonResidentNV v1
-
-{-# NOINLINE ptr_glMakeBufferNonResidentNV #-}
-ptr_glMakeBufferNonResidentNV :: FunPtr (GLenum -> IO ())
-ptr_glMakeBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeBufferNonResidentNV"
-
--- glMakeBufferResidentNV ------------------------------------------------------
-
-glMakeBufferResidentNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @access@.
-  -> m ()
-glMakeBufferResidentNV v1 v2 = liftIO $ dyn51 ptr_glMakeBufferResidentNV v1 v2
-
-{-# NOINLINE ptr_glMakeBufferResidentNV #-}
-ptr_glMakeBufferResidentNV :: FunPtr (GLenum -> GLenum -> IO ())
-ptr_glMakeBufferResidentNV = unsafePerformIO $ getCommand "glMakeBufferResidentNV"
-
--- glMakeImageHandleNonResidentARB ---------------------------------------------
-
-glMakeImageHandleNonResidentARB
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeImageHandleNonResidentARB v1 = liftIO $ dyn493 ptr_glMakeImageHandleNonResidentARB v1
-
-{-# NOINLINE ptr_glMakeImageHandleNonResidentARB #-}
-ptr_glMakeImageHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeImageHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentARB"
-
--- glMakeImageHandleNonResidentNV ----------------------------------------------
-
-glMakeImageHandleNonResidentNV
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeImageHandleNonResidentNV v1 = liftIO $ dyn493 ptr_glMakeImageHandleNonResidentNV v1
-
-{-# NOINLINE ptr_glMakeImageHandleNonResidentNV #-}
-ptr_glMakeImageHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeImageHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentNV"
-
--- glMakeImageHandleResidentARB ------------------------------------------------
-
-glMakeImageHandleResidentARB
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> GLenum -- ^ @access@.
-  -> m ()
-glMakeImageHandleResidentARB v1 v2 = liftIO $ dyn494 ptr_glMakeImageHandleResidentARB v1 v2
-
-{-# NOINLINE ptr_glMakeImageHandleResidentARB #-}
-ptr_glMakeImageHandleResidentARB :: FunPtr (GLuint64 -> GLenum -> IO ())
-ptr_glMakeImageHandleResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleResidentARB"
-
--- glMakeImageHandleResidentNV -------------------------------------------------
-
-glMakeImageHandleResidentNV
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> GLenum -- ^ @access@.
-  -> m ()
-glMakeImageHandleResidentNV v1 v2 = liftIO $ dyn494 ptr_glMakeImageHandleResidentNV v1 v2
-
-{-# NOINLINE ptr_glMakeImageHandleResidentNV #-}
-ptr_glMakeImageHandleResidentNV :: FunPtr (GLuint64 -> GLenum -> IO ())
-ptr_glMakeImageHandleResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleResidentNV"
-
--- glMakeNamedBufferNonResidentNV ----------------------------------------------
-
-glMakeNamedBufferNonResidentNV
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m ()
-glMakeNamedBufferNonResidentNV v1 = liftIO $ dyn2 ptr_glMakeNamedBufferNonResidentNV v1
-
-{-# NOINLINE ptr_glMakeNamedBufferNonResidentNV #-}
-ptr_glMakeNamedBufferNonResidentNV :: FunPtr (GLuint -> IO ())
-ptr_glMakeNamedBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferNonResidentNV"
-
--- glMakeNamedBufferResidentNV -------------------------------------------------
-
-glMakeNamedBufferResidentNV
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @access@.
-  -> m ()
-glMakeNamedBufferResidentNV v1 v2 = liftIO $ dyn15 ptr_glMakeNamedBufferResidentNV v1 v2
-
-{-# NOINLINE ptr_glMakeNamedBufferResidentNV #-}
-ptr_glMakeNamedBufferResidentNV :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glMakeNamedBufferResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferResidentNV"
-
--- glMakeTextureHandleNonResidentARB -------------------------------------------
-
-glMakeTextureHandleNonResidentARB
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeTextureHandleNonResidentARB v1 = liftIO $ dyn493 ptr_glMakeTextureHandleNonResidentARB v1
-
-{-# NOINLINE ptr_glMakeTextureHandleNonResidentARB #-}
-ptr_glMakeTextureHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeTextureHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentARB"
-
--- glMakeTextureHandleNonResidentNV --------------------------------------------
-
-glMakeTextureHandleNonResidentNV
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeTextureHandleNonResidentNV v1 = liftIO $ dyn493 ptr_glMakeTextureHandleNonResidentNV v1
-
-{-# NOINLINE ptr_glMakeTextureHandleNonResidentNV #-}
-ptr_glMakeTextureHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeTextureHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentNV"
-
--- glMakeTextureHandleResidentARB ----------------------------------------------
-
-glMakeTextureHandleResidentARB
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeTextureHandleResidentARB v1 = liftIO $ dyn493 ptr_glMakeTextureHandleResidentARB v1
-
-{-# NOINLINE ptr_glMakeTextureHandleResidentARB #-}
-ptr_glMakeTextureHandleResidentARB :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeTextureHandleResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleResidentARB"
-
--- glMakeTextureHandleResidentNV -----------------------------------------------
-
-glMakeTextureHandleResidentNV
-  :: MonadIO m
-  => GLuint64 -- ^ @handle@.
-  -> m ()
-glMakeTextureHandleResidentNV v1 = liftIO $ dyn493 ptr_glMakeTextureHandleResidentNV v1
-
-{-# NOINLINE ptr_glMakeTextureHandleResidentNV #-}
-ptr_glMakeTextureHandleResidentNV :: FunPtr (GLuint64 -> IO ())
-ptr_glMakeTextureHandleResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleResidentNV"
-
--- glMap1d ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>.
-glMap1d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> GLint -- ^ @stride@.
-  -> GLint -- ^ @order@ of type @CheckedInt32@.
-  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordD@.
-  -> m ()
-glMap1d v1 v2 v3 v4 v5 v6 = liftIO $ dyn495 ptr_glMap1d v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMap1d #-}
-ptr_glMap1d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-ptr_glMap1d = unsafePerformIO $ getCommand "glMap1d"
-
--- glMap1f ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>.
-glMap1f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> GLint -- ^ @stride@.
-  -> GLint -- ^ @order@ of type @CheckedInt32@.
-  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordF@.
-  -> m ()
-glMap1f v1 v2 v3 v4 v5 v6 = liftIO $ dyn496 ptr_glMap1f v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMap1f #-}
-ptr_glMap1f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-ptr_glMap1f = unsafePerformIO $ getCommand "glMap1f"
-
--- glMap1xOES ------------------------------------------------------------------
-
-glMap1xOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLfixed -- ^ @u1@.
-  -> GLfixed -- ^ @u2@.
-  -> GLint -- ^ @stride@.
-  -> GLint -- ^ @order@.
-  -> GLfixed -- ^ @points@.
-  -> m ()
-glMap1xOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn497 ptr_glMap1xOES v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMap1xOES #-}
-ptr_glMap1xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
-ptr_glMap1xOES = unsafePerformIO $ getCommand "glMap1xOES"
-
--- glMap2d ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>.
-glMap2d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> GLint -- ^ @ustride@.
-  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
-  -> GLdouble -- ^ @v1@ of type @CoordD@.
-  -> GLdouble -- ^ @v2@ of type @CoordD@.
-  -> GLint -- ^ @vstride@.
-  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
-  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
-  -> m ()
-glMap2d v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn498 ptr_glMap2d v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glMap2d #-}
-ptr_glMap2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-ptr_glMap2d = unsafePerformIO $ getCommand "glMap2d"
-
--- glMap2f ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>.
-glMap2f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> GLint -- ^ @ustride@.
-  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
-  -> GLfloat -- ^ @v1@ of type @CoordF@.
-  -> GLfloat -- ^ @v2@ of type @CoordF@.
-  -> GLint -- ^ @vstride@.
-  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
-  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
-  -> m ()
-glMap2f v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn499 ptr_glMap2f v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glMap2f #-}
-ptr_glMap2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-ptr_glMap2f = unsafePerformIO $ getCommand "glMap2f"
-
--- glMap2xOES ------------------------------------------------------------------
-
-glMap2xOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLfixed -- ^ @u1@.
-  -> GLfixed -- ^ @u2@.
-  -> GLint -- ^ @ustride@.
-  -> GLint -- ^ @uorder@.
-  -> GLfixed -- ^ @v1@.
-  -> GLfixed -- ^ @v2@.
-  -> GLint -- ^ @vstride@.
-  -> GLint -- ^ @vorder@.
-  -> GLfixed -- ^ @points@.
-  -> m ()
-glMap2xOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn500 ptr_glMap2xOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glMap2xOES #-}
-ptr_glMap2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
-ptr_glMap2xOES = unsafePerformIO $ getCommand "glMap2xOES"
-
--- glMapBuffer -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>.
-glMapBuffer
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
-  -> GLenum -- ^ @access@ of type @BufferAccessARB@.
-  -> m (Ptr a)
-glMapBuffer v1 v2 = liftIO $ dyn501 ptr_glMapBuffer v1 v2
-
-{-# NOINLINE ptr_glMapBuffer #-}
-ptr_glMapBuffer :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
-ptr_glMapBuffer = unsafePerformIO $ getCommand "glMapBuffer"
-
--- glMapBufferARB --------------------------------------------------------------
-
--- | This command is an alias for 'glMapBuffer'.
-glMapBufferARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
-  -> GLenum -- ^ @access@ of type @BufferAccessARB@.
-  -> m (Ptr a)
-glMapBufferARB v1 v2 = liftIO $ dyn501 ptr_glMapBufferARB v1 v2
-
-{-# NOINLINE ptr_glMapBufferARB #-}
-ptr_glMapBufferARB :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
-ptr_glMapBufferARB = unsafePerformIO $ getCommand "glMapBufferARB"
-
--- glMapBufferOES --------------------------------------------------------------
-
--- | This command is an alias for 'glMapBuffer'.
-glMapBufferOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @access@.
-  -> m (Ptr a)
-glMapBufferOES v1 v2 = liftIO $ dyn501 ptr_glMapBufferOES v1 v2
-
-{-# NOINLINE ptr_glMapBufferOES #-}
-ptr_glMapBufferOES :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
-ptr_glMapBufferOES = unsafePerformIO $ getCommand "glMapBufferOES"
-
--- glMapBufferRange ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>.
-glMapBufferRange
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
-  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
-  -> m (Ptr a)
-glMapBufferRange v1 v2 v3 v4 = liftIO $ dyn502 ptr_glMapBufferRange v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMapBufferRange #-}
-ptr_glMapBufferRange :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-ptr_glMapBufferRange = unsafePerformIO $ getCommand "glMapBufferRange"
-
--- glMapBufferRangeEXT ---------------------------------------------------------
-
--- | This command is an alias for 'glMapBufferRange'.
-glMapBufferRangeEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @length@.
-  -> GLbitfield -- ^ @access@.
-  -> m (Ptr a)
-glMapBufferRangeEXT v1 v2 v3 v4 = liftIO $ dyn502 ptr_glMapBufferRangeEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMapBufferRangeEXT #-}
-ptr_glMapBufferRangeEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-ptr_glMapBufferRangeEXT = unsafePerformIO $ getCommand "glMapBufferRangeEXT"
-
--- glMapControlPointsNV --------------------------------------------------------
-
-glMapControlPointsNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @EvalTargetNV@.
-  -> GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@ of type @MapTypeNV@.
-  -> GLsizei -- ^ @ustride@.
-  -> GLsizei -- ^ @vstride@.
-  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
-  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
-  -> GLboolean -- ^ @packed@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr a -- ^ @points@ pointing to @COMPSIZE(target,uorder,vorder)@ elements of type @a@.
-  -> m ()
-glMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn503 ptr_glMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glMapControlPointsNV #-}
-ptr_glMapControlPointsNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
-ptr_glMapControlPointsNV = unsafePerformIO $ getCommand "glMapControlPointsNV"
-
--- glMapGrid1d -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
-glMapGrid1d
-  :: MonadIO m
-  => GLint -- ^ @un@.
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> m ()
-glMapGrid1d v1 v2 v3 = liftIO $ dyn504 ptr_glMapGrid1d v1 v2 v3
-
-{-# NOINLINE ptr_glMapGrid1d #-}
-ptr_glMapGrid1d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
-ptr_glMapGrid1d = unsafePerformIO $ getCommand "glMapGrid1d"
-
--- glMapGrid1f -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
-glMapGrid1f
-  :: MonadIO m
-  => GLint -- ^ @un@.
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> m ()
-glMapGrid1f v1 v2 v3 = liftIO $ dyn505 ptr_glMapGrid1f v1 v2 v3
-
-{-# NOINLINE ptr_glMapGrid1f #-}
-ptr_glMapGrid1f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glMapGrid1f = unsafePerformIO $ getCommand "glMapGrid1f"
-
--- glMapGrid1xOES --------------------------------------------------------------
-
-glMapGrid1xOES
-  :: MonadIO m
-  => GLint -- ^ @n@.
-  -> GLfixed -- ^ @u1@.
-  -> GLfixed -- ^ @u2@.
-  -> m ()
-glMapGrid1xOES v1 v2 v3 = liftIO $ dyn506 ptr_glMapGrid1xOES v1 v2 v3
-
-{-# NOINLINE ptr_glMapGrid1xOES #-}
-ptr_glMapGrid1xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
-ptr_glMapGrid1xOES = unsafePerformIO $ getCommand "glMapGrid1xOES"
-
--- glMapGrid2d -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
-glMapGrid2d
-  :: MonadIO m
-  => GLint -- ^ @un@.
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> GLint -- ^ @vn@.
-  -> GLdouble -- ^ @v1@ of type @CoordD@.
-  -> GLdouble -- ^ @v2@ of type @CoordD@.
-  -> m ()
-glMapGrid2d v1 v2 v3 v4 v5 v6 = liftIO $ dyn507 ptr_glMapGrid2d v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMapGrid2d #-}
-ptr_glMapGrid2d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
-ptr_glMapGrid2d = unsafePerformIO $ getCommand "glMapGrid2d"
-
--- glMapGrid2f -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
-glMapGrid2f
-  :: MonadIO m
-  => GLint -- ^ @un@.
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> GLint -- ^ @vn@.
-  -> GLfloat -- ^ @v1@ of type @CoordF@.
-  -> GLfloat -- ^ @v2@ of type @CoordF@.
-  -> m ()
-glMapGrid2f v1 v2 v3 v4 v5 v6 = liftIO $ dyn508 ptr_glMapGrid2f v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMapGrid2f #-}
-ptr_glMapGrid2f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glMapGrid2f = unsafePerformIO $ getCommand "glMapGrid2f"
-
--- glMapGrid2xOES --------------------------------------------------------------
-
-glMapGrid2xOES
-  :: MonadIO m
-  => GLint -- ^ @n@.
-  -> GLfixed -- ^ @u1@.
-  -> GLfixed -- ^ @u2@.
-  -> GLfixed -- ^ @v1@.
-  -> GLfixed -- ^ @v2@.
-  -> m ()
-glMapGrid2xOES v1 v2 v3 v4 v5 = liftIO $ dyn509 ptr_glMapGrid2xOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMapGrid2xOES #-}
-ptr_glMapGrid2xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glMapGrid2xOES = unsafePerformIO $ getCommand "glMapGrid2xOES"
-
--- glMapNamedBuffer ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>.
-glMapNamedBuffer
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @access@.
-  -> m (Ptr a)
-glMapNamedBuffer v1 v2 = liftIO $ dyn510 ptr_glMapNamedBuffer v1 v2
-
-{-# NOINLINE ptr_glMapNamedBuffer #-}
-ptr_glMapNamedBuffer :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
-ptr_glMapNamedBuffer = unsafePerformIO $ getCommand "glMapNamedBuffer"
-
--- glMapNamedBufferEXT ---------------------------------------------------------
-
-glMapNamedBufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @access@ of type @VertexBufferObjectAccess@.
-  -> m (Ptr a)
-glMapNamedBufferEXT v1 v2 = liftIO $ dyn510 ptr_glMapNamedBufferEXT v1 v2
-
-{-# NOINLINE ptr_glMapNamedBufferEXT #-}
-ptr_glMapNamedBufferEXT :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
-ptr_glMapNamedBufferEXT = unsafePerformIO $ getCommand "glMapNamedBufferEXT"
-
--- glMapNamedBufferRange -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>.
-glMapNamedBufferRange
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
-  -> GLbitfield -- ^ @access@.
-  -> m (Ptr a)
-glMapNamedBufferRange v1 v2 v3 v4 = liftIO $ dyn511 ptr_glMapNamedBufferRange v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMapNamedBufferRange #-}
-ptr_glMapNamedBufferRange :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-ptr_glMapNamedBufferRange = unsafePerformIO $ getCommand "glMapNamedBufferRange"
-
--- glMapNamedBufferRangeEXT ----------------------------------------------------
-
-glMapNamedBufferRangeEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @length@.
-  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
-  -> m (Ptr a)
-glMapNamedBufferRangeEXT v1 v2 v3 v4 = liftIO $ dyn511 ptr_glMapNamedBufferRangeEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMapNamedBufferRangeEXT #-}
-ptr_glMapNamedBufferRangeEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
-ptr_glMapNamedBufferRangeEXT = unsafePerformIO $ getCommand "glMapNamedBufferRangeEXT"
-
--- glMapObjectBufferATI --------------------------------------------------------
-
-glMapObjectBufferATI
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m (Ptr a)
-glMapObjectBufferATI v1 = liftIO $ dyn512 ptr_glMapObjectBufferATI v1
-
-{-# NOINLINE ptr_glMapObjectBufferATI #-}
-ptr_glMapObjectBufferATI :: FunPtr (GLuint -> IO (Ptr a))
-ptr_glMapObjectBufferATI = unsafePerformIO $ getCommand "glMapObjectBufferATI"
-
--- glMapParameterfvNV ----------------------------------------------------------
-
-glMapParameterfvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @EvalTargetNV@.
-  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glMapParameterfvNV v1 v2 v3 = liftIO $ dyn132 ptr_glMapParameterfvNV v1 v2 v3
-
-{-# NOINLINE ptr_glMapParameterfvNV #-}
-ptr_glMapParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glMapParameterfvNV = unsafePerformIO $ getCommand "glMapParameterfvNV"
-
--- glMapParameterivNV ----------------------------------------------------------
-
-glMapParameterivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @EvalTargetNV@.
-  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMapParameterivNV v1 v2 v3 = liftIO $ dyn133 ptr_glMapParameterivNV v1 v2 v3
-
-{-# NOINLINE ptr_glMapParameterivNV #-}
-ptr_glMapParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMapParameterivNV = unsafePerformIO $ getCommand "glMapParameterivNV"
-
--- glMapTexture2DINTEL ---------------------------------------------------------
-
-glMapTexture2DINTEL
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLbitfield -- ^ @access@.
-  -> Ptr GLint -- ^ @stride@ pointing to @1@ element of type @GLint@.
-  -> Ptr GLenum -- ^ @layout@ pointing to @1@ element of type @GLenum@.
-  -> m (Ptr a)
-glMapTexture2DINTEL v1 v2 v3 v4 v5 = liftIO $ dyn513 ptr_glMapTexture2DINTEL v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMapTexture2DINTEL #-}
-ptr_glMapTexture2DINTEL :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
-ptr_glMapTexture2DINTEL = unsafePerformIO $ getCommand "glMapTexture2DINTEL"
-
--- glMapVertexAttrib1dAPPLE ----------------------------------------------------
-
-glMapVertexAttrib1dAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @size@.
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> GLint -- ^ @stride@.
-  -> GLint -- ^ @order@ of type @CheckedInt32@.
-  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordD@.
-  -> m ()
-glMapVertexAttrib1dAPPLE v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn514 ptr_glMapVertexAttrib1dAPPLE v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMapVertexAttrib1dAPPLE #-}
-ptr_glMapVertexAttrib1dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-ptr_glMapVertexAttrib1dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1dAPPLE"
-
--- glMapVertexAttrib1fAPPLE ----------------------------------------------------
-
-glMapVertexAttrib1fAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @size@.
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> GLint -- ^ @stride@.
-  -> GLint -- ^ @order@ of type @CheckedInt32@.
-  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordF@.
-  -> m ()
-glMapVertexAttrib1fAPPLE v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn515 ptr_glMapVertexAttrib1fAPPLE v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMapVertexAttrib1fAPPLE #-}
-ptr_glMapVertexAttrib1fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-ptr_glMapVertexAttrib1fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1fAPPLE"
-
--- glMapVertexAttrib2dAPPLE ----------------------------------------------------
-
-glMapVertexAttrib2dAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @size@.
-  -> GLdouble -- ^ @u1@ of type @CoordD@.
-  -> GLdouble -- ^ @u2@ of type @CoordD@.
-  -> GLint -- ^ @ustride@.
-  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
-  -> GLdouble -- ^ @v1@ of type @CoordD@.
-  -> GLdouble -- ^ @v2@ of type @CoordD@.
-  -> GLint -- ^ @vstride@.
-  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
-  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
-  -> m ()
-glMapVertexAttrib2dAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn516 ptr_glMapVertexAttrib2dAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glMapVertexAttrib2dAPPLE #-}
-ptr_glMapVertexAttrib2dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
-ptr_glMapVertexAttrib2dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2dAPPLE"
+  glIsList,
+  glIsMemoryObjectEXT,
+  glIsNameAMD,
+  glIsNamedBufferResidentNV,
+  glIsNamedStringARB,
+  glIsObjectBufferATI,
+  glIsOcclusionQueryNV,
+  glIsPathNV,
+  glIsPointInFillPathNV,
+  glIsPointInStrokePathNV,
+  glIsProgram,
+  glIsProgramARB,
+  glIsProgramNV,
+  glIsProgramPipeline,
+  glIsProgramPipelineEXT,
+  glIsQuery,
+  glIsQueryARB,
+  glIsQueryEXT,
+  glIsRenderbuffer,
+  glIsRenderbufferEXT,
+  glIsRenderbufferOES,
+  glIsSampler,
+  glIsSemaphoreEXT,
+  glIsShader,
+  glIsStateNV,
+  glIsSync,
+  glIsSyncAPPLE,
+  glIsTexture,
+  glIsTextureEXT,
+  glIsTextureHandleResidentARB,
+  glIsTextureHandleResidentNV,
+  glIsTransformFeedback,
+  glIsTransformFeedbackNV,
+  glIsVariantEnabledEXT,
+  glIsVertexArray,
+  glIsVertexArrayAPPLE,
+  glIsVertexArrayOES,
+  glIsVertexAttribEnabledAPPLE,
+  glLGPUCopyImageSubDataNVX,
+  glLGPUInterlockNVX,
+  glLGPUNamedBufferSubDataNVX,
+  glLabelObjectEXT,
+  glLightEnviSGIX,
+  glLightModelf,
+  glLightModelfv,
+  glLightModeli,
+  glLightModeliv,
+  glLightModelx,
+  glLightModelxOES,
+  glLightModelxv,
+  glLightModelxvOES,
+  glLightf,
+  glLightfv,
+  glLighti,
+  glLightiv,
+  glLightx,
+  glLightxOES,
+  glLightxv,
+  glLightxvOES,
+  glLineStipple,
+  glLineWidth,
+  glLineWidthx,
+  glLineWidthxOES,
+  glLinkProgram,
+  glLinkProgramARB,
+  glListBase,
+  glListDrawCommandsStatesClientNV,
+  glListParameterfSGIX,
+  glListParameterfvSGIX,
+  glListParameteriSGIX,
+  glListParameterivSGIX,
+  glLoadIdentity,
+  glLoadIdentityDeformationMapSGIX,
+  glLoadMatrixd,
+  glLoadMatrixf,
+  glLoadMatrixx,
+  glLoadMatrixxOES,
+  glLoadName,
+  glLoadPaletteFromModelViewMatrixOES,
+  glLoadProgramNV,
+  glLoadTransposeMatrixd,
+  glLoadTransposeMatrixdARB,
+  glLoadTransposeMatrixf,
+  glLoadTransposeMatrixfARB,
+  glLoadTransposeMatrixxOES,
+  glLockArraysEXT,
+  glLogicOp,
+  glMakeBufferNonResidentNV,
+  glMakeBufferResidentNV,
+  glMakeImageHandleNonResidentARB,
+  glMakeImageHandleNonResidentNV,
+  glMakeImageHandleResidentARB,
+  glMakeImageHandleResidentNV,
+  glMakeNamedBufferNonResidentNV,
+  glMakeNamedBufferResidentNV,
+  glMakeTextureHandleNonResidentARB,
+  glMakeTextureHandleNonResidentNV,
+  glMakeTextureHandleResidentARB,
+  glMakeTextureHandleResidentNV,
+  glMap1d
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glIsList --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsList.xml OpenGL 2.x>.
+glIsList
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsList v1 = liftIO $ dyn277 ptr_glIsList v1
+
+{-# NOINLINE ptr_glIsList #-}
+ptr_glIsList :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsList = unsafePerformIO $ getCommand "glIsList"
+
+-- glIsMemoryObjectEXT ---------------------------------------------------------
+
+glIsMemoryObjectEXT
+  :: MonadIO m
+  => GLuint -- ^ @memoryObject@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsMemoryObjectEXT v1 = liftIO $ dyn277 ptr_glIsMemoryObjectEXT v1
+
+{-# NOINLINE ptr_glIsMemoryObjectEXT #-}
+ptr_glIsMemoryObjectEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsMemoryObjectEXT = unsafePerformIO $ getCommand "glIsMemoryObjectEXT"
+
+-- glIsNameAMD -----------------------------------------------------------------
+
+glIsNameAMD
+  :: MonadIO m
+  => GLenum -- ^ @identifier@.
+  -> GLuint -- ^ @name@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsNameAMD v1 v2 = liftIO $ dyn493 ptr_glIsNameAMD v1 v2
+
+{-# NOINLINE ptr_glIsNameAMD #-}
+ptr_glIsNameAMD :: FunPtr (GLenum -> GLuint -> IO GLboolean)
+ptr_glIsNameAMD = unsafePerformIO $ getCommand "glIsNameAMD"
+
+-- glIsNamedBufferResidentNV ---------------------------------------------------
+
+glIsNamedBufferResidentNV
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsNamedBufferResidentNV v1 = liftIO $ dyn277 ptr_glIsNamedBufferResidentNV v1
+
+{-# NOINLINE ptr_glIsNamedBufferResidentNV #-}
+ptr_glIsNamedBufferResidentNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsNamedBufferResidentNV = unsafePerformIO $ getCommand "glIsNamedBufferResidentNV"
+
+-- glIsNamedStringARB ----------------------------------------------------------
+
+glIsNamedStringARB
+  :: MonadIO m
+  => GLint -- ^ @namelen@.
+  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsNamedStringARB v1 v2 = liftIO $ dyn495 ptr_glIsNamedStringARB v1 v2
+
+{-# NOINLINE ptr_glIsNamedStringARB #-}
+ptr_glIsNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
+ptr_glIsNamedStringARB = unsafePerformIO $ getCommand "glIsNamedStringARB"
+
+-- glIsObjectBufferATI ---------------------------------------------------------
+
+glIsObjectBufferATI
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsObjectBufferATI v1 = liftIO $ dyn277 ptr_glIsObjectBufferATI v1
+
+{-# NOINLINE ptr_glIsObjectBufferATI #-}
+ptr_glIsObjectBufferATI :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsObjectBufferATI = unsafePerformIO $ getCommand "glIsObjectBufferATI"
+
+-- glIsOcclusionQueryNV --------------------------------------------------------
+
+glIsOcclusionQueryNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsOcclusionQueryNV v1 = liftIO $ dyn277 ptr_glIsOcclusionQueryNV v1
+
+{-# NOINLINE ptr_glIsOcclusionQueryNV #-}
+ptr_glIsOcclusionQueryNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsOcclusionQueryNV = unsafePerformIO $ getCommand "glIsOcclusionQueryNV"
+
+-- glIsPathNV ------------------------------------------------------------------
+
+glIsPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsPathNV v1 = liftIO $ dyn277 ptr_glIsPathNV v1
+
+{-# NOINLINE ptr_glIsPathNV #-}
+ptr_glIsPathNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsPathNV = unsafePerformIO $ getCommand "glIsPathNV"
+
+-- glIsPointInFillPathNV -------------------------------------------------------
+
+glIsPointInFillPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsPointInFillPathNV v1 v2 v3 v4 = liftIO $ dyn496 ptr_glIsPointInFillPathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glIsPointInFillPathNV #-}
+ptr_glIsPointInFillPathNV :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
+ptr_glIsPointInFillPathNV = unsafePerformIO $ getCommand "glIsPointInFillPathNV"
+
+-- glIsPointInStrokePathNV -----------------------------------------------------
+
+glIsPointInStrokePathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsPointInStrokePathNV v1 v2 v3 = liftIO $ dyn497 ptr_glIsPointInStrokePathNV v1 v2 v3
+
+{-# NOINLINE ptr_glIsPointInStrokePathNV #-}
+ptr_glIsPointInStrokePathNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
+ptr_glIsPointInStrokePathNV = unsafePerformIO $ getCommand "glIsPointInStrokePathNV"
+
+-- glIsProgram -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsProgram.xhtml OpenGL 4.x>.
+glIsProgram
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsProgram v1 = liftIO $ dyn277 ptr_glIsProgram v1
+
+{-# NOINLINE ptr_glIsProgram #-}
+ptr_glIsProgram :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsProgram = unsafePerformIO $ getCommand "glIsProgram"
+
+-- glIsProgramARB --------------------------------------------------------------
+
+glIsProgramARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsProgramARB v1 = liftIO $ dyn277 ptr_glIsProgramARB v1
+
+{-# NOINLINE ptr_glIsProgramARB #-}
+ptr_glIsProgramARB :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsProgramARB = unsafePerformIO $ getCommand "glIsProgramARB"
+
+-- glIsProgramNV ---------------------------------------------------------------
+
+-- | This command is an alias for 'glIsProgramARB'.
+glIsProgramNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsProgramNV v1 = liftIO $ dyn277 ptr_glIsProgramNV v1
+
+{-# NOINLINE ptr_glIsProgramNV #-}
+ptr_glIsProgramNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsProgramNV = unsafePerformIO $ getCommand "glIsProgramNV"
+
+-- glIsProgramPipeline ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsProgramPipeline.xhtml OpenGL 4.x>.
+glIsProgramPipeline
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsProgramPipeline v1 = liftIO $ dyn277 ptr_glIsProgramPipeline v1
+
+{-# NOINLINE ptr_glIsProgramPipeline #-}
+ptr_glIsProgramPipeline :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsProgramPipeline = unsafePerformIO $ getCommand "glIsProgramPipeline"
+
+-- glIsProgramPipelineEXT ------------------------------------------------------
+
+glIsProgramPipelineEXT
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m GLboolean
+glIsProgramPipelineEXT v1 = liftIO $ dyn277 ptr_glIsProgramPipelineEXT v1
+
+{-# NOINLINE ptr_glIsProgramPipelineEXT #-}
+ptr_glIsProgramPipelineEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsProgramPipelineEXT = unsafePerformIO $ getCommand "glIsProgramPipelineEXT"
+
+-- glIsQuery -------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsQuery.xhtml OpenGL 4.x>.
+glIsQuery
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsQuery v1 = liftIO $ dyn277 ptr_glIsQuery v1
+
+{-# NOINLINE ptr_glIsQuery #-}
+ptr_glIsQuery :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsQuery = unsafePerformIO $ getCommand "glIsQuery"
+
+-- glIsQueryARB ----------------------------------------------------------------
+
+-- | This command is an alias for 'glIsQuery'.
+glIsQueryARB
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsQueryARB v1 = liftIO $ dyn277 ptr_glIsQueryARB v1
+
+{-# NOINLINE ptr_glIsQueryARB #-}
+ptr_glIsQueryARB :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsQueryARB = unsafePerformIO $ getCommand "glIsQueryARB"
+
+-- glIsQueryEXT ----------------------------------------------------------------
+
+glIsQueryEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean
+glIsQueryEXT v1 = liftIO $ dyn277 ptr_glIsQueryEXT v1
+
+{-# NOINLINE ptr_glIsQueryEXT #-}
+ptr_glIsQueryEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsQueryEXT = unsafePerformIO $ getCommand "glIsQueryEXT"
+
+-- glIsRenderbuffer ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsRenderbuffer.xhtml OpenGL 4.x>.
+glIsRenderbuffer
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsRenderbuffer v1 = liftIO $ dyn277 ptr_glIsRenderbuffer v1
+
+{-# NOINLINE ptr_glIsRenderbuffer #-}
+ptr_glIsRenderbuffer :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsRenderbuffer = unsafePerformIO $ getCommand "glIsRenderbuffer"
+
+-- glIsRenderbufferEXT ---------------------------------------------------------
+
+-- | This command is an alias for 'glIsRenderbuffer'.
+glIsRenderbufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsRenderbufferEXT v1 = liftIO $ dyn277 ptr_glIsRenderbufferEXT v1
+
+{-# NOINLINE ptr_glIsRenderbufferEXT #-}
+ptr_glIsRenderbufferEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsRenderbufferEXT = unsafePerformIO $ getCommand "glIsRenderbufferEXT"
+
+-- glIsRenderbufferOES ---------------------------------------------------------
+
+glIsRenderbufferOES
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@.
+  -> m GLboolean
+glIsRenderbufferOES v1 = liftIO $ dyn277 ptr_glIsRenderbufferOES v1
+
+{-# NOINLINE ptr_glIsRenderbufferOES #-}
+ptr_glIsRenderbufferOES :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsRenderbufferOES = unsafePerformIO $ getCommand "glIsRenderbufferOES"
+
+-- glIsSampler -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSampler.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSampler.xhtml OpenGL 4.x>.
+glIsSampler
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsSampler v1 = liftIO $ dyn277 ptr_glIsSampler v1
+
+{-# NOINLINE ptr_glIsSampler #-}
+ptr_glIsSampler :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsSampler = unsafePerformIO $ getCommand "glIsSampler"
+
+-- glIsSemaphoreEXT ------------------------------------------------------------
+
+glIsSemaphoreEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsSemaphoreEXT v1 = liftIO $ dyn277 ptr_glIsSemaphoreEXT v1
+
+{-# NOINLINE ptr_glIsSemaphoreEXT #-}
+ptr_glIsSemaphoreEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsSemaphoreEXT = unsafePerformIO $ getCommand "glIsSemaphoreEXT"
+
+-- glIsShader ------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsShader.xhtml OpenGL 4.x>.
+glIsShader
+  :: MonadIO m
+  => GLuint -- ^ @shader@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsShader v1 = liftIO $ dyn277 ptr_glIsShader v1
+
+{-# NOINLINE ptr_glIsShader #-}
+ptr_glIsShader :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsShader = unsafePerformIO $ getCommand "glIsShader"
+
+-- glIsStateNV -----------------------------------------------------------------
+
+glIsStateNV
+  :: MonadIO m
+  => GLuint -- ^ @state@.
+  -> m GLboolean
+glIsStateNV v1 = liftIO $ dyn277 ptr_glIsStateNV v1
+
+{-# NOINLINE ptr_glIsStateNV #-}
+ptr_glIsStateNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsStateNV = unsafePerformIO $ getCommand "glIsStateNV"
+
+-- glIsSync --------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSync.xhtml OpenGL 4.x>.
+glIsSync
+  :: MonadIO m
+  => GLsync -- ^ @sync@ of type @sync@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsSync v1 = liftIO $ dyn498 ptr_glIsSync v1
+
+{-# NOINLINE ptr_glIsSync #-}
+ptr_glIsSync :: FunPtr (GLsync -> IO GLboolean)
+ptr_glIsSync = unsafePerformIO $ getCommand "glIsSync"
+
+-- glIsSyncAPPLE ---------------------------------------------------------------
+
+-- | This command is an alias for 'glIsSync'.
+glIsSyncAPPLE
+  :: MonadIO m
+  => GLsync -- ^ @sync@.
+  -> m GLboolean
+glIsSyncAPPLE v1 = liftIO $ dyn498 ptr_glIsSyncAPPLE v1
+
+{-# NOINLINE ptr_glIsSyncAPPLE #-}
+ptr_glIsSyncAPPLE :: FunPtr (GLsync -> IO GLboolean)
+ptr_glIsSyncAPPLE = unsafePerformIO $ getCommand "glIsSyncAPPLE"
+
+-- glIsTexture -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsTexture.xhtml OpenGL 4.x>.
+glIsTexture
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsTexture v1 = liftIO $ dyn277 ptr_glIsTexture v1
+
+{-# NOINLINE ptr_glIsTexture #-}
+ptr_glIsTexture :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsTexture = unsafePerformIO $ getCommand "glIsTexture"
+
+-- glIsTextureEXT --------------------------------------------------------------
+
+glIsTextureEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsTextureEXT v1 = liftIO $ dyn277 ptr_glIsTextureEXT v1
+
+{-# NOINLINE ptr_glIsTextureEXT #-}
+ptr_glIsTextureEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsTextureEXT = unsafePerformIO $ getCommand "glIsTextureEXT"
+
+-- glIsTextureHandleResidentARB ------------------------------------------------
+
+glIsTextureHandleResidentARB
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m GLboolean
+glIsTextureHandleResidentARB v1 = liftIO $ dyn494 ptr_glIsTextureHandleResidentARB v1
+
+{-# NOINLINE ptr_glIsTextureHandleResidentARB #-}
+ptr_glIsTextureHandleResidentARB :: FunPtr (GLuint64 -> IO GLboolean)
+ptr_glIsTextureHandleResidentARB = unsafePerformIO $ getCommand "glIsTextureHandleResidentARB"
+
+-- glIsTextureHandleResidentNV -------------------------------------------------
+
+glIsTextureHandleResidentNV
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsTextureHandleResidentNV v1 = liftIO $ dyn494 ptr_glIsTextureHandleResidentNV v1
+
+{-# NOINLINE ptr_glIsTextureHandleResidentNV #-}
+ptr_glIsTextureHandleResidentNV :: FunPtr (GLuint64 -> IO GLboolean)
+ptr_glIsTextureHandleResidentNV = unsafePerformIO $ getCommand "glIsTextureHandleResidentNV"
+
+-- glIsTransformFeedback -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsTransformFeedback.xhtml OpenGL 4.x>.
+glIsTransformFeedback
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsTransformFeedback v1 = liftIO $ dyn277 ptr_glIsTransformFeedback v1
+
+{-# NOINLINE ptr_glIsTransformFeedback #-}
+ptr_glIsTransformFeedback :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsTransformFeedback = unsafePerformIO $ getCommand "glIsTransformFeedback"
+
+-- glIsTransformFeedbackNV -----------------------------------------------------
+
+-- | This command is an alias for 'glIsTransformFeedback'.
+glIsTransformFeedbackNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsTransformFeedbackNV v1 = liftIO $ dyn277 ptr_glIsTransformFeedbackNV v1
+
+{-# NOINLINE ptr_glIsTransformFeedbackNV #-}
+ptr_glIsTransformFeedbackNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsTransformFeedbackNV = unsafePerformIO $ getCommand "glIsTransformFeedbackNV"
+
+-- glIsVariantEnabledEXT -------------------------------------------------------
+
+glIsVariantEnabledEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @cap@ of type @VariantCapEXT@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVariantEnabledEXT v1 v2 = liftIO $ dyn499 ptr_glIsVariantEnabledEXT v1 v2
+
+{-# NOINLINE ptr_glIsVariantEnabledEXT #-}
+ptr_glIsVariantEnabledEXT :: FunPtr (GLuint -> GLenum -> IO GLboolean)
+ptr_glIsVariantEnabledEXT = unsafePerformIO $ getCommand "glIsVariantEnabledEXT"
+
+-- glIsVertexArray -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsVertexArray.xhtml OpenGL 4.x>.
+glIsVertexArray
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVertexArray v1 = liftIO $ dyn277 ptr_glIsVertexArray v1
+
+{-# NOINLINE ptr_glIsVertexArray #-}
+ptr_glIsVertexArray :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArray = unsafePerformIO $ getCommand "glIsVertexArray"
+
+-- glIsVertexArrayAPPLE --------------------------------------------------------
+
+-- | This command is an alias for 'glIsVertexArray'.
+glIsVertexArrayAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVertexArrayAPPLE v1 = liftIO $ dyn277 ptr_glIsVertexArrayAPPLE v1
+
+{-# NOINLINE ptr_glIsVertexArrayAPPLE #-}
+ptr_glIsVertexArrayAPPLE :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArrayAPPLE = unsafePerformIO $ getCommand "glIsVertexArrayAPPLE"
+
+-- glIsVertexArrayOES ----------------------------------------------------------
+
+-- | This command is an alias for 'glIsVertexArray'.
+glIsVertexArrayOES
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean
+glIsVertexArrayOES v1 = liftIO $ dyn277 ptr_glIsVertexArrayOES v1
+
+{-# NOINLINE ptr_glIsVertexArrayOES #-}
+ptr_glIsVertexArrayOES :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArrayOES = unsafePerformIO $ getCommand "glIsVertexArrayOES"
+
+-- glIsVertexAttribEnabledAPPLE ------------------------------------------------
+
+glIsVertexAttribEnabledAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @pname@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVertexAttribEnabledAPPLE v1 v2 = liftIO $ dyn499 ptr_glIsVertexAttribEnabledAPPLE v1 v2
+
+{-# NOINLINE ptr_glIsVertexAttribEnabledAPPLE #-}
+ptr_glIsVertexAttribEnabledAPPLE :: FunPtr (GLuint -> GLenum -> IO GLboolean)
+ptr_glIsVertexAttribEnabledAPPLE = unsafePerformIO $ getCommand "glIsVertexAttribEnabledAPPLE"
+
+-- glLGPUCopyImageSubDataNVX ---------------------------------------------------
+
+glLGPUCopyImageSubDataNVX
+  :: MonadIO m
+  => GLuint -- ^ @sourceGpu@.
+  -> GLbitfield -- ^ @destinationGpuMask@.
+  -> GLuint -- ^ @srcName@.
+  -> GLenum -- ^ @srcTarget@.
+  -> GLint -- ^ @srcLevel@.
+  -> GLint -- ^ @srcX@.
+  -> GLint -- ^ @srxY@.
+  -> GLint -- ^ @srcZ@.
+  -> GLuint -- ^ @dstName@.
+  -> GLenum -- ^ @dstTarget@.
+  -> GLint -- ^ @dstLevel@.
+  -> GLint -- ^ @dstX@.
+  -> GLint -- ^ @dstY@.
+  -> GLint -- ^ @dstZ@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> m ()
+glLGPUCopyImageSubDataNVX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 = liftIO $ dyn500 ptr_glLGPUCopyImageSubDataNVX v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17
+
+{-# NOINLINE ptr_glLGPUCopyImageSubDataNVX #-}
+ptr_glLGPUCopyImageSubDataNVX :: FunPtr (GLuint -> GLbitfield -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glLGPUCopyImageSubDataNVX = unsafePerformIO $ getCommand "glLGPUCopyImageSubDataNVX"
+
+-- glLGPUInterlockNVX ----------------------------------------------------------
+
+glLGPUInterlockNVX
+  :: MonadIO m
+  => m ()
+glLGPUInterlockNVX = liftIO $ dyn11 ptr_glLGPUInterlockNVX
+
+{-# NOINLINE ptr_glLGPUInterlockNVX #-}
+ptr_glLGPUInterlockNVX :: FunPtr (IO ())
+ptr_glLGPUInterlockNVX = unsafePerformIO $ getCommand "glLGPUInterlockNVX"
+
+-- glLGPUNamedBufferSubDataNVX -------------------------------------------------
+
+glLGPUNamedBufferSubDataNVX
+  :: MonadIO m
+  => GLbitfield -- ^ @gpuMask@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> Ptr a -- ^ @data@.
+  -> m ()
+glLGPUNamedBufferSubDataNVX v1 v2 v3 v4 v5 = liftIO $ dyn501 ptr_glLGPUNamedBufferSubDataNVX v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glLGPUNamedBufferSubDataNVX #-}
+ptr_glLGPUNamedBufferSubDataNVX :: FunPtr (GLbitfield -> GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glLGPUNamedBufferSubDataNVX = unsafePerformIO $ getCommand "glLGPUNamedBufferSubDataNVX"
+
+-- glLabelObjectEXT ------------------------------------------------------------
+
+glLabelObjectEXT
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @object@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @label@.
+  -> m ()
+glLabelObjectEXT v1 v2 v3 v4 = liftIO $ dyn502 ptr_glLabelObjectEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glLabelObjectEXT #-}
+ptr_glLabelObjectEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glLabelObjectEXT = unsafePerformIO $ getCommand "glLabelObjectEXT"
+
+-- glLightEnviSGIX -------------------------------------------------------------
+
+glLightEnviSGIX
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [LightEnvParameterSGIX](Graphics-GL-Groups.html#LightEnvParameterSGIX).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glLightEnviSGIX v1 v2 = liftIO $ dyn56 ptr_glLightEnviSGIX v1 v2
+
+{-# NOINLINE ptr_glLightEnviSGIX #-}
+ptr_glLightEnviSGIX :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glLightEnviSGIX = unsafePerformIO $ getCommand "glLightEnviSGIX"
+
+-- glLightModelf ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
+glLightModelf
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glLightModelf v1 v2 = liftIO $ dyn0 ptr_glLightModelf v1 v2
+
+{-# NOINLINE ptr_glLightModelf #-}
+ptr_glLightModelf :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glLightModelf = unsafePerformIO $ getCommand "glLightModelf"
+
+-- glLightModelfv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
+glLightModelfv
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glLightModelfv v1 v2 = liftIO $ dyn97 ptr_glLightModelfv v1 v2
+
+{-# NOINLINE ptr_glLightModelfv #-}
+ptr_glLightModelfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glLightModelfv = unsafePerformIO $ getCommand "glLightModelfv"
+
+-- glLightModeli ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
+glLightModeli
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
+  -> GLint -- ^ @param@.
+  -> m ()
+glLightModeli v1 v2 = liftIO $ dyn56 ptr_glLightModeli v1 v2
+
+{-# NOINLINE ptr_glLightModeli #-}
+ptr_glLightModeli :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glLightModeli = unsafePerformIO $ getCommand "glLightModeli"
+
+-- glLightModeliv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>.
+glLightModeliv
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [LightModelParameter](Graphics-GL-Groups.html#LightModelParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glLightModeliv v1 v2 = liftIO $ dyn139 ptr_glLightModeliv v1 v2
+
+{-# NOINLINE ptr_glLightModeliv #-}
+ptr_glLightModeliv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glLightModeliv = unsafePerformIO $ getCommand "glLightModeliv"
+
+-- glLightModelx ---------------------------------------------------------------
+
+glLightModelx
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glLightModelx v1 v2 = liftIO $ dyn1 ptr_glLightModelx v1 v2
+
+{-# NOINLINE ptr_glLightModelx #-}
+ptr_glLightModelx :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glLightModelx = unsafePerformIO $ getCommand "glLightModelx"
+
+-- glLightModelxOES ------------------------------------------------------------
+
+glLightModelxOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glLightModelxOES v1 v2 = liftIO $ dyn1 ptr_glLightModelxOES v1 v2
+
+{-# NOINLINE ptr_glLightModelxOES #-}
+ptr_glLightModelxOES :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glLightModelxOES = unsafePerformIO $ getCommand "glLightModelxOES"
+
+-- glLightModelxv --------------------------------------------------------------
+
+glLightModelxv
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glLightModelxv v1 v2 = liftIO $ dyn98 ptr_glLightModelxv v1 v2
+
+{-# NOINLINE ptr_glLightModelxv #-}
+ptr_glLightModelxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glLightModelxv = unsafePerformIO $ getCommand "glLightModelxv"
+
+-- glLightModelxvOES -----------------------------------------------------------
+
+glLightModelxvOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glLightModelxvOES v1 v2 = liftIO $ dyn98 ptr_glLightModelxvOES v1 v2
+
+{-# NOINLINE ptr_glLightModelxvOES #-}
+ptr_glLightModelxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glLightModelxvOES = unsafePerformIO $ getCommand "glLightModelxvOES"
+
+-- glLightf --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
+glLightf
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
+  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glLightf v1 v2 v3 = liftIO $ dyn164 ptr_glLightf v1 v2 v3
+
+{-# NOINLINE ptr_glLightf #-}
+ptr_glLightf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glLightf = unsafePerformIO $ getCommand "glLightf"
+
+-- glLightfv -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
+glLightfv
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
+  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glLightfv v1 v2 v3 = liftIO $ dyn135 ptr_glLightfv v1 v2 v3
+
+{-# NOINLINE ptr_glLightfv #-}
+ptr_glLightfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glLightfv = unsafePerformIO $ getCommand "glLightfv"
+
+-- glLighti --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
+glLighti
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
+  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glLighti v1 v2 v3 = liftIO $ dyn63 ptr_glLighti v1 v2 v3
+
+{-# NOINLINE ptr_glLighti #-}
+ptr_glLighti :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glLighti = unsafePerformIO $ getCommand "glLighti"
+
+-- glLightiv -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>.
+glLightiv
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
+  -> GLenum -- ^ @pname@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glLightiv v1 v2 v3 = liftIO $ dyn136 ptr_glLightiv v1 v2 v3
+
+{-# NOINLINE ptr_glLightiv #-}
+ptr_glLightiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glLightiv = unsafePerformIO $ getCommand "glLightiv"
+
+-- glLightx --------------------------------------------------------------------
+
+glLightx
+  :: MonadIO m
+  => GLenum -- ^ @light@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glLightx v1 v2 v3 = liftIO $ dyn165 ptr_glLightx v1 v2 v3
+
+{-# NOINLINE ptr_glLightx #-}
+ptr_glLightx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glLightx = unsafePerformIO $ getCommand "glLightx"
+
+-- glLightxOES -----------------------------------------------------------------
+
+glLightxOES
+  :: MonadIO m
+  => GLenum -- ^ @light@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glLightxOES v1 v2 v3 = liftIO $ dyn165 ptr_glLightxOES v1 v2 v3
+
+{-# NOINLINE ptr_glLightxOES #-}
+ptr_glLightxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glLightxOES = unsafePerformIO $ getCommand "glLightxOES"
+
+-- glLightxv -------------------------------------------------------------------
+
+glLightxv
+  :: MonadIO m
+  => GLenum -- ^ @light@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glLightxv v1 v2 v3 = liftIO $ dyn166 ptr_glLightxv v1 v2 v3
+
+{-# NOINLINE ptr_glLightxv #-}
+ptr_glLightxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glLightxv = unsafePerformIO $ getCommand "glLightxv"
+
+-- glLightxvOES ----------------------------------------------------------------
+
+glLightxvOES
+  :: MonadIO m
+  => GLenum -- ^ @light@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glLightxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glLightxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glLightxvOES #-}
+ptr_glLightxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glLightxvOES = unsafePerformIO $ getCommand "glLightxvOES"
+
+-- glLineStipple ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineStipple.xml OpenGL 2.x>.
+glLineStipple
+  :: MonadIO m
+  => GLint -- ^ @factor@ of type @CheckedInt32@.
+  -> GLushort -- ^ @pattern@ of type @LineStipple@.
+  -> m ()
+glLineStipple v1 v2 = liftIO $ dyn503 ptr_glLineStipple v1 v2
+
+{-# NOINLINE ptr_glLineStipple #-}
+ptr_glLineStipple :: FunPtr (GLint -> GLushort -> IO ())
+ptr_glLineStipple = unsafePerformIO $ getCommand "glLineStipple"
+
+-- glLineWidth -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineWidth.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLineWidth.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLineWidth.xhtml OpenGL 4.x>.
+glLineWidth
+  :: MonadIO m
+  => GLfloat -- ^ @width@ of type @CheckedFloat32@.
+  -> m ()
+glLineWidth v1 = liftIO $ dyn82 ptr_glLineWidth v1
+
+{-# NOINLINE ptr_glLineWidth #-}
+ptr_glLineWidth :: FunPtr (GLfloat -> IO ())
+ptr_glLineWidth = unsafePerformIO $ getCommand "glLineWidth"
+
+-- glLineWidthx ----------------------------------------------------------------
+
+glLineWidthx
+  :: MonadIO m
+  => GLfixed -- ^ @width@.
+  -> m ()
+glLineWidthx v1 = liftIO $ dyn84 ptr_glLineWidthx v1
+
+{-# NOINLINE ptr_glLineWidthx #-}
+ptr_glLineWidthx :: FunPtr (GLfixed -> IO ())
+ptr_glLineWidthx = unsafePerformIO $ getCommand "glLineWidthx"
+
+-- glLineWidthxOES -------------------------------------------------------------
+
+glLineWidthxOES
+  :: MonadIO m
+  => GLfixed -- ^ @width@.
+  -> m ()
+glLineWidthxOES v1 = liftIO $ dyn84 ptr_glLineWidthxOES v1
+
+{-# NOINLINE ptr_glLineWidthxOES #-}
+ptr_glLineWidthxOES :: FunPtr (GLfixed -> IO ())
+ptr_glLineWidthxOES = unsafePerformIO $ getCommand "glLineWidthxOES"
+
+-- glLinkProgram ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLinkProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLinkProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLinkProgram.xhtml OpenGL 4.x>.
+glLinkProgram
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> m ()
+glLinkProgram v1 = liftIO $ dyn3 ptr_glLinkProgram v1
+
+{-# NOINLINE ptr_glLinkProgram #-}
+ptr_glLinkProgram :: FunPtr (GLuint -> IO ())
+ptr_glLinkProgram = unsafePerformIO $ getCommand "glLinkProgram"
+
+-- glLinkProgramARB ------------------------------------------------------------
+
+-- | This command is an alias for 'glLinkProgram'.
+glLinkProgramARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
+  -> m ()
+glLinkProgramARB v1 = liftIO $ dyn140 ptr_glLinkProgramARB v1
+
+{-# NOINLINE ptr_glLinkProgramARB #-}
+ptr_glLinkProgramARB :: FunPtr (GLhandleARB -> IO ())
+ptr_glLinkProgramARB = unsafePerformIO $ getCommand "glLinkProgramARB"
+
+-- glListBase ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glListBase.xml OpenGL 2.x>.
+glListBase
+  :: MonadIO m
+  => GLuint -- ^ @base@ of type @List@.
+  -> m ()
+glListBase v1 = liftIO $ dyn3 ptr_glListBase v1
+
+{-# NOINLINE ptr_glListBase #-}
+ptr_glListBase :: FunPtr (GLuint -> IO ())
+ptr_glListBase = unsafePerformIO $ getCommand "glListBase"
+
+-- glListDrawCommandsStatesClientNV --------------------------------------------
+
+glListDrawCommandsStatesClientNV
+  :: MonadIO m
+  => GLuint -- ^ @list@.
+  -> GLuint -- ^ @segment@.
+  -> Ptr (Ptr a) -- ^ @indirects@.
+  -> Ptr GLsizei -- ^ @sizes@.
+  -> Ptr GLuint -- ^ @states@.
+  -> Ptr GLuint -- ^ @fbos@.
+  -> GLuint -- ^ @count@.
+  -> m ()
+glListDrawCommandsStatesClientNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn504 ptr_glListDrawCommandsStatesClientNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glListDrawCommandsStatesClientNV #-}
+ptr_glListDrawCommandsStatesClientNV :: FunPtr (GLuint -> GLuint -> Ptr (Ptr a) -> Ptr GLsizei -> Ptr GLuint -> Ptr GLuint -> GLuint -> IO ())
+ptr_glListDrawCommandsStatesClientNV = unsafePerformIO $ getCommand "glListDrawCommandsStatesClientNV"
+
+-- glListParameterfSGIX --------------------------------------------------------
+
+glListParameterfSGIX
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glListParameterfSGIX v1 v2 v3 = liftIO $ dyn505 ptr_glListParameterfSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glListParameterfSGIX #-}
+ptr_glListParameterfSGIX :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+ptr_glListParameterfSGIX = unsafePerformIO $ getCommand "glListParameterfSGIX"
+
+-- glListParameterfvSGIX -------------------------------------------------------
+
+glListParameterfvSGIX
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glListParameterfvSGIX v1 v2 v3 = liftIO $ dyn357 ptr_glListParameterfvSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glListParameterfvSGIX #-}
+ptr_glListParameterfvSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glListParameterfvSGIX = unsafePerformIO $ getCommand "glListParameterfvSGIX"
+
+-- glListParameteriSGIX --------------------------------------------------------
+
+glListParameteriSGIX
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glListParameteriSGIX v1 v2 v3 = liftIO $ dyn481 ptr_glListParameteriSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glListParameteriSGIX #-}
+ptr_glListParameteriSGIX :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glListParameteriSGIX = unsafePerformIO $ getCommand "glListParameteriSGIX"
+
+-- glListParameterivSGIX -------------------------------------------------------
+
+glListParameterivSGIX
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> GLenum -- ^ @pname@ of type [ListParameterName](Graphics-GL-Groups.html#ListParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glListParameterivSGIX v1 v2 v3 = liftIO $ dyn341 ptr_glListParameterivSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glListParameterivSGIX #-}
+ptr_glListParameterivSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glListParameterivSGIX = unsafePerformIO $ getCommand "glListParameterivSGIX"
+
+-- glLoadIdentity --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadIdentity.xml OpenGL 2.x>.
+glLoadIdentity
+  :: MonadIO m
+  => m ()
+glLoadIdentity = liftIO $ dyn11 ptr_glLoadIdentity
+
+{-# NOINLINE ptr_glLoadIdentity #-}
+ptr_glLoadIdentity :: FunPtr (IO ())
+ptr_glLoadIdentity = unsafePerformIO $ getCommand "glLoadIdentity"
+
+-- glLoadIdentityDeformationMapSGIX --------------------------------------------
+
+glLoadIdentityDeformationMapSGIX
+  :: MonadIO m
+  => GLbitfield -- ^ @mask@ of type [FfdMaskSGIX](Graphics-GL-Groups.html#FfdMaskSGIX).
+  -> m ()
+glLoadIdentityDeformationMapSGIX v1 = liftIO $ dyn72 ptr_glLoadIdentityDeformationMapSGIX v1
+
+{-# NOINLINE ptr_glLoadIdentityDeformationMapSGIX #-}
+ptr_glLoadIdentityDeformationMapSGIX :: FunPtr (GLbitfield -> IO ())
+ptr_glLoadIdentityDeformationMapSGIX = unsafePerformIO $ getCommand "glLoadIdentityDeformationMapSGIX"
+
+-- glLoadMatrixd ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>.
+glLoadMatrixd
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glLoadMatrixd v1 = liftIO $ dyn40 ptr_glLoadMatrixd v1
+
+{-# NOINLINE ptr_glLoadMatrixd #-}
+ptr_glLoadMatrixd :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glLoadMatrixd = unsafePerformIO $ getCommand "glLoadMatrixd"
+
+-- glLoadMatrixf ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>.
+glLoadMatrixf
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glLoadMatrixf v1 = liftIO $ dyn42 ptr_glLoadMatrixf v1
+
+{-# NOINLINE ptr_glLoadMatrixf #-}
+ptr_glLoadMatrixf :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glLoadMatrixf = unsafePerformIO $ getCommand "glLoadMatrixf"
+
+-- glLoadMatrixx ---------------------------------------------------------------
+
+glLoadMatrixx
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glLoadMatrixx v1 = liftIO $ dyn110 ptr_glLoadMatrixx v1
+
+{-# NOINLINE ptr_glLoadMatrixx #-}
+ptr_glLoadMatrixx :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glLoadMatrixx = unsafePerformIO $ getCommand "glLoadMatrixx"
+
+-- glLoadMatrixxOES ------------------------------------------------------------
+
+glLoadMatrixxOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glLoadMatrixxOES v1 = liftIO $ dyn110 ptr_glLoadMatrixxOES v1
+
+{-# NOINLINE ptr_glLoadMatrixxOES #-}
+ptr_glLoadMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glLoadMatrixxOES = unsafePerformIO $ getCommand "glLoadMatrixxOES"
+
+-- glLoadName ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadName.xml OpenGL 2.x>.
+glLoadName
+  :: MonadIO m
+  => GLuint -- ^ @name@ of type @SelectName@.
+  -> m ()
+glLoadName v1 = liftIO $ dyn3 ptr_glLoadName v1
+
+{-# NOINLINE ptr_glLoadName #-}
+ptr_glLoadName :: FunPtr (GLuint -> IO ())
+ptr_glLoadName = unsafePerformIO $ getCommand "glLoadName"
+
+-- glLoadPaletteFromModelViewMatrixOES -----------------------------------------
+
+glLoadPaletteFromModelViewMatrixOES
+  :: MonadIO m
+  => m ()
+glLoadPaletteFromModelViewMatrixOES = liftIO $ dyn11 ptr_glLoadPaletteFromModelViewMatrixOES
+
+{-# NOINLINE ptr_glLoadPaletteFromModelViewMatrixOES #-}
+ptr_glLoadPaletteFromModelViewMatrixOES :: FunPtr (IO ())
+ptr_glLoadPaletteFromModelViewMatrixOES = unsafePerformIO $ getCommand "glLoadPaletteFromModelViewMatrixOES"
+
+-- glLoadProgramNV -------------------------------------------------------------
+
+glLoadProgramNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @id@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr GLubyte -- ^ @program@ pointing to @len@ elements of type @GLubyte@.
+  -> m ()
+glLoadProgramNV v1 v2 v3 v4 = liftIO $ dyn506 ptr_glLoadProgramNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glLoadProgramNV #-}
+ptr_glLoadProgramNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
+ptr_glLoadProgramNV = unsafePerformIO $ getCommand "glLoadProgramNV"
+
+-- glLoadTransposeMatrixd ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>.
+glLoadTransposeMatrixd
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glLoadTransposeMatrixd v1 = liftIO $ dyn40 ptr_glLoadTransposeMatrixd v1
+
+{-# NOINLINE ptr_glLoadTransposeMatrixd #-}
+ptr_glLoadTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glLoadTransposeMatrixd = unsafePerformIO $ getCommand "glLoadTransposeMatrixd"
+
+-- glLoadTransposeMatrixdARB ---------------------------------------------------
+
+-- | This command is an alias for 'glLoadTransposeMatrixd'.
+glLoadTransposeMatrixdARB
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glLoadTransposeMatrixdARB v1 = liftIO $ dyn40 ptr_glLoadTransposeMatrixdARB v1
+
+{-# NOINLINE ptr_glLoadTransposeMatrixdARB #-}
+ptr_glLoadTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glLoadTransposeMatrixdARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixdARB"
+
+-- glLoadTransposeMatrixf ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>.
+glLoadTransposeMatrixf
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glLoadTransposeMatrixf v1 = liftIO $ dyn42 ptr_glLoadTransposeMatrixf v1
+
+{-# NOINLINE ptr_glLoadTransposeMatrixf #-}
+ptr_glLoadTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glLoadTransposeMatrixf = unsafePerformIO $ getCommand "glLoadTransposeMatrixf"
+
+-- glLoadTransposeMatrixfARB ---------------------------------------------------
+
+-- | This command is an alias for 'glLoadTransposeMatrixf'.
+glLoadTransposeMatrixfARB
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glLoadTransposeMatrixfARB v1 = liftIO $ dyn42 ptr_glLoadTransposeMatrixfARB v1
+
+{-# NOINLINE ptr_glLoadTransposeMatrixfARB #-}
+ptr_glLoadTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glLoadTransposeMatrixfARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixfARB"
+
+-- glLoadTransposeMatrixxOES ---------------------------------------------------
+
+glLoadTransposeMatrixxOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glLoadTransposeMatrixxOES v1 = liftIO $ dyn110 ptr_glLoadTransposeMatrixxOES v1
+
+{-# NOINLINE ptr_glLoadTransposeMatrixxOES #-}
+ptr_glLoadTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glLoadTransposeMatrixxOES = unsafePerformIO $ getCommand "glLoadTransposeMatrixxOES"
+
+-- glLockArraysEXT -------------------------------------------------------------
+
+glLockArraysEXT
+  :: MonadIO m
+  => GLint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> m ()
+glLockArraysEXT v1 v2 = liftIO $ dyn507 ptr_glLockArraysEXT v1 v2
+
+{-# NOINLINE ptr_glLockArraysEXT #-}
+ptr_glLockArraysEXT :: FunPtr (GLint -> GLsizei -> IO ())
+ptr_glLockArraysEXT = unsafePerformIO $ getCommand "glLockArraysEXT"
+
+-- glLogicOp -------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLogicOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLogicOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLogicOp.xhtml OpenGL 4.x>.
+glLogicOp
+  :: MonadIO m
+  => GLenum -- ^ @opcode@ of type [LogicOp](Graphics-GL-Groups.html#LogicOp).
+  -> m ()
+glLogicOp v1 = liftIO $ dyn5 ptr_glLogicOp v1
+
+{-# NOINLINE ptr_glLogicOp #-}
+ptr_glLogicOp :: FunPtr (GLenum -> IO ())
+ptr_glLogicOp = unsafePerformIO $ getCommand "glLogicOp"
+
+-- glMakeBufferNonResidentNV ---------------------------------------------------
+
+glMakeBufferNonResidentNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> m ()
+glMakeBufferNonResidentNV v1 = liftIO $ dyn5 ptr_glMakeBufferNonResidentNV v1
+
+{-# NOINLINE ptr_glMakeBufferNonResidentNV #-}
+ptr_glMakeBufferNonResidentNV :: FunPtr (GLenum -> IO ())
+ptr_glMakeBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeBufferNonResidentNV"
+
+-- glMakeBufferResidentNV ------------------------------------------------------
+
+glMakeBufferResidentNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @access@.
+  -> m ()
+glMakeBufferResidentNV v1 v2 = liftIO $ dyn52 ptr_glMakeBufferResidentNV v1 v2
+
+{-# NOINLINE ptr_glMakeBufferResidentNV #-}
+ptr_glMakeBufferResidentNV :: FunPtr (GLenum -> GLenum -> IO ())
+ptr_glMakeBufferResidentNV = unsafePerformIO $ getCommand "glMakeBufferResidentNV"
+
+-- glMakeImageHandleNonResidentARB ---------------------------------------------
+
+glMakeImageHandleNonResidentARB
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeImageHandleNonResidentARB v1 = liftIO $ dyn508 ptr_glMakeImageHandleNonResidentARB v1
+
+{-# NOINLINE ptr_glMakeImageHandleNonResidentARB #-}
+ptr_glMakeImageHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeImageHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentARB"
+
+-- glMakeImageHandleNonResidentNV ----------------------------------------------
+
+glMakeImageHandleNonResidentNV
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeImageHandleNonResidentNV v1 = liftIO $ dyn508 ptr_glMakeImageHandleNonResidentNV v1
+
+{-# NOINLINE ptr_glMakeImageHandleNonResidentNV #-}
+ptr_glMakeImageHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeImageHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentNV"
+
+-- glMakeImageHandleResidentARB ------------------------------------------------
+
+glMakeImageHandleResidentARB
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> GLenum -- ^ @access@.
+  -> m ()
+glMakeImageHandleResidentARB v1 v2 = liftIO $ dyn509 ptr_glMakeImageHandleResidentARB v1 v2
+
+{-# NOINLINE ptr_glMakeImageHandleResidentARB #-}
+ptr_glMakeImageHandleResidentARB :: FunPtr (GLuint64 -> GLenum -> IO ())
+ptr_glMakeImageHandleResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleResidentARB"
+
+-- glMakeImageHandleResidentNV -------------------------------------------------
+
+glMakeImageHandleResidentNV
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> GLenum -- ^ @access@.
+  -> m ()
+glMakeImageHandleResidentNV v1 v2 = liftIO $ dyn509 ptr_glMakeImageHandleResidentNV v1 v2
+
+{-# NOINLINE ptr_glMakeImageHandleResidentNV #-}
+ptr_glMakeImageHandleResidentNV :: FunPtr (GLuint64 -> GLenum -> IO ())
+ptr_glMakeImageHandleResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleResidentNV"
+
+-- glMakeNamedBufferNonResidentNV ----------------------------------------------
+
+glMakeNamedBufferNonResidentNV
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m ()
+glMakeNamedBufferNonResidentNV v1 = liftIO $ dyn3 ptr_glMakeNamedBufferNonResidentNV v1
+
+{-# NOINLINE ptr_glMakeNamedBufferNonResidentNV #-}
+ptr_glMakeNamedBufferNonResidentNV :: FunPtr (GLuint -> IO ())
+ptr_glMakeNamedBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferNonResidentNV"
+
+-- glMakeNamedBufferResidentNV -------------------------------------------------
+
+glMakeNamedBufferResidentNV
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @access@.
+  -> m ()
+glMakeNamedBufferResidentNV v1 v2 = liftIO $ dyn16 ptr_glMakeNamedBufferResidentNV v1 v2
+
+{-# NOINLINE ptr_glMakeNamedBufferResidentNV #-}
+ptr_glMakeNamedBufferResidentNV :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glMakeNamedBufferResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferResidentNV"
+
+-- glMakeTextureHandleNonResidentARB -------------------------------------------
+
+glMakeTextureHandleNonResidentARB
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeTextureHandleNonResidentARB v1 = liftIO $ dyn508 ptr_glMakeTextureHandleNonResidentARB v1
+
+{-# NOINLINE ptr_glMakeTextureHandleNonResidentARB #-}
+ptr_glMakeTextureHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeTextureHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentARB"
+
+-- glMakeTextureHandleNonResidentNV --------------------------------------------
+
+glMakeTextureHandleNonResidentNV
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeTextureHandleNonResidentNV v1 = liftIO $ dyn508 ptr_glMakeTextureHandleNonResidentNV v1
+
+{-# NOINLINE ptr_glMakeTextureHandleNonResidentNV #-}
+ptr_glMakeTextureHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeTextureHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentNV"
+
+-- glMakeTextureHandleResidentARB ----------------------------------------------
+
+glMakeTextureHandleResidentARB
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeTextureHandleResidentARB v1 = liftIO $ dyn508 ptr_glMakeTextureHandleResidentARB v1
+
+{-# NOINLINE ptr_glMakeTextureHandleResidentARB #-}
+ptr_glMakeTextureHandleResidentARB :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeTextureHandleResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleResidentARB"
+
+-- glMakeTextureHandleResidentNV -----------------------------------------------
+
+glMakeTextureHandleResidentNV
+  :: MonadIO m
+  => GLuint64 -- ^ @handle@.
+  -> m ()
+glMakeTextureHandleResidentNV v1 = liftIO $ dyn508 ptr_glMakeTextureHandleResidentNV v1
+
+{-# NOINLINE ptr_glMakeTextureHandleResidentNV #-}
+ptr_glMakeTextureHandleResidentNV :: FunPtr (GLuint64 -> IO ())
+ptr_glMakeTextureHandleResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleResidentNV"
+
+-- glMap1d ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>.
+glMap1d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> GLint -- ^ @stride@.
+  -> GLint -- ^ @order@ of type @CheckedInt32@.
+  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordD@.
+  -> m ()
+glMap1d v1 v2 v3 v4 v5 v6 = liftIO $ dyn510 ptr_glMap1d v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMap1d #-}
+ptr_glMap1d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+ptr_glMap1d = unsafePerformIO $ getCommand "glMap1d"
 
diff --git a/src/Graphics/GL/Functions/F16.hs b/src/Graphics/GL/Functions/F16.hs
--- a/src/Graphics/GL/Functions/F16.hs
+++ b/src/Graphics/GL/Functions/F16.hs
@@ -15,1560 +15,1602 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F16 (
-  glMapVertexAttrib2fAPPLE,
-  glMaterialf,
-  glMaterialfv,
-  glMateriali,
-  glMaterialiv,
-  glMaterialx,
-  glMaterialxOES,
-  glMaterialxv,
-  glMaterialxvOES,
-  glMatrixFrustumEXT,
-  glMatrixIndexPointerARB,
-  glMatrixIndexPointerOES,
-  glMatrixIndexubvARB,
-  glMatrixIndexuivARB,
-  glMatrixIndexusvARB,
-  glMatrixLoad3x2fNV,
-  glMatrixLoad3x3fNV,
-  glMatrixLoadIdentityEXT,
-  glMatrixLoadTranspose3x3fNV,
-  glMatrixLoadTransposedEXT,
-  glMatrixLoadTransposefEXT,
-  glMatrixLoaddEXT,
-  glMatrixLoadfEXT,
-  glMatrixMode,
-  glMatrixMult3x2fNV,
-  glMatrixMult3x3fNV,
-  glMatrixMultTranspose3x3fNV,
-  glMatrixMultTransposedEXT,
-  glMatrixMultTransposefEXT,
-  glMatrixMultdEXT,
-  glMatrixMultfEXT,
-  glMatrixOrthoEXT,
-  glMatrixPopEXT,
-  glMatrixPushEXT,
-  glMatrixRotatedEXT,
-  glMatrixRotatefEXT,
-  glMatrixScaledEXT,
-  glMatrixScalefEXT,
-  glMatrixTranslatedEXT,
-  glMatrixTranslatefEXT,
-  glMaxShaderCompilerThreadsARB,
-  glMemoryBarrier,
-  glMemoryBarrierByRegion,
-  glMemoryBarrierEXT,
-  glMinSampleShading,
-  glMinSampleShadingARB,
-  glMinSampleShadingOES,
-  glMinmax,
-  glMinmaxEXT,
-  glMultMatrixd,
-  glMultMatrixf,
-  glMultMatrixx,
-  glMultMatrixxOES,
-  glMultTransposeMatrixd,
-  glMultTransposeMatrixdARB,
-  glMultTransposeMatrixf,
-  glMultTransposeMatrixfARB,
-  glMultTransposeMatrixxOES,
-  glMultiDrawArrays,
-  glMultiDrawArraysEXT,
-  glMultiDrawArraysIndirect,
-  glMultiDrawArraysIndirectAMD,
-  glMultiDrawArraysIndirectBindlessCountNV,
-  glMultiDrawArraysIndirectBindlessNV,
-  glMultiDrawArraysIndirectCountARB,
-  glMultiDrawArraysIndirectEXT,
-  glMultiDrawElementArrayAPPLE,
-  glMultiDrawElements,
-  glMultiDrawElementsBaseVertex,
-  glMultiDrawElementsBaseVertexEXT,
-  glMultiDrawElementsBaseVertexOES,
-  glMultiDrawElementsEXT,
-  glMultiDrawElementsIndirect,
-  glMultiDrawElementsIndirectAMD,
-  glMultiDrawElementsIndirectBindlessCountNV,
-  glMultiDrawElementsIndirectBindlessNV,
-  glMultiDrawElementsIndirectCountARB,
-  glMultiDrawElementsIndirectEXT,
-  glMultiDrawRangeElementArrayAPPLE,
-  glMultiModeDrawArraysIBM,
-  glMultiModeDrawElementsIBM,
-  glMultiTexBufferEXT,
-  glMultiTexCoord1bOES,
-  glMultiTexCoord1bvOES,
-  glMultiTexCoord1d,
-  glMultiTexCoord1dARB,
-  glMultiTexCoord1dv,
-  glMultiTexCoord1dvARB,
-  glMultiTexCoord1f,
-  glMultiTexCoord1fARB,
-  glMultiTexCoord1fv,
-  glMultiTexCoord1fvARB,
-  glMultiTexCoord1hNV,
-  glMultiTexCoord1hvNV,
-  glMultiTexCoord1i,
-  glMultiTexCoord1iARB,
-  glMultiTexCoord1iv,
-  glMultiTexCoord1ivARB,
-  glMultiTexCoord1s,
-  glMultiTexCoord1sARB
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glMapVertexAttrib2fAPPLE ----------------------------------------------------
-
-glMapVertexAttrib2fAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @size@.
-  -> GLfloat -- ^ @u1@ of type @CoordF@.
-  -> GLfloat -- ^ @u2@ of type @CoordF@.
-  -> GLint -- ^ @ustride@.
-  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
-  -> GLfloat -- ^ @v1@ of type @CoordF@.
-  -> GLfloat -- ^ @v2@ of type @CoordF@.
-  -> GLint -- ^ @vstride@.
-  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
-  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
-  -> m ()
-glMapVertexAttrib2fAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn517 ptr_glMapVertexAttrib2fAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glMapVertexAttrib2fAPPLE #-}
-ptr_glMapVertexAttrib2fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
-ptr_glMapVertexAttrib2fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2fAPPLE"
-
--- glMaterialf -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
-glMaterialf
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glMaterialf v1 v2 v3 = liftIO $ dyn161 ptr_glMaterialf v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialf #-}
-ptr_glMaterialf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glMaterialf = unsafePerformIO $ getCommand "glMaterialf"
-
--- glMaterialfv ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
-glMaterialfv
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glMaterialfv v1 v2 v3 = liftIO $ dyn132 ptr_glMaterialfv v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialfv #-}
-ptr_glMaterialfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glMaterialfv = unsafePerformIO $ getCommand "glMaterialfv"
-
--- glMateriali -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
-glMateriali
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glMateriali v1 v2 v3 = liftIO $ dyn62 ptr_glMateriali v1 v2 v3
-
-{-# NOINLINE ptr_glMateriali #-}
-ptr_glMateriali :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glMateriali = unsafePerformIO $ getCommand "glMateriali"
-
--- glMaterialiv ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
-glMaterialiv
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMaterialiv v1 v2 v3 = liftIO $ dyn133 ptr_glMaterialiv v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialiv #-}
-ptr_glMaterialiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMaterialiv = unsafePerformIO $ getCommand "glMaterialiv"
-
--- glMaterialx -----------------------------------------------------------------
-
-glMaterialx
-  :: MonadIO m
-  => GLenum -- ^ @face@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glMaterialx v1 v2 v3 = liftIO $ dyn162 ptr_glMaterialx v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialx #-}
-ptr_glMaterialx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glMaterialx = unsafePerformIO $ getCommand "glMaterialx"
-
--- glMaterialxOES --------------------------------------------------------------
-
-glMaterialxOES
-  :: MonadIO m
-  => GLenum -- ^ @face@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glMaterialxOES v1 v2 v3 = liftIO $ dyn162 ptr_glMaterialxOES v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialxOES #-}
-ptr_glMaterialxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glMaterialxOES = unsafePerformIO $ getCommand "glMaterialxOES"
-
--- glMaterialxv ----------------------------------------------------------------
-
-glMaterialxv
-  :: MonadIO m
-  => GLenum -- ^ @face@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glMaterialxv v1 v2 v3 = liftIO $ dyn163 ptr_glMaterialxv v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialxv #-}
-ptr_glMaterialxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glMaterialxv = unsafePerformIO $ getCommand "glMaterialxv"
-
--- glMaterialxvOES -------------------------------------------------------------
-
-glMaterialxvOES
-  :: MonadIO m
-  => GLenum -- ^ @face@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glMaterialxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glMaterialxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glMaterialxvOES #-}
-ptr_glMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glMaterialxvOES = unsafePerformIO $ getCommand "glMaterialxvOES"
-
--- glMatrixFrustumEXT ----------------------------------------------------------
-
-glMatrixFrustumEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @left@.
-  -> GLdouble -- ^ @right@.
-  -> GLdouble -- ^ @bottom@.
-  -> GLdouble -- ^ @top@.
-  -> GLdouble -- ^ @zNear@.
-  -> GLdouble -- ^ @zFar@.
-  -> m ()
-glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn518 ptr_glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMatrixFrustumEXT #-}
-ptr_glMatrixFrustumEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixFrustumEXT = unsafePerformIO $ getCommand "glMatrixFrustumEXT"
-
--- glMatrixIndexPointerARB -----------------------------------------------------
-
-glMatrixIndexPointerARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @MatrixIndexPointerTypeARB@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glMatrixIndexPointerARB v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixIndexPointerARB #-}
-ptr_glMatrixIndexPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glMatrixIndexPointerARB = unsafePerformIO $ getCommand "glMatrixIndexPointerARB"
-
--- glMatrixIndexPointerOES -----------------------------------------------------
-
-glMatrixIndexPointerOES
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glMatrixIndexPointerOES v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixIndexPointerOES #-}
-ptr_glMatrixIndexPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glMatrixIndexPointerOES = unsafePerformIO $ getCommand "glMatrixIndexPointerOES"
-
--- glMatrixIndexubvARB ---------------------------------------------------------
-
-glMatrixIndexubvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLubyte -- ^ @indices@ pointing to @size@ elements of type @GLubyte@.
-  -> m ()
-glMatrixIndexubvARB v1 v2 = liftIO $ dyn519 ptr_glMatrixIndexubvARB v1 v2
-
-{-# NOINLINE ptr_glMatrixIndexubvARB #-}
-ptr_glMatrixIndexubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
-ptr_glMatrixIndexubvARB = unsafePerformIO $ getCommand "glMatrixIndexubvARB"
-
--- glMatrixIndexuivARB ---------------------------------------------------------
-
-glMatrixIndexuivARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLuint -- ^ @indices@ pointing to @size@ elements of type @GLuint@.
-  -> m ()
-glMatrixIndexuivARB v1 v2 = liftIO $ dyn520 ptr_glMatrixIndexuivARB v1 v2
-
-{-# NOINLINE ptr_glMatrixIndexuivARB #-}
-ptr_glMatrixIndexuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
-ptr_glMatrixIndexuivARB = unsafePerformIO $ getCommand "glMatrixIndexuivARB"
-
--- glMatrixIndexusvARB ---------------------------------------------------------
-
-glMatrixIndexusvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLushort -- ^ @indices@ pointing to @size@ elements of type @GLushort@.
-  -> m ()
-glMatrixIndexusvARB v1 v2 = liftIO $ dyn521 ptr_glMatrixIndexusvARB v1 v2
-
-{-# NOINLINE ptr_glMatrixIndexusvARB #-}
-ptr_glMatrixIndexusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
-ptr_glMatrixIndexusvARB = unsafePerformIO $ getCommand "glMatrixIndexusvARB"
-
--- glMatrixLoad3x2fNV ----------------------------------------------------------
-
-glMatrixLoad3x2fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixLoad3x2fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixLoad3x2fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixLoad3x2fNV #-}
-ptr_glMatrixLoad3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixLoad3x2fNV = unsafePerformIO $ getCommand "glMatrixLoad3x2fNV"
-
--- glMatrixLoad3x3fNV ----------------------------------------------------------
-
-glMatrixLoad3x3fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixLoad3x3fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixLoad3x3fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixLoad3x3fNV #-}
-ptr_glMatrixLoad3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixLoad3x3fNV = unsafePerformIO $ getCommand "glMatrixLoad3x3fNV"
-
--- glMatrixLoadIdentityEXT -----------------------------------------------------
-
-glMatrixLoadIdentityEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> m ()
-glMatrixLoadIdentityEXT v1 = liftIO $ dyn4 ptr_glMatrixLoadIdentityEXT v1
-
-{-# NOINLINE ptr_glMatrixLoadIdentityEXT #-}
-ptr_glMatrixLoadIdentityEXT :: FunPtr (GLenum -> IO ())
-ptr_glMatrixLoadIdentityEXT = unsafePerformIO $ getCommand "glMatrixLoadIdentityEXT"
-
--- glMatrixLoadTranspose3x3fNV -------------------------------------------------
-
-glMatrixLoadTranspose3x3fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixLoadTranspose3x3fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixLoadTranspose3x3fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixLoadTranspose3x3fNV #-}
-ptr_glMatrixLoadTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixLoadTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixLoadTranspose3x3fNV"
-
--- glMatrixLoadTransposedEXT ---------------------------------------------------
-
-glMatrixLoadTransposedEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMatrixLoadTransposedEXT v1 v2 = liftIO $ dyn93 ptr_glMatrixLoadTransposedEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixLoadTransposedEXT #-}
-ptr_glMatrixLoadTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMatrixLoadTransposedEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposedEXT"
-
--- glMatrixLoadTransposefEXT ---------------------------------------------------
-
-glMatrixLoadTransposefEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMatrixLoadTransposefEXT v1 v2 = liftIO $ dyn94 ptr_glMatrixLoadTransposefEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixLoadTransposefEXT #-}
-ptr_glMatrixLoadTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixLoadTransposefEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposefEXT"
-
--- glMatrixLoaddEXT ------------------------------------------------------------
-
-glMatrixLoaddEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMatrixLoaddEXT v1 v2 = liftIO $ dyn93 ptr_glMatrixLoaddEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixLoaddEXT #-}
-ptr_glMatrixLoaddEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMatrixLoaddEXT = unsafePerformIO $ getCommand "glMatrixLoaddEXT"
-
--- glMatrixLoadfEXT ------------------------------------------------------------
-
-glMatrixLoadfEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMatrixLoadfEXT v1 v2 = liftIO $ dyn94 ptr_glMatrixLoadfEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixLoadfEXT #-}
-ptr_glMatrixLoadfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixLoadfEXT = unsafePerformIO $ getCommand "glMatrixLoadfEXT"
-
--- glMatrixMode ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMatrixMode.xml OpenGL 2.x>.
-glMatrixMode
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> m ()
-glMatrixMode v1 = liftIO $ dyn4 ptr_glMatrixMode v1
-
-{-# NOINLINE ptr_glMatrixMode #-}
-ptr_glMatrixMode :: FunPtr (GLenum -> IO ())
-ptr_glMatrixMode = unsafePerformIO $ getCommand "glMatrixMode"
-
--- glMatrixMult3x2fNV ----------------------------------------------------------
-
-glMatrixMult3x2fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixMult3x2fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixMult3x2fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixMult3x2fNV #-}
-ptr_glMatrixMult3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixMult3x2fNV = unsafePerformIO $ getCommand "glMatrixMult3x2fNV"
-
--- glMatrixMult3x3fNV ----------------------------------------------------------
-
-glMatrixMult3x3fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixMult3x3fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixMult3x3fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixMult3x3fNV #-}
-ptr_glMatrixMult3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixMult3x3fNV = unsafePerformIO $ getCommand "glMatrixMult3x3fNV"
-
--- glMatrixMultTranspose3x3fNV -------------------------------------------------
-
-glMatrixMultTranspose3x3fNV
-  :: MonadIO m
-  => GLenum -- ^ @matrixMode@.
-  -> Ptr GLfloat -- ^ @m@.
-  -> m ()
-glMatrixMultTranspose3x3fNV v1 v2 = liftIO $ dyn94 ptr_glMatrixMultTranspose3x3fNV v1 v2
-
-{-# NOINLINE ptr_glMatrixMultTranspose3x3fNV #-}
-ptr_glMatrixMultTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixMultTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixMultTranspose3x3fNV"
-
--- glMatrixMultTransposedEXT ---------------------------------------------------
-
-glMatrixMultTransposedEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMatrixMultTransposedEXT v1 v2 = liftIO $ dyn93 ptr_glMatrixMultTransposedEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixMultTransposedEXT #-}
-ptr_glMatrixMultTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMatrixMultTransposedEXT = unsafePerformIO $ getCommand "glMatrixMultTransposedEXT"
-
--- glMatrixMultTransposefEXT ---------------------------------------------------
-
-glMatrixMultTransposefEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMatrixMultTransposefEXT v1 v2 = liftIO $ dyn94 ptr_glMatrixMultTransposefEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixMultTransposefEXT #-}
-ptr_glMatrixMultTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixMultTransposefEXT = unsafePerformIO $ getCommand "glMatrixMultTransposefEXT"
-
--- glMatrixMultdEXT ------------------------------------------------------------
-
-glMatrixMultdEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMatrixMultdEXT v1 v2 = liftIO $ dyn93 ptr_glMatrixMultdEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixMultdEXT #-}
-ptr_glMatrixMultdEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMatrixMultdEXT = unsafePerformIO $ getCommand "glMatrixMultdEXT"
-
--- glMatrixMultfEXT ------------------------------------------------------------
-
-glMatrixMultfEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMatrixMultfEXT v1 v2 = liftIO $ dyn94 ptr_glMatrixMultfEXT v1 v2
-
-{-# NOINLINE ptr_glMatrixMultfEXT #-}
-ptr_glMatrixMultfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMatrixMultfEXT = unsafePerformIO $ getCommand "glMatrixMultfEXT"
-
--- glMatrixOrthoEXT ------------------------------------------------------------
-
-glMatrixOrthoEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @left@.
-  -> GLdouble -- ^ @right@.
-  -> GLdouble -- ^ @bottom@.
-  -> GLdouble -- ^ @top@.
-  -> GLdouble -- ^ @zNear@.
-  -> GLdouble -- ^ @zFar@.
-  -> m ()
-glMatrixOrthoEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn518 ptr_glMatrixOrthoEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMatrixOrthoEXT #-}
-ptr_glMatrixOrthoEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixOrthoEXT = unsafePerformIO $ getCommand "glMatrixOrthoEXT"
-
--- glMatrixPopEXT --------------------------------------------------------------
-
-glMatrixPopEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> m ()
-glMatrixPopEXT v1 = liftIO $ dyn4 ptr_glMatrixPopEXT v1
-
-{-# NOINLINE ptr_glMatrixPopEXT #-}
-ptr_glMatrixPopEXT :: FunPtr (GLenum -> IO ())
-ptr_glMatrixPopEXT = unsafePerformIO $ getCommand "glMatrixPopEXT"
-
--- glMatrixPushEXT -------------------------------------------------------------
-
-glMatrixPushEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> m ()
-glMatrixPushEXT v1 = liftIO $ dyn4 ptr_glMatrixPushEXT v1
-
-{-# NOINLINE ptr_glMatrixPushEXT #-}
-ptr_glMatrixPushEXT :: FunPtr (GLenum -> IO ())
-ptr_glMatrixPushEXT = unsafePerformIO $ getCommand "glMatrixPushEXT"
-
--- glMatrixRotatedEXT ----------------------------------------------------------
-
-glMatrixRotatedEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @angle@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glMatrixRotatedEXT v1 v2 v3 v4 v5 = liftIO $ dyn522 ptr_glMatrixRotatedEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMatrixRotatedEXT #-}
-ptr_glMatrixRotatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixRotatedEXT = unsafePerformIO $ getCommand "glMatrixRotatedEXT"
-
--- glMatrixRotatefEXT ----------------------------------------------------------
-
-glMatrixRotatefEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLfloat -- ^ @angle@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glMatrixRotatefEXT v1 v2 v3 v4 v5 = liftIO $ dyn523 ptr_glMatrixRotatefEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMatrixRotatefEXT #-}
-ptr_glMatrixRotatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMatrixRotatefEXT = unsafePerformIO $ getCommand "glMatrixRotatefEXT"
-
--- glMatrixScaledEXT -----------------------------------------------------------
-
-glMatrixScaledEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glMatrixScaledEXT v1 v2 v3 v4 = liftIO $ dyn524 ptr_glMatrixScaledEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixScaledEXT #-}
-ptr_glMatrixScaledEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixScaledEXT = unsafePerformIO $ getCommand "glMatrixScaledEXT"
-
--- glMatrixScalefEXT -----------------------------------------------------------
-
-glMatrixScalefEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glMatrixScalefEXT v1 v2 v3 v4 = liftIO $ dyn525 ptr_glMatrixScalefEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixScalefEXT #-}
-ptr_glMatrixScalefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMatrixScalefEXT = unsafePerformIO $ getCommand "glMatrixScalefEXT"
-
--- glMatrixTranslatedEXT -------------------------------------------------------
-
-glMatrixTranslatedEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glMatrixTranslatedEXT v1 v2 v3 v4 = liftIO $ dyn524 ptr_glMatrixTranslatedEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixTranslatedEXT #-}
-ptr_glMatrixTranslatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixTranslatedEXT = unsafePerformIO $ getCommand "glMatrixTranslatedEXT"
-
--- glMatrixTranslatefEXT -------------------------------------------------------
-
-glMatrixTranslatefEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glMatrixTranslatefEXT v1 v2 v3 v4 = liftIO $ dyn525 ptr_glMatrixTranslatefEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixTranslatefEXT #-}
-ptr_glMatrixTranslatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMatrixTranslatefEXT = unsafePerformIO $ getCommand "glMatrixTranslatefEXT"
-
--- glMaxShaderCompilerThreadsARB -----------------------------------------------
-
-glMaxShaderCompilerThreadsARB
-  :: MonadIO m
-  => GLuint -- ^ @count@.
-  -> m ()
-glMaxShaderCompilerThreadsARB v1 = liftIO $ dyn2 ptr_glMaxShaderCompilerThreadsARB v1
-
-{-# NOINLINE ptr_glMaxShaderCompilerThreadsARB #-}
-ptr_glMaxShaderCompilerThreadsARB :: FunPtr (GLuint -> IO ())
-ptr_glMaxShaderCompilerThreadsARB = unsafePerformIO $ getCommand "glMaxShaderCompilerThreadsARB"
-
--- glMemoryBarrier -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>.
-glMemoryBarrier
-  :: MonadIO m
-  => GLbitfield -- ^ @barriers@.
-  -> m ()
-glMemoryBarrier v1 = liftIO $ dyn69 ptr_glMemoryBarrier v1
-
-{-# NOINLINE ptr_glMemoryBarrier #-}
-ptr_glMemoryBarrier :: FunPtr (GLbitfield -> IO ())
-ptr_glMemoryBarrier = unsafePerformIO $ getCommand "glMemoryBarrier"
-
--- glMemoryBarrierByRegion -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>.
-glMemoryBarrierByRegion
-  :: MonadIO m
-  => GLbitfield -- ^ @barriers@.
-  -> m ()
-glMemoryBarrierByRegion v1 = liftIO $ dyn69 ptr_glMemoryBarrierByRegion v1
-
-{-# NOINLINE ptr_glMemoryBarrierByRegion #-}
-ptr_glMemoryBarrierByRegion :: FunPtr (GLbitfield -> IO ())
-ptr_glMemoryBarrierByRegion = unsafePerformIO $ getCommand "glMemoryBarrierByRegion"
-
--- glMemoryBarrierEXT ----------------------------------------------------------
-
--- | This command is an alias for 'glMemoryBarrier'.
-glMemoryBarrierEXT
-  :: MonadIO m
-  => GLbitfield -- ^ @barriers@.
-  -> m ()
-glMemoryBarrierEXT v1 = liftIO $ dyn69 ptr_glMemoryBarrierEXT v1
-
-{-# NOINLINE ptr_glMemoryBarrierEXT #-}
-ptr_glMemoryBarrierEXT :: FunPtr (GLbitfield -> IO ())
-ptr_glMemoryBarrierEXT = unsafePerformIO $ getCommand "glMemoryBarrierEXT"
-
--- glMinSampleShading ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMinSampleShading.xhtml OpenGL 4.x>.
-glMinSampleShading
-  :: MonadIO m
-  => GLfloat -- ^ @value@ of type @ColorF@.
-  -> m ()
-glMinSampleShading v1 = liftIO $ dyn79 ptr_glMinSampleShading v1
-
-{-# NOINLINE ptr_glMinSampleShading #-}
-ptr_glMinSampleShading :: FunPtr (GLfloat -> IO ())
-ptr_glMinSampleShading = unsafePerformIO $ getCommand "glMinSampleShading"
-
--- glMinSampleShadingARB -------------------------------------------------------
-
--- | This command is an alias for 'glMinSampleShading'.
-glMinSampleShadingARB
-  :: MonadIO m
-  => GLfloat -- ^ @value@ of type @ColorF@.
-  -> m ()
-glMinSampleShadingARB v1 = liftIO $ dyn79 ptr_glMinSampleShadingARB v1
-
-{-# NOINLINE ptr_glMinSampleShadingARB #-}
-ptr_glMinSampleShadingARB :: FunPtr (GLfloat -> IO ())
-ptr_glMinSampleShadingARB = unsafePerformIO $ getCommand "glMinSampleShadingARB"
-
--- glMinSampleShadingOES -------------------------------------------------------
-
--- | This command is an alias for 'glMinSampleShading'.
-glMinSampleShadingOES
-  :: MonadIO m
-  => GLfloat -- ^ @value@ of type @ColorF@.
-  -> m ()
-glMinSampleShadingOES v1 = liftIO $ dyn79 ptr_glMinSampleShadingOES v1
-
-{-# NOINLINE ptr_glMinSampleShadingOES #-}
-ptr_glMinSampleShadingOES :: FunPtr (GLfloat -> IO ())
-ptr_glMinSampleShadingOES = unsafePerformIO $ getCommand "glMinSampleShadingOES"
-
--- glMinmax --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMinmax.xml OpenGL 2.x>.
-glMinmax
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @MinmaxTarget@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glMinmax v1 v2 v3 = liftIO $ dyn526 ptr_glMinmax v1 v2 v3
-
-{-# NOINLINE ptr_glMinmax #-}
-ptr_glMinmax :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
-ptr_glMinmax = unsafePerformIO $ getCommand "glMinmax"
-
--- glMinmaxEXT -----------------------------------------------------------------
-
--- | This command is an alias for 'glMinmax'.
-glMinmaxEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MinmaxTargetEXT](Graphics-GL-Groups.html#MinmaxTargetEXT).
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glMinmaxEXT v1 v2 v3 = liftIO $ dyn526 ptr_glMinmaxEXT v1 v2 v3
-
-{-# NOINLINE ptr_glMinmaxEXT #-}
-ptr_glMinmaxEXT :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
-ptr_glMinmaxEXT = unsafePerformIO $ getCommand "glMinmaxEXT"
-
--- glMultMatrixd ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>.
-glMultMatrixd
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMultMatrixd v1 = liftIO $ dyn39 ptr_glMultMatrixd v1
-
-{-# NOINLINE ptr_glMultMatrixd #-}
-ptr_glMultMatrixd :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glMultMatrixd = unsafePerformIO $ getCommand "glMultMatrixd"
-
--- glMultMatrixf ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>.
-glMultMatrixf
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMultMatrixf v1 = liftIO $ dyn41 ptr_glMultMatrixf v1
-
-{-# NOINLINE ptr_glMultMatrixf #-}
-ptr_glMultMatrixf :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glMultMatrixf = unsafePerformIO $ getCommand "glMultMatrixf"
-
--- glMultMatrixx ---------------------------------------------------------------
-
-glMultMatrixx
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glMultMatrixx v1 = liftIO $ dyn107 ptr_glMultMatrixx v1
-
-{-# NOINLINE ptr_glMultMatrixx #-}
-ptr_glMultMatrixx :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glMultMatrixx = unsafePerformIO $ getCommand "glMultMatrixx"
-
--- glMultMatrixxOES ------------------------------------------------------------
-
-glMultMatrixxOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glMultMatrixxOES v1 = liftIO $ dyn107 ptr_glMultMatrixxOES v1
-
-{-# NOINLINE ptr_glMultMatrixxOES #-}
-ptr_glMultMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glMultMatrixxOES = unsafePerformIO $ getCommand "glMultMatrixxOES"
-
--- glMultTransposeMatrixd ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>.
-glMultTransposeMatrixd
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMultTransposeMatrixd v1 = liftIO $ dyn39 ptr_glMultTransposeMatrixd v1
-
-{-# NOINLINE ptr_glMultTransposeMatrixd #-}
-ptr_glMultTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glMultTransposeMatrixd = unsafePerformIO $ getCommand "glMultTransposeMatrixd"
-
--- glMultTransposeMatrixdARB ---------------------------------------------------
-
--- | This command is an alias for 'glMultTransposeMatrixd'.
-glMultTransposeMatrixdARB
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
-  -> m ()
-glMultTransposeMatrixdARB v1 = liftIO $ dyn39 ptr_glMultTransposeMatrixdARB v1
-
-{-# NOINLINE ptr_glMultTransposeMatrixdARB #-}
-ptr_glMultTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glMultTransposeMatrixdARB = unsafePerformIO $ getCommand "glMultTransposeMatrixdARB"
-
--- glMultTransposeMatrixf ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>.
-glMultTransposeMatrixf
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMultTransposeMatrixf v1 = liftIO $ dyn41 ptr_glMultTransposeMatrixf v1
-
-{-# NOINLINE ptr_glMultTransposeMatrixf #-}
-ptr_glMultTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glMultTransposeMatrixf = unsafePerformIO $ getCommand "glMultTransposeMatrixf"
-
--- glMultTransposeMatrixfARB ---------------------------------------------------
-
--- | This command is an alias for 'glMultTransposeMatrixf'.
-glMultTransposeMatrixfARB
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
-  -> m ()
-glMultTransposeMatrixfARB v1 = liftIO $ dyn41 ptr_glMultTransposeMatrixfARB v1
-
-{-# NOINLINE ptr_glMultTransposeMatrixfARB #-}
-ptr_glMultTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glMultTransposeMatrixfARB = unsafePerformIO $ getCommand "glMultTransposeMatrixfARB"
-
--- glMultTransposeMatrixxOES ---------------------------------------------------
-
-glMultTransposeMatrixxOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
-  -> m ()
-glMultTransposeMatrixxOES v1 = liftIO $ dyn107 ptr_glMultTransposeMatrixxOES v1
-
-{-# NOINLINE ptr_glMultTransposeMatrixxOES #-}
-ptr_glMultTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glMultTransposeMatrixxOES = unsafePerformIO $ getCommand "glMultTransposeMatrixxOES"
-
--- glMultiDrawArrays -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawArrays.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArrays.xhtml OpenGL 4.x>.
-glMultiDrawArrays
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
-  -> GLsizei -- ^ @drawcount@.
-  -> m ()
-glMultiDrawArrays v1 v2 v3 v4 = liftIO $ dyn527 ptr_glMultiDrawArrays v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawArrays #-}
-ptr_glMultiDrawArrays :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArrays = unsafePerformIO $ getCommand "glMultiDrawArrays"
-
--- glMultiDrawArraysEXT --------------------------------------------------------
-
--- | This command is an alias for 'glMultiDrawArrays'.
-glMultiDrawArraysEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
-  -> GLsizei -- ^ @primcount@.
-  -> m ()
-glMultiDrawArraysEXT v1 v2 v3 v4 = liftIO $ dyn527 ptr_glMultiDrawArraysEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawArraysEXT #-}
-ptr_glMultiDrawArraysEXT :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArraysEXT = unsafePerformIO $ getCommand "glMultiDrawArraysEXT"
-
--- glMultiDrawArraysIndirect ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArraysIndirect.xhtml OpenGL 4.x>.
-glMultiDrawArraysIndirect
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawArraysIndirect v1 v2 v3 v4 = liftIO $ dyn528 ptr_glMultiDrawArraysIndirect v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirect #-}
-ptr_glMultiDrawArraysIndirect :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArraysIndirect = unsafePerformIO $ getCommand "glMultiDrawArraysIndirect"
-
--- glMultiDrawArraysIndirectAMD ------------------------------------------------
-
--- | This command is an alias for 'glMultiDrawArraysIndirect'.
-glMultiDrawArraysIndirectAMD
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @primcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawArraysIndirectAMD v1 v2 v3 v4 = liftIO $ dyn528 ptr_glMultiDrawArraysIndirectAMD v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirectAMD #-}
-ptr_glMultiDrawArraysIndirectAMD :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArraysIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectAMD"
-
--- glMultiDrawArraysIndirectBindlessCountNV ------------------------------------
-
-glMultiDrawArraysIndirectBindlessCountNV
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @drawCount@.
-  -> GLsizei -- ^ @maxDrawCount@.
-  -> GLsizei -- ^ @stride@.
-  -> GLint -- ^ @vertexBufferCount@.
-  -> m ()
-glMultiDrawArraysIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn529 ptr_glMultiDrawArraysIndirectBindlessCountNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessCountNV #-}
-ptr_glMultiDrawArraysIndirectBindlessCountNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
-ptr_glMultiDrawArraysIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessCountNV"
-
--- glMultiDrawArraysIndirectBindlessNV -----------------------------------------
-
-glMultiDrawArraysIndirectBindlessNV
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @drawCount@.
-  -> GLsizei -- ^ @stride@.
-  -> GLint -- ^ @vertexBufferCount@.
-  -> m ()
-glMultiDrawArraysIndirectBindlessNV v1 v2 v3 v4 v5 = liftIO $ dyn530 ptr_glMultiDrawArraysIndirectBindlessNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessNV #-}
-ptr_glMultiDrawArraysIndirectBindlessNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
-ptr_glMultiDrawArraysIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessNV"
-
--- glMultiDrawArraysIndirectCountARB -------------------------------------------
-
-glMultiDrawArraysIndirectCountARB
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLintptr -- ^ @indirect@.
-  -> GLintptr -- ^ @drawcount@.
-  -> GLsizei -- ^ @maxdrawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawArraysIndirectCountARB v1 v2 v3 v4 v5 = liftIO $ dyn531 ptr_glMultiDrawArraysIndirectCountARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirectCountARB #-}
-ptr_glMultiDrawArraysIndirectCountARB :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArraysIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectCountARB"
-
--- glMultiDrawArraysIndirectEXT ------------------------------------------------
-
--- | This command is an alias for 'glMultiDrawArraysIndirect'.
-glMultiDrawArraysIndirectEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawArraysIndirectEXT v1 v2 v3 v4 = liftIO $ dyn528 ptr_glMultiDrawArraysIndirectEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawArraysIndirectEXT #-}
-ptr_glMultiDrawArraysIndirectEXT :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawArraysIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectEXT"
-
--- glMultiDrawElementArrayAPPLE ------------------------------------------------
-
-glMultiDrawElementArrayAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
-  -> GLsizei -- ^ @primcount@.
-  -> m ()
-glMultiDrawElementArrayAPPLE v1 v2 v3 v4 = liftIO $ dyn527 ptr_glMultiDrawElementArrayAPPLE v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiDrawElementArrayAPPLE #-}
-ptr_glMultiDrawElementArrayAPPLE :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawElementArrayAPPLE"
-
--- glMultiDrawElements ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawElements.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElements.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElements.xhtml OpenGL 4.x>.
-glMultiDrawElements
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> m ()
-glMultiDrawElements v1 v2 v3 v4 v5 = liftIO $ dyn532 ptr_glMultiDrawElements v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawElements #-}
-ptr_glMultiDrawElements :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
-ptr_glMultiDrawElements = unsafePerformIO $ getCommand "glMultiDrawElements"
-
--- glMultiDrawElementsBaseVertex -----------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElementsBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsBaseVertex.xhtml OpenGL 4.x>.
-glMultiDrawElementsBaseVertex
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
-  -> m ()
-glMultiDrawElementsBaseVertex v1 v2 v3 v4 v5 v6 = liftIO $ dyn533 ptr_glMultiDrawElementsBaseVertex v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawElementsBaseVertex #-}
-ptr_glMultiDrawElementsBaseVertex :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
-ptr_glMultiDrawElementsBaseVertex = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertex"
-
--- glMultiDrawElementsBaseVertexEXT --------------------------------------------
-
--- | This command is an alias for 'glMultiDrawElementsBaseVertex'.
-glMultiDrawElementsBaseVertexEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @primcount@.
-  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
-  -> m ()
-glMultiDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn533 ptr_glMultiDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawElementsBaseVertexEXT #-}
-ptr_glMultiDrawElementsBaseVertexEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
-ptr_glMultiDrawElementsBaseVertexEXT = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexEXT"
-
--- glMultiDrawElementsBaseVertexOES --------------------------------------------
-
--- | This command is an alias for 'glMultiDrawElementsBaseVertex'.
-glMultiDrawElementsBaseVertexOES
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @primcount@.
-  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
-  -> m ()
-glMultiDrawElementsBaseVertexOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn533 ptr_glMultiDrawElementsBaseVertexOES v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawElementsBaseVertexOES #-}
-ptr_glMultiDrawElementsBaseVertexOES :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
-ptr_glMultiDrawElementsBaseVertexOES = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexOES"
-
--- glMultiDrawElementsEXT ------------------------------------------------------
-
--- | This command is an alias for 'glMultiDrawElements'.
-glMultiDrawElementsEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @primcount@.
-  -> m ()
-glMultiDrawElementsEXT v1 v2 v3 v4 v5 = liftIO $ dyn532 ptr_glMultiDrawElementsEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawElementsEXT #-}
-ptr_glMultiDrawElementsEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
-ptr_glMultiDrawElementsEXT = unsafePerformIO $ getCommand "glMultiDrawElementsEXT"
-
--- glMultiDrawElementsIndirect -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsIndirect.xhtml OpenGL 4.x>.
-glMultiDrawElementsIndirect
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawElementsIndirect v1 v2 v3 v4 v5 = liftIO $ dyn534 ptr_glMultiDrawElementsIndirect v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirect #-}
-ptr_glMultiDrawElementsIndirect :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawElementsIndirect = unsafePerformIO $ getCommand "glMultiDrawElementsIndirect"
-
--- glMultiDrawElementsIndirectAMD ----------------------------------------------
-
--- | This command is an alias for 'glMultiDrawElementsIndirect'.
-glMultiDrawElementsIndirectAMD
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @primcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawElementsIndirectAMD v1 v2 v3 v4 v5 = liftIO $ dyn534 ptr_glMultiDrawElementsIndirectAMD v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirectAMD #-}
-ptr_glMultiDrawElementsIndirectAMD :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawElementsIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectAMD"
-
--- glMultiDrawElementsIndirectBindlessCountNV ----------------------------------
-
-glMultiDrawElementsIndirectBindlessCountNV
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @drawCount@.
-  -> GLsizei -- ^ @maxDrawCount@.
-  -> GLsizei -- ^ @stride@.
-  -> GLint -- ^ @vertexBufferCount@.
-  -> m ()
-glMultiDrawElementsIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn535 ptr_glMultiDrawElementsIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessCountNV #-}
-ptr_glMultiDrawElementsIndirectBindlessCountNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
-ptr_glMultiDrawElementsIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessCountNV"
-
--- glMultiDrawElementsIndirectBindlessNV ---------------------------------------
-
-glMultiDrawElementsIndirectBindlessNV
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @indirect@.
-  -> GLsizei -- ^ @drawCount@.
-  -> GLsizei -- ^ @stride@.
-  -> GLint -- ^ @vertexBufferCount@.
-  -> m ()
-glMultiDrawElementsIndirectBindlessNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn536 ptr_glMultiDrawElementsIndirectBindlessNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessNV #-}
-ptr_glMultiDrawElementsIndirectBindlessNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
-ptr_glMultiDrawElementsIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessNV"
-
--- glMultiDrawElementsIndirectCountARB -----------------------------------------
-
-glMultiDrawElementsIndirectCountARB
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> GLintptr -- ^ @indirect@.
-  -> GLintptr -- ^ @drawcount@.
-  -> GLsizei -- ^ @maxdrawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawElementsIndirectCountARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn537 ptr_glMultiDrawElementsIndirectCountARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirectCountARB #-}
-ptr_glMultiDrawElementsIndirectCountARB :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawElementsIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectCountARB"
-
--- glMultiDrawElementsIndirectEXT ----------------------------------------------
-
--- | This command is an alias for 'glMultiDrawElementsIndirect'.
-glMultiDrawElementsIndirectEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
-  -> GLsizei -- ^ @drawcount@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glMultiDrawElementsIndirectEXT v1 v2 v3 v4 v5 = liftIO $ dyn534 ptr_glMultiDrawElementsIndirectEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiDrawElementsIndirectEXT #-}
-ptr_glMultiDrawElementsIndirectEXT :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawElementsIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectEXT"
-
--- glMultiDrawRangeElementArrayAPPLE -------------------------------------------
-
-glMultiDrawRangeElementArrayAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> GLuint -- ^ @start@.
-  -> GLuint -- ^ @end@.
-  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
-  -> GLsizei -- ^ @primcount@.
-  -> m ()
-glMultiDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 v6 = liftIO $ dyn538 ptr_glMultiDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiDrawRangeElementArrayAPPLE #-}
-ptr_glMultiDrawRangeElementArrayAPPLE :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
-ptr_glMultiDrawRangeElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawRangeElementArrayAPPLE"
-
--- glMultiModeDrawArraysIBM ----------------------------------------------------
-
-glMultiModeDrawArraysIBM
-  :: MonadIO m
-  => Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
-  -> GLsizei -- ^ @primcount@.
-  -> GLint -- ^ @modestride@.
-  -> m ()
-glMultiModeDrawArraysIBM v1 v2 v3 v4 v5 = liftIO $ dyn539 ptr_glMultiModeDrawArraysIBM v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiModeDrawArraysIBM #-}
-ptr_glMultiModeDrawArraysIBM :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
-ptr_glMultiModeDrawArraysIBM = unsafePerformIO $ getCommand "glMultiModeDrawArraysIBM"
-
--- glMultiModeDrawElementsIBM --------------------------------------------------
-
-glMultiModeDrawElementsIBM
-  :: MonadIO m
-  => Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
-  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
-  -> GLenum -- ^ @type@ of type @DrawElementsType@.
-  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
-  -> GLsizei -- ^ @primcount@.
-  -> GLint -- ^ @modestride@.
-  -> m ()
-glMultiModeDrawElementsIBM v1 v2 v3 v4 v5 v6 = liftIO $ dyn540 ptr_glMultiModeDrawElementsIBM v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glMultiModeDrawElementsIBM #-}
-ptr_glMultiModeDrawElementsIBM :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
-ptr_glMultiModeDrawElementsIBM = unsafePerformIO $ getCommand "glMultiModeDrawElementsIBM"
-
--- glMultiTexBufferEXT ---------------------------------------------------------
-
-glMultiTexBufferEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@ of type @TypeEnum@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glMultiTexBufferEXT v1 v2 v3 v4 = liftIO $ dyn283 ptr_glMultiTexBufferEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexBufferEXT #-}
-ptr_glMultiTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexBufferEXT = unsafePerformIO $ getCommand "glMultiTexBufferEXT"
-
--- glMultiTexCoord1bOES --------------------------------------------------------
-
-glMultiTexCoord1bOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLbyte -- ^ @s@.
-  -> m ()
-glMultiTexCoord1bOES v1 v2 = liftIO $ dyn541 ptr_glMultiTexCoord1bOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1bOES #-}
-ptr_glMultiTexCoord1bOES :: FunPtr (GLenum -> GLbyte -> IO ())
-ptr_glMultiTexCoord1bOES = unsafePerformIO $ getCommand "glMultiTexCoord1bOES"
-
--- glMultiTexCoord1bvOES -------------------------------------------------------
-
-glMultiTexCoord1bvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLbyte -- ^ @coords@ pointing to @1@ element of type @GLbyte@.
-  -> m ()
-glMultiTexCoord1bvOES v1 v2 = liftIO $ dyn542 ptr_glMultiTexCoord1bvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1bvOES #-}
-ptr_glMultiTexCoord1bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-ptr_glMultiTexCoord1bvOES = unsafePerformIO $ getCommand "glMultiTexCoord1bvOES"
-
--- glMultiTexCoord1d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1dv'.
-glMultiTexCoord1d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord1d v1 v2 = liftIO $ dyn543 ptr_glMultiTexCoord1d v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1d #-}
-ptr_glMultiTexCoord1d :: FunPtr (GLenum -> GLdouble -> IO ())
-ptr_glMultiTexCoord1d = unsafePerformIO $ getCommand "glMultiTexCoord1d"
-
--- glMultiTexCoord1dARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord1dv'. This command is an alias for 'glMultiTexCoord1d'.
-glMultiTexCoord1dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord1dARB v1 v2 = liftIO $ dyn543 ptr_glMultiTexCoord1dARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1dARB #-}
-ptr_glMultiTexCoord1dARB :: FunPtr (GLenum -> GLdouble -> IO ())
-ptr_glMultiTexCoord1dARB = unsafePerformIO $ getCommand "glMultiTexCoord1dARB"
-
--- glMultiTexCoord1dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord1dv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
-  -> m ()
-glMultiTexCoord1dv v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord1dv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1dv #-}
-ptr_glMultiTexCoord1dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord1dv = unsafePerformIO $ getCommand "glMultiTexCoord1dv"
-
--- glMultiTexCoord1dvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord1dv'.
-glMultiTexCoord1dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
-  -> m ()
-glMultiTexCoord1dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord1dvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1dvARB #-}
-ptr_glMultiTexCoord1dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord1dvARB = unsafePerformIO $ getCommand "glMultiTexCoord1dvARB"
-
--- glMultiTexCoord1f -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1fv'.
-glMultiTexCoord1f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord1f v1 v2 = liftIO $ dyn0 ptr_glMultiTexCoord1f v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1f #-}
-ptr_glMultiTexCoord1f :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glMultiTexCoord1f = unsafePerformIO $ getCommand "glMultiTexCoord1f"
-
--- glMultiTexCoord1fARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord1fv'. This command is an alias for 'glMultiTexCoord1f'.
-glMultiTexCoord1fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord1fARB v1 v2 = liftIO $ dyn0 ptr_glMultiTexCoord1fARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1fARB #-}
-ptr_glMultiTexCoord1fARB :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glMultiTexCoord1fARB = unsafePerformIO $ getCommand "glMultiTexCoord1fARB"
-
--- glMultiTexCoord1fv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord1fv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
-  -> m ()
-glMultiTexCoord1fv v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord1fv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1fv #-}
-ptr_glMultiTexCoord1fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord1fv = unsafePerformIO $ getCommand "glMultiTexCoord1fv"
-
--- glMultiTexCoord1fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord1fv'.
-glMultiTexCoord1fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
-  -> m ()
-glMultiTexCoord1fvARB v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord1fvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1fvARB #-}
-ptr_glMultiTexCoord1fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord1fvARB = unsafePerformIO $ getCommand "glMultiTexCoord1fvARB"
-
--- glMultiTexCoord1hNV ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord1hvNV'.
-glMultiTexCoord1hNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> m ()
-glMultiTexCoord1hNV v1 v2 = liftIO $ dyn544 ptr_glMultiTexCoord1hNV v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1hNV #-}
-ptr_glMultiTexCoord1hNV :: FunPtr (GLenum -> GLhalfNV -> IO ())
-ptr_glMultiTexCoord1hNV = unsafePerformIO $ getCommand "glMultiTexCoord1hNV"
-
--- glMultiTexCoord1hvNV --------------------------------------------------------
-
-glMultiTexCoord1hvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
-  -> m ()
-glMultiTexCoord1hvNV v1 v2 = liftIO $ dyn545 ptr_glMultiTexCoord1hvNV v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1hvNV #-}
-ptr_glMultiTexCoord1hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
-ptr_glMultiTexCoord1hvNV = unsafePerformIO $ getCommand "glMultiTexCoord1hvNV"
-
--- glMultiTexCoord1i -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1iv'.
-glMultiTexCoord1i
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord1i v1 v2 = liftIO $ dyn55 ptr_glMultiTexCoord1i v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1i #-}
-ptr_glMultiTexCoord1i :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glMultiTexCoord1i = unsafePerformIO $ getCommand "glMultiTexCoord1i"
-
--- glMultiTexCoord1iARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord1iv'. This command is an alias for 'glMultiTexCoord1i'.
-glMultiTexCoord1iARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord1iARB v1 v2 = liftIO $ dyn55 ptr_glMultiTexCoord1iARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1iARB #-}
-ptr_glMultiTexCoord1iARB :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glMultiTexCoord1iARB = unsafePerformIO $ getCommand "glMultiTexCoord1iARB"
-
--- glMultiTexCoord1iv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord1iv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
-  -> m ()
-glMultiTexCoord1iv v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord1iv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1iv #-}
-ptr_glMultiTexCoord1iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord1iv = unsafePerformIO $ getCommand "glMultiTexCoord1iv"
-
--- glMultiTexCoord1ivARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord1iv'.
-glMultiTexCoord1ivARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
-  -> m ()
-glMultiTexCoord1ivARB v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord1ivARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1ivARB #-}
-ptr_glMultiTexCoord1ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord1ivARB = unsafePerformIO $ getCommand "glMultiTexCoord1ivARB"
-
--- glMultiTexCoord1s -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1sv'.
-glMultiTexCoord1s
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord1s v1 v2 = liftIO $ dyn546 ptr_glMultiTexCoord1s v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1s #-}
-ptr_glMultiTexCoord1s :: FunPtr (GLenum -> GLshort -> IO ())
-ptr_glMultiTexCoord1s = unsafePerformIO $ getCommand "glMultiTexCoord1s"
-
--- glMultiTexCoord1sARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord1sv'. This command is an alias for 'glMultiTexCoord1s'.
-glMultiTexCoord1sARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord1sARB v1 v2 = liftIO $ dyn546 ptr_glMultiTexCoord1sARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1sARB #-}
-ptr_glMultiTexCoord1sARB :: FunPtr (GLenum -> GLshort -> IO ())
-ptr_glMultiTexCoord1sARB = unsafePerformIO $ getCommand "glMultiTexCoord1sARB"
+  glMap1f,
+  glMap1xOES,
+  glMap2d,
+  glMap2f,
+  glMap2xOES,
+  glMapBuffer,
+  glMapBufferARB,
+  glMapBufferOES,
+  glMapBufferRange,
+  glMapBufferRangeEXT,
+  glMapControlPointsNV,
+  glMapGrid1d,
+  glMapGrid1f,
+  glMapGrid1xOES,
+  glMapGrid2d,
+  glMapGrid2f,
+  glMapGrid2xOES,
+  glMapNamedBuffer,
+  glMapNamedBufferEXT,
+  glMapNamedBufferRange,
+  glMapNamedBufferRangeEXT,
+  glMapObjectBufferATI,
+  glMapParameterfvNV,
+  glMapParameterivNV,
+  glMapTexture2DINTEL,
+  glMapVertexAttrib1dAPPLE,
+  glMapVertexAttrib1fAPPLE,
+  glMapVertexAttrib2dAPPLE,
+  glMapVertexAttrib2fAPPLE,
+  glMaterialf,
+  glMaterialfv,
+  glMateriali,
+  glMaterialiv,
+  glMaterialx,
+  glMaterialxOES,
+  glMaterialxv,
+  glMaterialxvOES,
+  glMatrixFrustumEXT,
+  glMatrixIndexPointerARB,
+  glMatrixIndexPointerOES,
+  glMatrixIndexubvARB,
+  glMatrixIndexuivARB,
+  glMatrixIndexusvARB,
+  glMatrixLoad3x2fNV,
+  glMatrixLoad3x3fNV,
+  glMatrixLoadIdentityEXT,
+  glMatrixLoadTranspose3x3fNV,
+  glMatrixLoadTransposedEXT,
+  glMatrixLoadTransposefEXT,
+  glMatrixLoaddEXT,
+  glMatrixLoadfEXT,
+  glMatrixMode,
+  glMatrixMult3x2fNV,
+  glMatrixMult3x3fNV,
+  glMatrixMultTranspose3x3fNV,
+  glMatrixMultTransposedEXT,
+  glMatrixMultTransposefEXT,
+  glMatrixMultdEXT,
+  glMatrixMultfEXT,
+  glMatrixOrthoEXT,
+  glMatrixPopEXT,
+  glMatrixPushEXT,
+  glMatrixRotatedEXT,
+  glMatrixRotatefEXT,
+  glMatrixScaledEXT,
+  glMatrixScalefEXT,
+  glMatrixTranslatedEXT,
+  glMatrixTranslatefEXT,
+  glMaxShaderCompilerThreadsARB,
+  glMemoryBarrier,
+  glMemoryBarrierByRegion,
+  glMemoryBarrierEXT,
+  glMemoryObjectParameterivEXT,
+  glMinSampleShading,
+  glMinSampleShadingARB,
+  glMinSampleShadingOES,
+  glMinmax,
+  glMinmaxEXT,
+  glMultMatrixd,
+  glMultMatrixf,
+  glMultMatrixx,
+  glMultMatrixxOES,
+  glMultTransposeMatrixd,
+  glMultTransposeMatrixdARB,
+  glMultTransposeMatrixf,
+  glMultTransposeMatrixfARB,
+  glMultTransposeMatrixxOES,
+  glMultiDrawArrays,
+  glMultiDrawArraysEXT,
+  glMultiDrawArraysIndirect,
+  glMultiDrawArraysIndirectAMD,
+  glMultiDrawArraysIndirectBindlessCountNV,
+  glMultiDrawArraysIndirectBindlessNV,
+  glMultiDrawArraysIndirectCountARB,
+  glMultiDrawArraysIndirectEXT,
+  glMultiDrawElementArrayAPPLE,
+  glMultiDrawElements,
+  glMultiDrawElementsBaseVertex,
+  glMultiDrawElementsBaseVertexEXT,
+  glMultiDrawElementsBaseVertexOES
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glMap1f ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>.
+glMap1f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> GLint -- ^ @stride@.
+  -> GLint -- ^ @order@ of type @CheckedInt32@.
+  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordF@.
+  -> m ()
+glMap1f v1 v2 v3 v4 v5 v6 = liftIO $ dyn511 ptr_glMap1f v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMap1f #-}
+ptr_glMap1f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+ptr_glMap1f = unsafePerformIO $ getCommand "glMap1f"
+
+-- glMap1xOES ------------------------------------------------------------------
+
+glMap1xOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLfixed -- ^ @u1@.
+  -> GLfixed -- ^ @u2@.
+  -> GLint -- ^ @stride@.
+  -> GLint -- ^ @order@.
+  -> GLfixed -- ^ @points@.
+  -> m ()
+glMap1xOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn512 ptr_glMap1xOES v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMap1xOES #-}
+ptr_glMap1xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
+ptr_glMap1xOES = unsafePerformIO $ getCommand "glMap1xOES"
+
+-- glMap2d ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>.
+glMap2d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> GLint -- ^ @ustride@.
+  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
+  -> GLdouble -- ^ @v1@ of type @CoordD@.
+  -> GLdouble -- ^ @v2@ of type @CoordD@.
+  -> GLint -- ^ @vstride@.
+  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
+  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
+  -> m ()
+glMap2d v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn513 ptr_glMap2d v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glMap2d #-}
+ptr_glMap2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+ptr_glMap2d = unsafePerformIO $ getCommand "glMap2d"
+
+-- glMap2f ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>.
+glMap2f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MapTarget](Graphics-GL-Groups.html#MapTarget).
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> GLint -- ^ @ustride@.
+  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
+  -> GLfloat -- ^ @v1@ of type @CoordF@.
+  -> GLfloat -- ^ @v2@ of type @CoordF@.
+  -> GLint -- ^ @vstride@.
+  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
+  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
+  -> m ()
+glMap2f v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn514 ptr_glMap2f v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glMap2f #-}
+ptr_glMap2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+ptr_glMap2f = unsafePerformIO $ getCommand "glMap2f"
+
+-- glMap2xOES ------------------------------------------------------------------
+
+glMap2xOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLfixed -- ^ @u1@.
+  -> GLfixed -- ^ @u2@.
+  -> GLint -- ^ @ustride@.
+  -> GLint -- ^ @uorder@.
+  -> GLfixed -- ^ @v1@.
+  -> GLfixed -- ^ @v2@.
+  -> GLint -- ^ @vstride@.
+  -> GLint -- ^ @vorder@.
+  -> GLfixed -- ^ @points@.
+  -> m ()
+glMap2xOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn515 ptr_glMap2xOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glMap2xOES #-}
+ptr_glMap2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
+ptr_glMap2xOES = unsafePerformIO $ getCommand "glMap2xOES"
+
+-- glMapBuffer -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>.
+glMapBuffer
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> GLenum -- ^ @access@ of type [BufferAccessARB](Graphics-GL-Groups.html#BufferAccessARB).
+  -> m (Ptr a)
+glMapBuffer v1 v2 = liftIO $ dyn516 ptr_glMapBuffer v1 v2
+
+{-# NOINLINE ptr_glMapBuffer #-}
+ptr_glMapBuffer :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
+ptr_glMapBuffer = unsafePerformIO $ getCommand "glMapBuffer"
+
+-- glMapBufferARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glMapBuffer'.
+glMapBufferARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> GLenum -- ^ @access@ of type [BufferAccessARB](Graphics-GL-Groups.html#BufferAccessARB).
+  -> m (Ptr a)
+glMapBufferARB v1 v2 = liftIO $ dyn516 ptr_glMapBufferARB v1 v2
+
+{-# NOINLINE ptr_glMapBufferARB #-}
+ptr_glMapBufferARB :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
+ptr_glMapBufferARB = unsafePerformIO $ getCommand "glMapBufferARB"
+
+-- glMapBufferOES --------------------------------------------------------------
+
+-- | This command is an alias for 'glMapBuffer'.
+glMapBufferOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @access@.
+  -> m (Ptr a)
+glMapBufferOES v1 v2 = liftIO $ dyn516 ptr_glMapBufferOES v1 v2
+
+{-# NOINLINE ptr_glMapBufferOES #-}
+ptr_glMapBufferOES :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
+ptr_glMapBufferOES = unsafePerformIO $ getCommand "glMapBufferOES"
+
+-- glMapBufferRange ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>.
+glMapBufferRange
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
+  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
+  -> m (Ptr a)
+glMapBufferRange v1 v2 v3 v4 = liftIO $ dyn517 ptr_glMapBufferRange v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMapBufferRange #-}
+ptr_glMapBufferRange :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+ptr_glMapBufferRange = unsafePerformIO $ getCommand "glMapBufferRange"
+
+-- glMapBufferRangeEXT ---------------------------------------------------------
+
+-- | This command is an alias for 'glMapBufferRange'.
+glMapBufferRangeEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @length@.
+  -> GLbitfield -- ^ @access@.
+  -> m (Ptr a)
+glMapBufferRangeEXT v1 v2 v3 v4 = liftIO $ dyn517 ptr_glMapBufferRangeEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMapBufferRangeEXT #-}
+ptr_glMapBufferRangeEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+ptr_glMapBufferRangeEXT = unsafePerformIO $ getCommand "glMapBufferRangeEXT"
+
+-- glMapControlPointsNV --------------------------------------------------------
+
+glMapControlPointsNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @EvalTargetNV@.
+  -> GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@ of type @MapTypeNV@.
+  -> GLsizei -- ^ @ustride@.
+  -> GLsizei -- ^ @vstride@.
+  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
+  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
+  -> GLboolean -- ^ @packed@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr a -- ^ @points@ pointing to @COMPSIZE(target,uorder,vorder)@ elements of type @a@.
+  -> m ()
+glMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn518 ptr_glMapControlPointsNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glMapControlPointsNV #-}
+ptr_glMapControlPointsNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
+ptr_glMapControlPointsNV = unsafePerformIO $ getCommand "glMapControlPointsNV"
+
+-- glMapGrid1d -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
+glMapGrid1d
+  :: MonadIO m
+  => GLint -- ^ @un@.
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> m ()
+glMapGrid1d v1 v2 v3 = liftIO $ dyn519 ptr_glMapGrid1d v1 v2 v3
+
+{-# NOINLINE ptr_glMapGrid1d #-}
+ptr_glMapGrid1d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
+ptr_glMapGrid1d = unsafePerformIO $ getCommand "glMapGrid1d"
+
+-- glMapGrid1f -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
+glMapGrid1f
+  :: MonadIO m
+  => GLint -- ^ @un@.
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> m ()
+glMapGrid1f v1 v2 v3 = liftIO $ dyn520 ptr_glMapGrid1f v1 v2 v3
+
+{-# NOINLINE ptr_glMapGrid1f #-}
+ptr_glMapGrid1f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glMapGrid1f = unsafePerformIO $ getCommand "glMapGrid1f"
+
+-- glMapGrid1xOES --------------------------------------------------------------
+
+glMapGrid1xOES
+  :: MonadIO m
+  => GLint -- ^ @n@.
+  -> GLfixed -- ^ @u1@.
+  -> GLfixed -- ^ @u2@.
+  -> m ()
+glMapGrid1xOES v1 v2 v3 = liftIO $ dyn521 ptr_glMapGrid1xOES v1 v2 v3
+
+{-# NOINLINE ptr_glMapGrid1xOES #-}
+ptr_glMapGrid1xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
+ptr_glMapGrid1xOES = unsafePerformIO $ getCommand "glMapGrid1xOES"
+
+-- glMapGrid2d -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
+glMapGrid2d
+  :: MonadIO m
+  => GLint -- ^ @un@.
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> GLint -- ^ @vn@.
+  -> GLdouble -- ^ @v1@ of type @CoordD@.
+  -> GLdouble -- ^ @v2@ of type @CoordD@.
+  -> m ()
+glMapGrid2d v1 v2 v3 v4 v5 v6 = liftIO $ dyn522 ptr_glMapGrid2d v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMapGrid2d #-}
+ptr_glMapGrid2d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
+ptr_glMapGrid2d = unsafePerformIO $ getCommand "glMapGrid2d"
+
+-- glMapGrid2f -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>.
+glMapGrid2f
+  :: MonadIO m
+  => GLint -- ^ @un@.
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> GLint -- ^ @vn@.
+  -> GLfloat -- ^ @v1@ of type @CoordF@.
+  -> GLfloat -- ^ @v2@ of type @CoordF@.
+  -> m ()
+glMapGrid2f v1 v2 v3 v4 v5 v6 = liftIO $ dyn523 ptr_glMapGrid2f v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMapGrid2f #-}
+ptr_glMapGrid2f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glMapGrid2f = unsafePerformIO $ getCommand "glMapGrid2f"
+
+-- glMapGrid2xOES --------------------------------------------------------------
+
+glMapGrid2xOES
+  :: MonadIO m
+  => GLint -- ^ @n@.
+  -> GLfixed -- ^ @u1@.
+  -> GLfixed -- ^ @u2@.
+  -> GLfixed -- ^ @v1@.
+  -> GLfixed -- ^ @v2@.
+  -> m ()
+glMapGrid2xOES v1 v2 v3 v4 v5 = liftIO $ dyn524 ptr_glMapGrid2xOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMapGrid2xOES #-}
+ptr_glMapGrid2xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glMapGrid2xOES = unsafePerformIO $ getCommand "glMapGrid2xOES"
+
+-- glMapNamedBuffer ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>.
+glMapNamedBuffer
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @access@.
+  -> m (Ptr a)
+glMapNamedBuffer v1 v2 = liftIO $ dyn525 ptr_glMapNamedBuffer v1 v2
+
+{-# NOINLINE ptr_glMapNamedBuffer #-}
+ptr_glMapNamedBuffer :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
+ptr_glMapNamedBuffer = unsafePerformIO $ getCommand "glMapNamedBuffer"
+
+-- glMapNamedBufferEXT ---------------------------------------------------------
+
+glMapNamedBufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @access@ of type @VertexBufferObjectAccess@.
+  -> m (Ptr a)
+glMapNamedBufferEXT v1 v2 = liftIO $ dyn525 ptr_glMapNamedBufferEXT v1 v2
+
+{-# NOINLINE ptr_glMapNamedBufferEXT #-}
+ptr_glMapNamedBufferEXT :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
+ptr_glMapNamedBufferEXT = unsafePerformIO $ getCommand "glMapNamedBufferEXT"
+
+-- glMapNamedBufferRange -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>.
+glMapNamedBufferRange
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
+  -> GLbitfield -- ^ @access@.
+  -> m (Ptr a)
+glMapNamedBufferRange v1 v2 v3 v4 = liftIO $ dyn526 ptr_glMapNamedBufferRange v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMapNamedBufferRange #-}
+ptr_glMapNamedBufferRange :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+ptr_glMapNamedBufferRange = unsafePerformIO $ getCommand "glMapNamedBufferRange"
+
+-- glMapNamedBufferRangeEXT ----------------------------------------------------
+
+glMapNamedBufferRangeEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @length@.
+  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
+  -> m (Ptr a)
+glMapNamedBufferRangeEXT v1 v2 v3 v4 = liftIO $ dyn526 ptr_glMapNamedBufferRangeEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMapNamedBufferRangeEXT #-}
+ptr_glMapNamedBufferRangeEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
+ptr_glMapNamedBufferRangeEXT = unsafePerformIO $ getCommand "glMapNamedBufferRangeEXT"
+
+-- glMapObjectBufferATI --------------------------------------------------------
+
+glMapObjectBufferATI
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m (Ptr a)
+glMapObjectBufferATI v1 = liftIO $ dyn527 ptr_glMapObjectBufferATI v1
+
+{-# NOINLINE ptr_glMapObjectBufferATI #-}
+ptr_glMapObjectBufferATI :: FunPtr (GLuint -> IO (Ptr a))
+ptr_glMapObjectBufferATI = unsafePerformIO $ getCommand "glMapObjectBufferATI"
+
+-- glMapParameterfvNV ----------------------------------------------------------
+
+glMapParameterfvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @EvalTargetNV@.
+  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glMapParameterfvNV v1 v2 v3 = liftIO $ dyn135 ptr_glMapParameterfvNV v1 v2 v3
+
+{-# NOINLINE ptr_glMapParameterfvNV #-}
+ptr_glMapParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glMapParameterfvNV = unsafePerformIO $ getCommand "glMapParameterfvNV"
+
+-- glMapParameterivNV ----------------------------------------------------------
+
+glMapParameterivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @EvalTargetNV@.
+  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMapParameterivNV v1 v2 v3 = liftIO $ dyn136 ptr_glMapParameterivNV v1 v2 v3
+
+{-# NOINLINE ptr_glMapParameterivNV #-}
+ptr_glMapParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMapParameterivNV = unsafePerformIO $ getCommand "glMapParameterivNV"
+
+-- glMapTexture2DINTEL ---------------------------------------------------------
+
+glMapTexture2DINTEL
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLbitfield -- ^ @access@.
+  -> Ptr GLint -- ^ @stride@ pointing to @1@ element of type @GLint@.
+  -> Ptr GLenum -- ^ @layout@ pointing to @1@ element of type @GLenum@.
+  -> m (Ptr a)
+glMapTexture2DINTEL v1 v2 v3 v4 v5 = liftIO $ dyn528 ptr_glMapTexture2DINTEL v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMapTexture2DINTEL #-}
+ptr_glMapTexture2DINTEL :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
+ptr_glMapTexture2DINTEL = unsafePerformIO $ getCommand "glMapTexture2DINTEL"
+
+-- glMapVertexAttrib1dAPPLE ----------------------------------------------------
+
+glMapVertexAttrib1dAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @size@.
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> GLint -- ^ @stride@.
+  -> GLint -- ^ @order@ of type @CheckedInt32@.
+  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordD@.
+  -> m ()
+glMapVertexAttrib1dAPPLE v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn529 ptr_glMapVertexAttrib1dAPPLE v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMapVertexAttrib1dAPPLE #-}
+ptr_glMapVertexAttrib1dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+ptr_glMapVertexAttrib1dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1dAPPLE"
+
+-- glMapVertexAttrib1fAPPLE ----------------------------------------------------
+
+glMapVertexAttrib1fAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @size@.
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> GLint -- ^ @stride@.
+  -> GLint -- ^ @order@ of type @CheckedInt32@.
+  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordF@.
+  -> m ()
+glMapVertexAttrib1fAPPLE v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn530 ptr_glMapVertexAttrib1fAPPLE v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMapVertexAttrib1fAPPLE #-}
+ptr_glMapVertexAttrib1fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+ptr_glMapVertexAttrib1fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1fAPPLE"
+
+-- glMapVertexAttrib2dAPPLE ----------------------------------------------------
+
+glMapVertexAttrib2dAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @size@.
+  -> GLdouble -- ^ @u1@ of type @CoordD@.
+  -> GLdouble -- ^ @u2@ of type @CoordD@.
+  -> GLint -- ^ @ustride@.
+  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
+  -> GLdouble -- ^ @v1@ of type @CoordD@.
+  -> GLdouble -- ^ @v2@ of type @CoordD@.
+  -> GLint -- ^ @vstride@.
+  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
+  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
+  -> m ()
+glMapVertexAttrib2dAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn531 ptr_glMapVertexAttrib2dAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glMapVertexAttrib2dAPPLE #-}
+ptr_glMapVertexAttrib2dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
+ptr_glMapVertexAttrib2dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2dAPPLE"
+
+-- glMapVertexAttrib2fAPPLE ----------------------------------------------------
+
+glMapVertexAttrib2fAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @size@.
+  -> GLfloat -- ^ @u1@ of type @CoordF@.
+  -> GLfloat -- ^ @u2@ of type @CoordF@.
+  -> GLint -- ^ @ustride@.
+  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
+  -> GLfloat -- ^ @v1@ of type @CoordF@.
+  -> GLfloat -- ^ @v2@ of type @CoordF@.
+  -> GLint -- ^ @vstride@.
+  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
+  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
+  -> m ()
+glMapVertexAttrib2fAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn532 ptr_glMapVertexAttrib2fAPPLE v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glMapVertexAttrib2fAPPLE #-}
+ptr_glMapVertexAttrib2fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
+ptr_glMapVertexAttrib2fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2fAPPLE"
+
+-- glMaterialf -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
+glMaterialf
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glMaterialf v1 v2 v3 = liftIO $ dyn164 ptr_glMaterialf v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialf #-}
+ptr_glMaterialf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glMaterialf = unsafePerformIO $ getCommand "glMaterialf"
+
+-- glMaterialfv ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
+glMaterialfv
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glMaterialfv v1 v2 v3 = liftIO $ dyn135 ptr_glMaterialfv v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialfv #-}
+ptr_glMaterialfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glMaterialfv = unsafePerformIO $ getCommand "glMaterialfv"
+
+-- glMateriali -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
+glMateriali
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glMateriali v1 v2 v3 = liftIO $ dyn63 ptr_glMateriali v1 v2 v3
+
+{-# NOINLINE ptr_glMateriali #-}
+ptr_glMateriali :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glMateriali = unsafePerformIO $ getCommand "glMateriali"
+
+-- glMaterialiv ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>.
+glMaterialiv
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @pname@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMaterialiv v1 v2 v3 = liftIO $ dyn136 ptr_glMaterialiv v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialiv #-}
+ptr_glMaterialiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMaterialiv = unsafePerformIO $ getCommand "glMaterialiv"
+
+-- glMaterialx -----------------------------------------------------------------
+
+glMaterialx
+  :: MonadIO m
+  => GLenum -- ^ @face@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glMaterialx v1 v2 v3 = liftIO $ dyn165 ptr_glMaterialx v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialx #-}
+ptr_glMaterialx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glMaterialx = unsafePerformIO $ getCommand "glMaterialx"
+
+-- glMaterialxOES --------------------------------------------------------------
+
+glMaterialxOES
+  :: MonadIO m
+  => GLenum -- ^ @face@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glMaterialxOES v1 v2 v3 = liftIO $ dyn165 ptr_glMaterialxOES v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialxOES #-}
+ptr_glMaterialxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glMaterialxOES = unsafePerformIO $ getCommand "glMaterialxOES"
+
+-- glMaterialxv ----------------------------------------------------------------
+
+glMaterialxv
+  :: MonadIO m
+  => GLenum -- ^ @face@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glMaterialxv v1 v2 v3 = liftIO $ dyn166 ptr_glMaterialxv v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialxv #-}
+ptr_glMaterialxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glMaterialxv = unsafePerformIO $ getCommand "glMaterialxv"
+
+-- glMaterialxvOES -------------------------------------------------------------
+
+glMaterialxvOES
+  :: MonadIO m
+  => GLenum -- ^ @face@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glMaterialxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glMaterialxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glMaterialxvOES #-}
+ptr_glMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glMaterialxvOES = unsafePerformIO $ getCommand "glMaterialxvOES"
+
+-- glMatrixFrustumEXT ----------------------------------------------------------
+
+glMatrixFrustumEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @left@.
+  -> GLdouble -- ^ @right@.
+  -> GLdouble -- ^ @bottom@.
+  -> GLdouble -- ^ @top@.
+  -> GLdouble -- ^ @zNear@.
+  -> GLdouble -- ^ @zFar@.
+  -> m ()
+glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn533 ptr_glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMatrixFrustumEXT #-}
+ptr_glMatrixFrustumEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixFrustumEXT = unsafePerformIO $ getCommand "glMatrixFrustumEXT"
+
+-- glMatrixIndexPointerARB -----------------------------------------------------
+
+glMatrixIndexPointerARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @MatrixIndexPointerTypeARB@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glMatrixIndexPointerARB v1 v2 v3 v4 = liftIO $ dyn129 ptr_glMatrixIndexPointerARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixIndexPointerARB #-}
+ptr_glMatrixIndexPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glMatrixIndexPointerARB = unsafePerformIO $ getCommand "glMatrixIndexPointerARB"
+
+-- glMatrixIndexPointerOES -----------------------------------------------------
+
+glMatrixIndexPointerOES
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glMatrixIndexPointerOES v1 v2 v3 v4 = liftIO $ dyn129 ptr_glMatrixIndexPointerOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixIndexPointerOES #-}
+ptr_glMatrixIndexPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glMatrixIndexPointerOES = unsafePerformIO $ getCommand "glMatrixIndexPointerOES"
+
+-- glMatrixIndexubvARB ---------------------------------------------------------
+
+glMatrixIndexubvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLubyte -- ^ @indices@ pointing to @size@ elements of type @GLubyte@.
+  -> m ()
+glMatrixIndexubvARB v1 v2 = liftIO $ dyn534 ptr_glMatrixIndexubvARB v1 v2
+
+{-# NOINLINE ptr_glMatrixIndexubvARB #-}
+ptr_glMatrixIndexubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
+ptr_glMatrixIndexubvARB = unsafePerformIO $ getCommand "glMatrixIndexubvARB"
+
+-- glMatrixIndexuivARB ---------------------------------------------------------
+
+glMatrixIndexuivARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLuint -- ^ @indices@ pointing to @size@ elements of type @GLuint@.
+  -> m ()
+glMatrixIndexuivARB v1 v2 = liftIO $ dyn535 ptr_glMatrixIndexuivARB v1 v2
+
+{-# NOINLINE ptr_glMatrixIndexuivARB #-}
+ptr_glMatrixIndexuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
+ptr_glMatrixIndexuivARB = unsafePerformIO $ getCommand "glMatrixIndexuivARB"
+
+-- glMatrixIndexusvARB ---------------------------------------------------------
+
+glMatrixIndexusvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLushort -- ^ @indices@ pointing to @size@ elements of type @GLushort@.
+  -> m ()
+glMatrixIndexusvARB v1 v2 = liftIO $ dyn536 ptr_glMatrixIndexusvARB v1 v2
+
+{-# NOINLINE ptr_glMatrixIndexusvARB #-}
+ptr_glMatrixIndexusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
+ptr_glMatrixIndexusvARB = unsafePerformIO $ getCommand "glMatrixIndexusvARB"
+
+-- glMatrixLoad3x2fNV ----------------------------------------------------------
+
+glMatrixLoad3x2fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixLoad3x2fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixLoad3x2fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixLoad3x2fNV #-}
+ptr_glMatrixLoad3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixLoad3x2fNV = unsafePerformIO $ getCommand "glMatrixLoad3x2fNV"
+
+-- glMatrixLoad3x3fNV ----------------------------------------------------------
+
+glMatrixLoad3x3fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixLoad3x3fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixLoad3x3fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixLoad3x3fNV #-}
+ptr_glMatrixLoad3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixLoad3x3fNV = unsafePerformIO $ getCommand "glMatrixLoad3x3fNV"
+
+-- glMatrixLoadIdentityEXT -----------------------------------------------------
+
+glMatrixLoadIdentityEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> m ()
+glMatrixLoadIdentityEXT v1 = liftIO $ dyn5 ptr_glMatrixLoadIdentityEXT v1
+
+{-# NOINLINE ptr_glMatrixLoadIdentityEXT #-}
+ptr_glMatrixLoadIdentityEXT :: FunPtr (GLenum -> IO ())
+ptr_glMatrixLoadIdentityEXT = unsafePerformIO $ getCommand "glMatrixLoadIdentityEXT"
+
+-- glMatrixLoadTranspose3x3fNV -------------------------------------------------
+
+glMatrixLoadTranspose3x3fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixLoadTranspose3x3fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixLoadTranspose3x3fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixLoadTranspose3x3fNV #-}
+ptr_glMatrixLoadTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixLoadTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixLoadTranspose3x3fNV"
+
+-- glMatrixLoadTransposedEXT ---------------------------------------------------
+
+glMatrixLoadTransposedEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMatrixLoadTransposedEXT v1 v2 = liftIO $ dyn96 ptr_glMatrixLoadTransposedEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixLoadTransposedEXT #-}
+ptr_glMatrixLoadTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMatrixLoadTransposedEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposedEXT"
+
+-- glMatrixLoadTransposefEXT ---------------------------------------------------
+
+glMatrixLoadTransposefEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMatrixLoadTransposefEXT v1 v2 = liftIO $ dyn97 ptr_glMatrixLoadTransposefEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixLoadTransposefEXT #-}
+ptr_glMatrixLoadTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixLoadTransposefEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposefEXT"
+
+-- glMatrixLoaddEXT ------------------------------------------------------------
+
+glMatrixLoaddEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMatrixLoaddEXT v1 v2 = liftIO $ dyn96 ptr_glMatrixLoaddEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixLoaddEXT #-}
+ptr_glMatrixLoaddEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMatrixLoaddEXT = unsafePerformIO $ getCommand "glMatrixLoaddEXT"
+
+-- glMatrixLoadfEXT ------------------------------------------------------------
+
+glMatrixLoadfEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMatrixLoadfEXT v1 v2 = liftIO $ dyn97 ptr_glMatrixLoadfEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixLoadfEXT #-}
+ptr_glMatrixLoadfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixLoadfEXT = unsafePerformIO $ getCommand "glMatrixLoadfEXT"
+
+-- glMatrixMode ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMatrixMode.xml OpenGL 2.x>.
+glMatrixMode
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> m ()
+glMatrixMode v1 = liftIO $ dyn5 ptr_glMatrixMode v1
+
+{-# NOINLINE ptr_glMatrixMode #-}
+ptr_glMatrixMode :: FunPtr (GLenum -> IO ())
+ptr_glMatrixMode = unsafePerformIO $ getCommand "glMatrixMode"
+
+-- glMatrixMult3x2fNV ----------------------------------------------------------
+
+glMatrixMult3x2fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixMult3x2fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixMult3x2fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixMult3x2fNV #-}
+ptr_glMatrixMult3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixMult3x2fNV = unsafePerformIO $ getCommand "glMatrixMult3x2fNV"
+
+-- glMatrixMult3x3fNV ----------------------------------------------------------
+
+glMatrixMult3x3fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixMult3x3fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixMult3x3fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixMult3x3fNV #-}
+ptr_glMatrixMult3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixMult3x3fNV = unsafePerformIO $ getCommand "glMatrixMult3x3fNV"
+
+-- glMatrixMultTranspose3x3fNV -------------------------------------------------
+
+glMatrixMultTranspose3x3fNV
+  :: MonadIO m
+  => GLenum -- ^ @matrixMode@.
+  -> Ptr GLfloat -- ^ @m@.
+  -> m ()
+glMatrixMultTranspose3x3fNV v1 v2 = liftIO $ dyn97 ptr_glMatrixMultTranspose3x3fNV v1 v2
+
+{-# NOINLINE ptr_glMatrixMultTranspose3x3fNV #-}
+ptr_glMatrixMultTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixMultTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixMultTranspose3x3fNV"
+
+-- glMatrixMultTransposedEXT ---------------------------------------------------
+
+glMatrixMultTransposedEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMatrixMultTransposedEXT v1 v2 = liftIO $ dyn96 ptr_glMatrixMultTransposedEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixMultTransposedEXT #-}
+ptr_glMatrixMultTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMatrixMultTransposedEXT = unsafePerformIO $ getCommand "glMatrixMultTransposedEXT"
+
+-- glMatrixMultTransposefEXT ---------------------------------------------------
+
+glMatrixMultTransposefEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMatrixMultTransposefEXT v1 v2 = liftIO $ dyn97 ptr_glMatrixMultTransposefEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixMultTransposefEXT #-}
+ptr_glMatrixMultTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixMultTransposefEXT = unsafePerformIO $ getCommand "glMatrixMultTransposefEXT"
+
+-- glMatrixMultdEXT ------------------------------------------------------------
+
+glMatrixMultdEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMatrixMultdEXT v1 v2 = liftIO $ dyn96 ptr_glMatrixMultdEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixMultdEXT #-}
+ptr_glMatrixMultdEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMatrixMultdEXT = unsafePerformIO $ getCommand "glMatrixMultdEXT"
+
+-- glMatrixMultfEXT ------------------------------------------------------------
+
+glMatrixMultfEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMatrixMultfEXT v1 v2 = liftIO $ dyn97 ptr_glMatrixMultfEXT v1 v2
+
+{-# NOINLINE ptr_glMatrixMultfEXT #-}
+ptr_glMatrixMultfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMatrixMultfEXT = unsafePerformIO $ getCommand "glMatrixMultfEXT"
+
+-- glMatrixOrthoEXT ------------------------------------------------------------
+
+glMatrixOrthoEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @left@.
+  -> GLdouble -- ^ @right@.
+  -> GLdouble -- ^ @bottom@.
+  -> GLdouble -- ^ @top@.
+  -> GLdouble -- ^ @zNear@.
+  -> GLdouble -- ^ @zFar@.
+  -> m ()
+glMatrixOrthoEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn533 ptr_glMatrixOrthoEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMatrixOrthoEXT #-}
+ptr_glMatrixOrthoEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixOrthoEXT = unsafePerformIO $ getCommand "glMatrixOrthoEXT"
+
+-- glMatrixPopEXT --------------------------------------------------------------
+
+glMatrixPopEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> m ()
+glMatrixPopEXT v1 = liftIO $ dyn5 ptr_glMatrixPopEXT v1
+
+{-# NOINLINE ptr_glMatrixPopEXT #-}
+ptr_glMatrixPopEXT :: FunPtr (GLenum -> IO ())
+ptr_glMatrixPopEXT = unsafePerformIO $ getCommand "glMatrixPopEXT"
+
+-- glMatrixPushEXT -------------------------------------------------------------
+
+glMatrixPushEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> m ()
+glMatrixPushEXT v1 = liftIO $ dyn5 ptr_glMatrixPushEXT v1
+
+{-# NOINLINE ptr_glMatrixPushEXT #-}
+ptr_glMatrixPushEXT :: FunPtr (GLenum -> IO ())
+ptr_glMatrixPushEXT = unsafePerformIO $ getCommand "glMatrixPushEXT"
+
+-- glMatrixRotatedEXT ----------------------------------------------------------
+
+glMatrixRotatedEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @angle@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glMatrixRotatedEXT v1 v2 v3 v4 v5 = liftIO $ dyn537 ptr_glMatrixRotatedEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMatrixRotatedEXT #-}
+ptr_glMatrixRotatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixRotatedEXT = unsafePerformIO $ getCommand "glMatrixRotatedEXT"
+
+-- glMatrixRotatefEXT ----------------------------------------------------------
+
+glMatrixRotatefEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLfloat -- ^ @angle@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glMatrixRotatefEXT v1 v2 v3 v4 v5 = liftIO $ dyn538 ptr_glMatrixRotatefEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMatrixRotatefEXT #-}
+ptr_glMatrixRotatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMatrixRotatefEXT = unsafePerformIO $ getCommand "glMatrixRotatefEXT"
+
+-- glMatrixScaledEXT -----------------------------------------------------------
+
+glMatrixScaledEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glMatrixScaledEXT v1 v2 v3 v4 = liftIO $ dyn539 ptr_glMatrixScaledEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixScaledEXT #-}
+ptr_glMatrixScaledEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixScaledEXT = unsafePerformIO $ getCommand "glMatrixScaledEXT"
+
+-- glMatrixScalefEXT -----------------------------------------------------------
+
+glMatrixScalefEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glMatrixScalefEXT v1 v2 v3 v4 = liftIO $ dyn540 ptr_glMatrixScalefEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixScalefEXT #-}
+ptr_glMatrixScalefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMatrixScalefEXT = unsafePerformIO $ getCommand "glMatrixScalefEXT"
+
+-- glMatrixTranslatedEXT -------------------------------------------------------
+
+glMatrixTranslatedEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glMatrixTranslatedEXT v1 v2 v3 v4 = liftIO $ dyn539 ptr_glMatrixTranslatedEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixTranslatedEXT #-}
+ptr_glMatrixTranslatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixTranslatedEXT = unsafePerformIO $ getCommand "glMatrixTranslatedEXT"
+
+-- glMatrixTranslatefEXT -------------------------------------------------------
+
+glMatrixTranslatefEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glMatrixTranslatefEXT v1 v2 v3 v4 = liftIO $ dyn540 ptr_glMatrixTranslatefEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixTranslatefEXT #-}
+ptr_glMatrixTranslatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMatrixTranslatefEXT = unsafePerformIO $ getCommand "glMatrixTranslatefEXT"
+
+-- glMaxShaderCompilerThreadsARB -----------------------------------------------
+
+glMaxShaderCompilerThreadsARB
+  :: MonadIO m
+  => GLuint -- ^ @count@.
+  -> m ()
+glMaxShaderCompilerThreadsARB v1 = liftIO $ dyn3 ptr_glMaxShaderCompilerThreadsARB v1
+
+{-# NOINLINE ptr_glMaxShaderCompilerThreadsARB #-}
+ptr_glMaxShaderCompilerThreadsARB :: FunPtr (GLuint -> IO ())
+ptr_glMaxShaderCompilerThreadsARB = unsafePerformIO $ getCommand "glMaxShaderCompilerThreadsARB"
+
+-- glMemoryBarrier -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>.
+glMemoryBarrier
+  :: MonadIO m
+  => GLbitfield -- ^ @barriers@.
+  -> m ()
+glMemoryBarrier v1 = liftIO $ dyn72 ptr_glMemoryBarrier v1
+
+{-# NOINLINE ptr_glMemoryBarrier #-}
+ptr_glMemoryBarrier :: FunPtr (GLbitfield -> IO ())
+ptr_glMemoryBarrier = unsafePerformIO $ getCommand "glMemoryBarrier"
+
+-- glMemoryBarrierByRegion -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>.
+glMemoryBarrierByRegion
+  :: MonadIO m
+  => GLbitfield -- ^ @barriers@.
+  -> m ()
+glMemoryBarrierByRegion v1 = liftIO $ dyn72 ptr_glMemoryBarrierByRegion v1
+
+{-# NOINLINE ptr_glMemoryBarrierByRegion #-}
+ptr_glMemoryBarrierByRegion :: FunPtr (GLbitfield -> IO ())
+ptr_glMemoryBarrierByRegion = unsafePerformIO $ getCommand "glMemoryBarrierByRegion"
+
+-- glMemoryBarrierEXT ----------------------------------------------------------
+
+-- | This command is an alias for 'glMemoryBarrier'.
+glMemoryBarrierEXT
+  :: MonadIO m
+  => GLbitfield -- ^ @barriers@.
+  -> m ()
+glMemoryBarrierEXT v1 = liftIO $ dyn72 ptr_glMemoryBarrierEXT v1
+
+{-# NOINLINE ptr_glMemoryBarrierEXT #-}
+ptr_glMemoryBarrierEXT :: FunPtr (GLbitfield -> IO ())
+ptr_glMemoryBarrierEXT = unsafePerformIO $ getCommand "glMemoryBarrierEXT"
+
+-- glMemoryObjectParameterivEXT ------------------------------------------------
+
+glMemoryObjectParameterivEXT
+  :: MonadIO m
+  => GLuint -- ^ @memoryObject@.
+  -> GLenum -- ^ @pname@ of type [MemoryObjectParameterName](Graphics-GL-Groups.html#MemoryObjectParameterName).
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glMemoryObjectParameterivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glMemoryObjectParameterivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glMemoryObjectParameterivEXT #-}
+ptr_glMemoryObjectParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glMemoryObjectParameterivEXT = unsafePerformIO $ getCommand "glMemoryObjectParameterivEXT"
+
+-- glMinSampleShading ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMinSampleShading.xhtml OpenGL 4.x>.
+glMinSampleShading
+  :: MonadIO m
+  => GLfloat -- ^ @value@ of type @ColorF@.
+  -> m ()
+glMinSampleShading v1 = liftIO $ dyn82 ptr_glMinSampleShading v1
+
+{-# NOINLINE ptr_glMinSampleShading #-}
+ptr_glMinSampleShading :: FunPtr (GLfloat -> IO ())
+ptr_glMinSampleShading = unsafePerformIO $ getCommand "glMinSampleShading"
+
+-- glMinSampleShadingARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMinSampleShading'.
+glMinSampleShadingARB
+  :: MonadIO m
+  => GLfloat -- ^ @value@ of type @ColorF@.
+  -> m ()
+glMinSampleShadingARB v1 = liftIO $ dyn82 ptr_glMinSampleShadingARB v1
+
+{-# NOINLINE ptr_glMinSampleShadingARB #-}
+ptr_glMinSampleShadingARB :: FunPtr (GLfloat -> IO ())
+ptr_glMinSampleShadingARB = unsafePerformIO $ getCommand "glMinSampleShadingARB"
+
+-- glMinSampleShadingOES -------------------------------------------------------
+
+-- | This command is an alias for 'glMinSampleShading'.
+glMinSampleShadingOES
+  :: MonadIO m
+  => GLfloat -- ^ @value@ of type @ColorF@.
+  -> m ()
+glMinSampleShadingOES v1 = liftIO $ dyn82 ptr_glMinSampleShadingOES v1
+
+{-# NOINLINE ptr_glMinSampleShadingOES #-}
+ptr_glMinSampleShadingOES :: FunPtr (GLfloat -> IO ())
+ptr_glMinSampleShadingOES = unsafePerformIO $ getCommand "glMinSampleShadingOES"
+
+-- glMinmax --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMinmax.xml OpenGL 2.x>.
+glMinmax
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @MinmaxTarget@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glMinmax v1 v2 v3 = liftIO $ dyn541 ptr_glMinmax v1 v2 v3
+
+{-# NOINLINE ptr_glMinmax #-}
+ptr_glMinmax :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
+ptr_glMinmax = unsafePerformIO $ getCommand "glMinmax"
+
+-- glMinmaxEXT -----------------------------------------------------------------
+
+-- | This command is an alias for 'glMinmax'.
+glMinmaxEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MinmaxTargetEXT](Graphics-GL-Groups.html#MinmaxTargetEXT).
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLboolean -- ^ @sink@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glMinmaxEXT v1 v2 v3 = liftIO $ dyn541 ptr_glMinmaxEXT v1 v2 v3
+
+{-# NOINLINE ptr_glMinmaxEXT #-}
+ptr_glMinmaxEXT :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
+ptr_glMinmaxEXT = unsafePerformIO $ getCommand "glMinmaxEXT"
+
+-- glMultMatrixd ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>.
+glMultMatrixd
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMultMatrixd v1 = liftIO $ dyn40 ptr_glMultMatrixd v1
+
+{-# NOINLINE ptr_glMultMatrixd #-}
+ptr_glMultMatrixd :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glMultMatrixd = unsafePerformIO $ getCommand "glMultMatrixd"
+
+-- glMultMatrixf ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>.
+glMultMatrixf
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMultMatrixf v1 = liftIO $ dyn42 ptr_glMultMatrixf v1
+
+{-# NOINLINE ptr_glMultMatrixf #-}
+ptr_glMultMatrixf :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glMultMatrixf = unsafePerformIO $ getCommand "glMultMatrixf"
+
+-- glMultMatrixx ---------------------------------------------------------------
+
+glMultMatrixx
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glMultMatrixx v1 = liftIO $ dyn110 ptr_glMultMatrixx v1
+
+{-# NOINLINE ptr_glMultMatrixx #-}
+ptr_glMultMatrixx :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glMultMatrixx = unsafePerformIO $ getCommand "glMultMatrixx"
+
+-- glMultMatrixxOES ------------------------------------------------------------
+
+glMultMatrixxOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glMultMatrixxOES v1 = liftIO $ dyn110 ptr_glMultMatrixxOES v1
+
+{-# NOINLINE ptr_glMultMatrixxOES #-}
+ptr_glMultMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glMultMatrixxOES = unsafePerformIO $ getCommand "glMultMatrixxOES"
+
+-- glMultTransposeMatrixd ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>.
+glMultTransposeMatrixd
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMultTransposeMatrixd v1 = liftIO $ dyn40 ptr_glMultTransposeMatrixd v1
+
+{-# NOINLINE ptr_glMultTransposeMatrixd #-}
+ptr_glMultTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glMultTransposeMatrixd = unsafePerformIO $ getCommand "glMultTransposeMatrixd"
+
+-- glMultTransposeMatrixdARB ---------------------------------------------------
+
+-- | This command is an alias for 'glMultTransposeMatrixd'.
+glMultTransposeMatrixdARB
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
+  -> m ()
+glMultTransposeMatrixdARB v1 = liftIO $ dyn40 ptr_glMultTransposeMatrixdARB v1
+
+{-# NOINLINE ptr_glMultTransposeMatrixdARB #-}
+ptr_glMultTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glMultTransposeMatrixdARB = unsafePerformIO $ getCommand "glMultTransposeMatrixdARB"
+
+-- glMultTransposeMatrixf ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>.
+glMultTransposeMatrixf
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMultTransposeMatrixf v1 = liftIO $ dyn42 ptr_glMultTransposeMatrixf v1
+
+{-# NOINLINE ptr_glMultTransposeMatrixf #-}
+ptr_glMultTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glMultTransposeMatrixf = unsafePerformIO $ getCommand "glMultTransposeMatrixf"
+
+-- glMultTransposeMatrixfARB ---------------------------------------------------
+
+-- | This command is an alias for 'glMultTransposeMatrixf'.
+glMultTransposeMatrixfARB
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
+  -> m ()
+glMultTransposeMatrixfARB v1 = liftIO $ dyn42 ptr_glMultTransposeMatrixfARB v1
+
+{-# NOINLINE ptr_glMultTransposeMatrixfARB #-}
+ptr_glMultTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glMultTransposeMatrixfARB = unsafePerformIO $ getCommand "glMultTransposeMatrixfARB"
+
+-- glMultTransposeMatrixxOES ---------------------------------------------------
+
+glMultTransposeMatrixxOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
+  -> m ()
+glMultTransposeMatrixxOES v1 = liftIO $ dyn110 ptr_glMultTransposeMatrixxOES v1
+
+{-# NOINLINE ptr_glMultTransposeMatrixxOES #-}
+ptr_glMultTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glMultTransposeMatrixxOES = unsafePerformIO $ getCommand "glMultTransposeMatrixxOES"
+
+-- glMultiDrawArrays -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawArrays.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArrays.xhtml OpenGL 4.x>.
+glMultiDrawArrays
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
+  -> GLsizei -- ^ @drawcount@.
+  -> m ()
+glMultiDrawArrays v1 v2 v3 v4 = liftIO $ dyn542 ptr_glMultiDrawArrays v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawArrays #-}
+ptr_glMultiDrawArrays :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArrays = unsafePerformIO $ getCommand "glMultiDrawArrays"
+
+-- glMultiDrawArraysEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawArrays'.
+glMultiDrawArraysEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
+  -> GLsizei -- ^ @primcount@.
+  -> m ()
+glMultiDrawArraysEXT v1 v2 v3 v4 = liftIO $ dyn542 ptr_glMultiDrawArraysEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawArraysEXT #-}
+ptr_glMultiDrawArraysEXT :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArraysEXT = unsafePerformIO $ getCommand "glMultiDrawArraysEXT"
+
+-- glMultiDrawArraysIndirect ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArraysIndirect.xhtml OpenGL 4.x>.
+glMultiDrawArraysIndirect
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawArraysIndirect v1 v2 v3 v4 = liftIO $ dyn543 ptr_glMultiDrawArraysIndirect v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirect #-}
+ptr_glMultiDrawArraysIndirect :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArraysIndirect = unsafePerformIO $ getCommand "glMultiDrawArraysIndirect"
+
+-- glMultiDrawArraysIndirectAMD ------------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawArraysIndirect'.
+glMultiDrawArraysIndirectAMD
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @primcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawArraysIndirectAMD v1 v2 v3 v4 = liftIO $ dyn543 ptr_glMultiDrawArraysIndirectAMD v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirectAMD #-}
+ptr_glMultiDrawArraysIndirectAMD :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArraysIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectAMD"
+
+-- glMultiDrawArraysIndirectBindlessCountNV ------------------------------------
+
+glMultiDrawArraysIndirectBindlessCountNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @drawCount@.
+  -> GLsizei -- ^ @maxDrawCount@.
+  -> GLsizei -- ^ @stride@.
+  -> GLint -- ^ @vertexBufferCount@.
+  -> m ()
+glMultiDrawArraysIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn544 ptr_glMultiDrawArraysIndirectBindlessCountNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessCountNV #-}
+ptr_glMultiDrawArraysIndirectBindlessCountNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
+ptr_glMultiDrawArraysIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessCountNV"
+
+-- glMultiDrawArraysIndirectBindlessNV -----------------------------------------
+
+glMultiDrawArraysIndirectBindlessNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @drawCount@.
+  -> GLsizei -- ^ @stride@.
+  -> GLint -- ^ @vertexBufferCount@.
+  -> m ()
+glMultiDrawArraysIndirectBindlessNV v1 v2 v3 v4 v5 = liftIO $ dyn545 ptr_glMultiDrawArraysIndirectBindlessNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessNV #-}
+ptr_glMultiDrawArraysIndirectBindlessNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
+ptr_glMultiDrawArraysIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessNV"
+
+-- glMultiDrawArraysIndirectCountARB -------------------------------------------
+
+glMultiDrawArraysIndirectCountARB
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLintptr -- ^ @indirect@.
+  -> GLintptr -- ^ @drawcount@.
+  -> GLsizei -- ^ @maxdrawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawArraysIndirectCountARB v1 v2 v3 v4 v5 = liftIO $ dyn546 ptr_glMultiDrawArraysIndirectCountARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirectCountARB #-}
+ptr_glMultiDrawArraysIndirectCountARB :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArraysIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectCountARB"
+
+-- glMultiDrawArraysIndirectEXT ------------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawArraysIndirect'.
+glMultiDrawArraysIndirectEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawArraysIndirectEXT v1 v2 v3 v4 = liftIO $ dyn543 ptr_glMultiDrawArraysIndirectEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawArraysIndirectEXT #-}
+ptr_glMultiDrawArraysIndirectEXT :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawArraysIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectEXT"
+
+-- glMultiDrawElementArrayAPPLE ------------------------------------------------
+
+glMultiDrawElementArrayAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
+  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
+  -> GLsizei -- ^ @primcount@.
+  -> m ()
+glMultiDrawElementArrayAPPLE v1 v2 v3 v4 = liftIO $ dyn542 ptr_glMultiDrawElementArrayAPPLE v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiDrawElementArrayAPPLE #-}
+ptr_glMultiDrawElementArrayAPPLE :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawElementArrayAPPLE"
+
+-- glMultiDrawElements ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawElements.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElements.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElements.xhtml OpenGL 4.x>.
+glMultiDrawElements
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> m ()
+glMultiDrawElements v1 v2 v3 v4 v5 = liftIO $ dyn547 ptr_glMultiDrawElements v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawElements #-}
+ptr_glMultiDrawElements :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
+ptr_glMultiDrawElements = unsafePerformIO $ getCommand "glMultiDrawElements"
+
+-- glMultiDrawElementsBaseVertex -----------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElementsBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsBaseVertex.xhtml OpenGL 4.x>.
+glMultiDrawElementsBaseVertex
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
+  -> m ()
+glMultiDrawElementsBaseVertex v1 v2 v3 v4 v5 v6 = liftIO $ dyn548 ptr_glMultiDrawElementsBaseVertex v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawElementsBaseVertex #-}
+ptr_glMultiDrawElementsBaseVertex :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
+ptr_glMultiDrawElementsBaseVertex = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertex"
+
+-- glMultiDrawElementsBaseVertexEXT --------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawElementsBaseVertex'.
+glMultiDrawElementsBaseVertexEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @primcount@.
+  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
+  -> m ()
+glMultiDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn548 ptr_glMultiDrawElementsBaseVertexEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawElementsBaseVertexEXT #-}
+ptr_glMultiDrawElementsBaseVertexEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
+ptr_glMultiDrawElementsBaseVertexEXT = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexEXT"
+
+-- glMultiDrawElementsBaseVertexOES --------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawElementsBaseVertex'.
+glMultiDrawElementsBaseVertexOES
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @primcount@.
+  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
+  -> m ()
+glMultiDrawElementsBaseVertexOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn548 ptr_glMultiDrawElementsBaseVertexOES v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawElementsBaseVertexOES #-}
+ptr_glMultiDrawElementsBaseVertexOES :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
+ptr_glMultiDrawElementsBaseVertexOES = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexOES"
 
diff --git a/src/Graphics/GL/Functions/F17.hs b/src/Graphics/GL/Functions/F17.hs
--- a/src/Graphics/GL/Functions/F17.hs
+++ b/src/Graphics/GL/Functions/F17.hs
@@ -15,1608 +15,1590 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F17 (
-  glMultiTexCoord1sv,
-  glMultiTexCoord1svARB,
-  glMultiTexCoord1xOES,
-  glMultiTexCoord1xvOES,
-  glMultiTexCoord2bOES,
-  glMultiTexCoord2bvOES,
-  glMultiTexCoord2d,
-  glMultiTexCoord2dARB,
-  glMultiTexCoord2dv,
-  glMultiTexCoord2dvARB,
-  glMultiTexCoord2f,
-  glMultiTexCoord2fARB,
-  glMultiTexCoord2fv,
-  glMultiTexCoord2fvARB,
-  glMultiTexCoord2hNV,
-  glMultiTexCoord2hvNV,
-  glMultiTexCoord2i,
-  glMultiTexCoord2iARB,
-  glMultiTexCoord2iv,
-  glMultiTexCoord2ivARB,
-  glMultiTexCoord2s,
-  glMultiTexCoord2sARB,
-  glMultiTexCoord2sv,
-  glMultiTexCoord2svARB,
-  glMultiTexCoord2xOES,
-  glMultiTexCoord2xvOES,
-  glMultiTexCoord3bOES,
-  glMultiTexCoord3bvOES,
-  glMultiTexCoord3d,
-  glMultiTexCoord3dARB,
-  glMultiTexCoord3dv,
-  glMultiTexCoord3dvARB,
-  glMultiTexCoord3f,
-  glMultiTexCoord3fARB,
-  glMultiTexCoord3fv,
-  glMultiTexCoord3fvARB,
-  glMultiTexCoord3hNV,
-  glMultiTexCoord3hvNV,
-  glMultiTexCoord3i,
-  glMultiTexCoord3iARB,
-  glMultiTexCoord3iv,
-  glMultiTexCoord3ivARB,
-  glMultiTexCoord3s,
-  glMultiTexCoord3sARB,
-  glMultiTexCoord3sv,
-  glMultiTexCoord3svARB,
-  glMultiTexCoord3xOES,
-  glMultiTexCoord3xvOES,
-  glMultiTexCoord4bOES,
-  glMultiTexCoord4bvOES,
-  glMultiTexCoord4d,
-  glMultiTexCoord4dARB,
-  glMultiTexCoord4dv,
-  glMultiTexCoord4dvARB,
-  glMultiTexCoord4f,
-  glMultiTexCoord4fARB,
-  glMultiTexCoord4fv,
-  glMultiTexCoord4fvARB,
-  glMultiTexCoord4hNV,
-  glMultiTexCoord4hvNV,
-  glMultiTexCoord4i,
-  glMultiTexCoord4iARB,
-  glMultiTexCoord4iv,
-  glMultiTexCoord4ivARB,
-  glMultiTexCoord4s,
-  glMultiTexCoord4sARB,
-  glMultiTexCoord4sv,
-  glMultiTexCoord4svARB,
-  glMultiTexCoord4x,
-  glMultiTexCoord4xOES,
-  glMultiTexCoord4xvOES,
-  glMultiTexCoordP1ui,
-  glMultiTexCoordP1uiv,
-  glMultiTexCoordP2ui,
-  glMultiTexCoordP2uiv,
-  glMultiTexCoordP3ui,
-  glMultiTexCoordP3uiv,
-  glMultiTexCoordP4ui,
-  glMultiTexCoordP4uiv,
-  glMultiTexCoordPointerEXT,
-  glMultiTexEnvfEXT,
-  glMultiTexEnvfvEXT,
-  glMultiTexEnviEXT,
-  glMultiTexEnvivEXT,
-  glMultiTexGendEXT,
-  glMultiTexGendvEXT,
-  glMultiTexGenfEXT,
-  glMultiTexGenfvEXT,
-  glMultiTexGeniEXT,
-  glMultiTexGenivEXT,
-  glMultiTexImage1DEXT,
-  glMultiTexImage2DEXT,
-  glMultiTexImage3DEXT,
-  glMultiTexParameterIivEXT,
-  glMultiTexParameterIuivEXT,
-  glMultiTexParameterfEXT,
-  glMultiTexParameterfvEXT,
-  glMultiTexParameteriEXT,
-  glMultiTexParameterivEXT,
-  glMultiTexRenderbufferEXT
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glMultiTexCoord1sv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord1sv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
-  -> m ()
-glMultiTexCoord1sv v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord1sv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1sv #-}
-ptr_glMultiTexCoord1sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord1sv = unsafePerformIO $ getCommand "glMultiTexCoord1sv"
-
--- glMultiTexCoord1svARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord1sv'.
-glMultiTexCoord1svARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
-  -> m ()
-glMultiTexCoord1svARB v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord1svARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1svARB #-}
-ptr_glMultiTexCoord1svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord1svARB = unsafePerformIO $ getCommand "glMultiTexCoord1svARB"
-
--- glMultiTexCoord1xOES --------------------------------------------------------
-
-glMultiTexCoord1xOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLfixed -- ^ @s@.
-  -> m ()
-glMultiTexCoord1xOES v1 v2 = liftIO $ dyn1 ptr_glMultiTexCoord1xOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1xOES #-}
-ptr_glMultiTexCoord1xOES :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glMultiTexCoord1xOES = unsafePerformIO $ getCommand "glMultiTexCoord1xOES"
-
--- glMultiTexCoord1xvOES -------------------------------------------------------
-
-glMultiTexCoord1xvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLfixed -- ^ @coords@ pointing to @1@ element of type @GLfixed@.
-  -> m ()
-glMultiTexCoord1xvOES v1 v2 = liftIO $ dyn95 ptr_glMultiTexCoord1xvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord1xvOES #-}
-ptr_glMultiTexCoord1xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glMultiTexCoord1xvOES = unsafePerformIO $ getCommand "glMultiTexCoord1xvOES"
-
--- glMultiTexCoord2bOES --------------------------------------------------------
-
-glMultiTexCoord2bOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> m ()
-glMultiTexCoord2bOES v1 v2 v3 = liftIO $ dyn548 ptr_glMultiTexCoord2bOES v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2bOES #-}
-ptr_glMultiTexCoord2bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
-ptr_glMultiTexCoord2bOES = unsafePerformIO $ getCommand "glMultiTexCoord2bOES"
-
--- glMultiTexCoord2bvOES -------------------------------------------------------
-
-glMultiTexCoord2bvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
-  -> m ()
-glMultiTexCoord2bvOES v1 v2 = liftIO $ dyn542 ptr_glMultiTexCoord2bvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2bvOES #-}
-ptr_glMultiTexCoord2bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-ptr_glMultiTexCoord2bvOES = unsafePerformIO $ getCommand "glMultiTexCoord2bvOES"
-
--- glMultiTexCoord2d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2dv'.
-glMultiTexCoord2d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord2d v1 v2 v3 = liftIO $ dyn549 ptr_glMultiTexCoord2d v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2d #-}
-ptr_glMultiTexCoord2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord2d = unsafePerformIO $ getCommand "glMultiTexCoord2d"
-
--- glMultiTexCoord2dARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2dv'. This command is an alias for 'glMultiTexCoord2d'.
-glMultiTexCoord2dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord2dARB v1 v2 v3 = liftIO $ dyn549 ptr_glMultiTexCoord2dARB v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2dARB #-}
-ptr_glMultiTexCoord2dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord2dARB = unsafePerformIO $ getCommand "glMultiTexCoord2dARB"
-
--- glMultiTexCoord2dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord2dv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord2dv v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord2dv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2dv #-}
-ptr_glMultiTexCoord2dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord2dv = unsafePerformIO $ getCommand "glMultiTexCoord2dv"
-
--- glMultiTexCoord2dvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord2dv'.
-glMultiTexCoord2dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord2dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord2dvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2dvARB #-}
-ptr_glMultiTexCoord2dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord2dvARB = unsafePerformIO $ getCommand "glMultiTexCoord2dvARB"
-
--- glMultiTexCoord2f -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2fv'.
-glMultiTexCoord2f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord2f v1 v2 v3 = liftIO $ dyn550 ptr_glMultiTexCoord2f v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2f #-}
-ptr_glMultiTexCoord2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord2f = unsafePerformIO $ getCommand "glMultiTexCoord2f"
-
--- glMultiTexCoord2fARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2fv'. This command is an alias for 'glMultiTexCoord2f'.
-glMultiTexCoord2fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord2fARB v1 v2 v3 = liftIO $ dyn550 ptr_glMultiTexCoord2fARB v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2fARB #-}
-ptr_glMultiTexCoord2fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord2fARB = unsafePerformIO $ getCommand "glMultiTexCoord2fARB"
-
--- glMultiTexCoord2fv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord2fv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord2fv v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord2fv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2fv #-}
-ptr_glMultiTexCoord2fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord2fv = unsafePerformIO $ getCommand "glMultiTexCoord2fv"
-
--- glMultiTexCoord2fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord2fv'.
-glMultiTexCoord2fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord2fvARB v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord2fvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2fvARB #-}
-ptr_glMultiTexCoord2fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord2fvARB = unsafePerformIO $ getCommand "glMultiTexCoord2fvARB"
-
--- glMultiTexCoord2hNV ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2hvNV'.
-glMultiTexCoord2hNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> m ()
-glMultiTexCoord2hNV v1 v2 v3 = liftIO $ dyn551 ptr_glMultiTexCoord2hNV v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2hNV #-}
-ptr_glMultiTexCoord2hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glMultiTexCoord2hNV = unsafePerformIO $ getCommand "glMultiTexCoord2hNV"
-
--- glMultiTexCoord2hvNV --------------------------------------------------------
-
-glMultiTexCoord2hvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
-  -> m ()
-glMultiTexCoord2hvNV v1 v2 = liftIO $ dyn545 ptr_glMultiTexCoord2hvNV v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2hvNV #-}
-ptr_glMultiTexCoord2hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
-ptr_glMultiTexCoord2hvNV = unsafePerformIO $ getCommand "glMultiTexCoord2hvNV"
-
--- glMultiTexCoord2i -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2iv'.
-glMultiTexCoord2i
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord2i v1 v2 v3 = liftIO $ dyn264 ptr_glMultiTexCoord2i v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2i #-}
-ptr_glMultiTexCoord2i :: FunPtr (GLenum -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord2i = unsafePerformIO $ getCommand "glMultiTexCoord2i"
-
--- glMultiTexCoord2iARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2iv'. This command is an alias for 'glMultiTexCoord2i'.
-glMultiTexCoord2iARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord2iARB v1 v2 v3 = liftIO $ dyn264 ptr_glMultiTexCoord2iARB v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2iARB #-}
-ptr_glMultiTexCoord2iARB :: FunPtr (GLenum -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord2iARB = unsafePerformIO $ getCommand "glMultiTexCoord2iARB"
-
--- glMultiTexCoord2iv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord2iv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord2iv v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord2iv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2iv #-}
-ptr_glMultiTexCoord2iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord2iv = unsafePerformIO $ getCommand "glMultiTexCoord2iv"
-
--- glMultiTexCoord2ivARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord2iv'.
-glMultiTexCoord2ivARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord2ivARB v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord2ivARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2ivARB #-}
-ptr_glMultiTexCoord2ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord2ivARB = unsafePerformIO $ getCommand "glMultiTexCoord2ivARB"
-
--- glMultiTexCoord2s -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2sv'.
-glMultiTexCoord2s
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord2s v1 v2 v3 = liftIO $ dyn552 ptr_glMultiTexCoord2s v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2s #-}
-ptr_glMultiTexCoord2s :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord2s = unsafePerformIO $ getCommand "glMultiTexCoord2s"
-
--- glMultiTexCoord2sARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2sv'. This command is an alias for 'glMultiTexCoord2s'.
-glMultiTexCoord2sARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord2sARB v1 v2 v3 = liftIO $ dyn552 ptr_glMultiTexCoord2sARB v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2sARB #-}
-ptr_glMultiTexCoord2sARB :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord2sARB = unsafePerformIO $ getCommand "glMultiTexCoord2sARB"
-
--- glMultiTexCoord2sv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord2sv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord2sv v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord2sv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2sv #-}
-ptr_glMultiTexCoord2sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord2sv = unsafePerformIO $ getCommand "glMultiTexCoord2sv"
-
--- glMultiTexCoord2svARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord2sv'.
-glMultiTexCoord2svARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord2svARB v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord2svARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2svARB #-}
-ptr_glMultiTexCoord2svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord2svARB = unsafePerformIO $ getCommand "glMultiTexCoord2svARB"
-
--- glMultiTexCoord2xOES --------------------------------------------------------
-
-glMultiTexCoord2xOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> m ()
-glMultiTexCoord2xOES v1 v2 v3 = liftIO $ dyn553 ptr_glMultiTexCoord2xOES v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2xOES #-}
-ptr_glMultiTexCoord2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
-ptr_glMultiTexCoord2xOES = unsafePerformIO $ getCommand "glMultiTexCoord2xOES"
-
--- glMultiTexCoord2xvOES -------------------------------------------------------
-
-glMultiTexCoord2xvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glMultiTexCoord2xvOES v1 v2 = liftIO $ dyn95 ptr_glMultiTexCoord2xvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2xvOES #-}
-ptr_glMultiTexCoord2xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glMultiTexCoord2xvOES = unsafePerformIO $ getCommand "glMultiTexCoord2xvOES"
-
--- glMultiTexCoord3bOES --------------------------------------------------------
-
-glMultiTexCoord3bOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> GLbyte -- ^ @r@.
-  -> m ()
-glMultiTexCoord3bOES v1 v2 v3 v4 = liftIO $ dyn554 ptr_glMultiTexCoord3bOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3bOES #-}
-ptr_glMultiTexCoord3bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glMultiTexCoord3bOES = unsafePerformIO $ getCommand "glMultiTexCoord3bOES"
-
--- glMultiTexCoord3bvOES -------------------------------------------------------
-
-glMultiTexCoord3bvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glMultiTexCoord3bvOES v1 v2 = liftIO $ dyn542 ptr_glMultiTexCoord3bvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3bvOES #-}
-ptr_glMultiTexCoord3bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-ptr_glMultiTexCoord3bvOES = unsafePerformIO $ getCommand "glMultiTexCoord3bvOES"
-
--- glMultiTexCoord3d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3dv'.
-glMultiTexCoord3d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord3d v1 v2 v3 v4 = liftIO $ dyn524 ptr_glMultiTexCoord3d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3d #-}
-ptr_glMultiTexCoord3d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord3d = unsafePerformIO $ getCommand "glMultiTexCoord3d"
-
--- glMultiTexCoord3dARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord3dv'. This command is an alias for 'glMultiTexCoord3d'.
-glMultiTexCoord3dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord3dARB v1 v2 v3 v4 = liftIO $ dyn524 ptr_glMultiTexCoord3dARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3dARB #-}
-ptr_glMultiTexCoord3dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord3dARB = unsafePerformIO $ getCommand "glMultiTexCoord3dARB"
-
--- glMultiTexCoord3dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord3dv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord3dv v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord3dv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3dv #-}
-ptr_glMultiTexCoord3dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord3dv = unsafePerformIO $ getCommand "glMultiTexCoord3dv"
-
--- glMultiTexCoord3dvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord3dv'.
-glMultiTexCoord3dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord3dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord3dvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3dvARB #-}
-ptr_glMultiTexCoord3dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord3dvARB = unsafePerformIO $ getCommand "glMultiTexCoord3dvARB"
-
--- glMultiTexCoord3f -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3fv'.
-glMultiTexCoord3f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord3f v1 v2 v3 v4 = liftIO $ dyn525 ptr_glMultiTexCoord3f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3f #-}
-ptr_glMultiTexCoord3f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord3f = unsafePerformIO $ getCommand "glMultiTexCoord3f"
-
--- glMultiTexCoord3fARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord3fv'. This command is an alias for 'glMultiTexCoord3f'.
-glMultiTexCoord3fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord3fARB v1 v2 v3 v4 = liftIO $ dyn525 ptr_glMultiTexCoord3fARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3fARB #-}
-ptr_glMultiTexCoord3fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord3fARB = unsafePerformIO $ getCommand "glMultiTexCoord3fARB"
-
--- glMultiTexCoord3fv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord3fv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord3fv v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord3fv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3fv #-}
-ptr_glMultiTexCoord3fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord3fv = unsafePerformIO $ getCommand "glMultiTexCoord3fv"
-
--- glMultiTexCoord3fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord3fv'.
-glMultiTexCoord3fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord3fvARB v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord3fvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3fvARB #-}
-ptr_glMultiTexCoord3fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord3fvARB = unsafePerformIO $ getCommand "glMultiTexCoord3fvARB"
-
--- glMultiTexCoord3hNV ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord3hvNV'.
-glMultiTexCoord3hNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
-  -> m ()
-glMultiTexCoord3hNV v1 v2 v3 v4 = liftIO $ dyn555 ptr_glMultiTexCoord3hNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3hNV #-}
-ptr_glMultiTexCoord3hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glMultiTexCoord3hNV = unsafePerformIO $ getCommand "glMultiTexCoord3hNV"
-
--- glMultiTexCoord3hvNV --------------------------------------------------------
-
-glMultiTexCoord3hvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glMultiTexCoord3hvNV v1 v2 = liftIO $ dyn545 ptr_glMultiTexCoord3hvNV v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3hvNV #-}
-ptr_glMultiTexCoord3hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
-ptr_glMultiTexCoord3hvNV = unsafePerformIO $ getCommand "glMultiTexCoord3hvNV"
-
--- glMultiTexCoord3i -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3iv'.
-glMultiTexCoord3i
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord3i v1 v2 v3 v4 = liftIO $ dyn556 ptr_glMultiTexCoord3i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3i #-}
-ptr_glMultiTexCoord3i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord3i = unsafePerformIO $ getCommand "glMultiTexCoord3i"
-
--- glMultiTexCoord3iARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord3iv'. This command is an alias for 'glMultiTexCoord3i'.
-glMultiTexCoord3iARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord3iARB v1 v2 v3 v4 = liftIO $ dyn556 ptr_glMultiTexCoord3iARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3iARB #-}
-ptr_glMultiTexCoord3iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord3iARB = unsafePerformIO $ getCommand "glMultiTexCoord3iARB"
-
--- glMultiTexCoord3iv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord3iv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord3iv v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord3iv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3iv #-}
-ptr_glMultiTexCoord3iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord3iv = unsafePerformIO $ getCommand "glMultiTexCoord3iv"
-
--- glMultiTexCoord3ivARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord3iv'.
-glMultiTexCoord3ivARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord3ivARB v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord3ivARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3ivARB #-}
-ptr_glMultiTexCoord3ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord3ivARB = unsafePerformIO $ getCommand "glMultiTexCoord3ivARB"
-
--- glMultiTexCoord3s -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3sv'.
-glMultiTexCoord3s
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord3s v1 v2 v3 v4 = liftIO $ dyn557 ptr_glMultiTexCoord3s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3s #-}
-ptr_glMultiTexCoord3s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord3s = unsafePerformIO $ getCommand "glMultiTexCoord3s"
-
--- glMultiTexCoord3sARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord3sv'. This command is an alias for 'glMultiTexCoord3s'.
-glMultiTexCoord3sARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord3sARB v1 v2 v3 v4 = liftIO $ dyn557 ptr_glMultiTexCoord3sARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3sARB #-}
-ptr_glMultiTexCoord3sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord3sARB = unsafePerformIO $ getCommand "glMultiTexCoord3sARB"
-
--- glMultiTexCoord3sv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord3sv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord3sv v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord3sv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3sv #-}
-ptr_glMultiTexCoord3sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord3sv = unsafePerformIO $ getCommand "glMultiTexCoord3sv"
-
--- glMultiTexCoord3svARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord3sv'.
-glMultiTexCoord3svARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord3svARB v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord3svARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3svARB #-}
-ptr_glMultiTexCoord3svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord3svARB = unsafePerformIO $ getCommand "glMultiTexCoord3svARB"
-
--- glMultiTexCoord3xOES --------------------------------------------------------
-
-glMultiTexCoord3xOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> m ()
-glMultiTexCoord3xOES v1 v2 v3 v4 = liftIO $ dyn558 ptr_glMultiTexCoord3xOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexCoord3xOES #-}
-ptr_glMultiTexCoord3xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glMultiTexCoord3xOES = unsafePerformIO $ getCommand "glMultiTexCoord3xOES"
-
--- glMultiTexCoord3xvOES -------------------------------------------------------
-
-glMultiTexCoord3xvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
-  -> m ()
-glMultiTexCoord3xvOES v1 v2 = liftIO $ dyn95 ptr_glMultiTexCoord3xvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord3xvOES #-}
-ptr_glMultiTexCoord3xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glMultiTexCoord3xvOES = unsafePerformIO $ getCommand "glMultiTexCoord3xvOES"
-
--- glMultiTexCoord4bOES --------------------------------------------------------
-
-glMultiTexCoord4bOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> GLbyte -- ^ @r@.
-  -> GLbyte -- ^ @q@.
-  -> m ()
-glMultiTexCoord4bOES v1 v2 v3 v4 v5 = liftIO $ dyn559 ptr_glMultiTexCoord4bOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4bOES #-}
-ptr_glMultiTexCoord4bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glMultiTexCoord4bOES = unsafePerformIO $ getCommand "glMultiTexCoord4bOES"
-
--- glMultiTexCoord4bvOES -------------------------------------------------------
-
-glMultiTexCoord4bvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glMultiTexCoord4bvOES v1 v2 = liftIO $ dyn542 ptr_glMultiTexCoord4bvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4bvOES #-}
-ptr_glMultiTexCoord4bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-ptr_glMultiTexCoord4bvOES = unsafePerformIO $ getCommand "glMultiTexCoord4bvOES"
-
--- glMultiTexCoord4d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4dv'.
-glMultiTexCoord4d
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> GLdouble -- ^ @q@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord4d v1 v2 v3 v4 v5 = liftIO $ dyn522 ptr_glMultiTexCoord4d v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4d #-}
-ptr_glMultiTexCoord4d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord4d = unsafePerformIO $ getCommand "glMultiTexCoord4d"
-
--- glMultiTexCoord4dARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord4dv'. This command is an alias for 'glMultiTexCoord4d'.
-glMultiTexCoord4dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> GLdouble -- ^ @q@ of type @CoordD@.
-  -> m ()
-glMultiTexCoord4dARB v1 v2 v3 v4 v5 = liftIO $ dyn522 ptr_glMultiTexCoord4dARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4dARB #-}
-ptr_glMultiTexCoord4dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMultiTexCoord4dARB = unsafePerformIO $ getCommand "glMultiTexCoord4dARB"
-
--- glMultiTexCoord4dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord4dv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord4dv v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord4dv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4dv #-}
-ptr_glMultiTexCoord4dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord4dv = unsafePerformIO $ getCommand "glMultiTexCoord4dv"
-
--- glMultiTexCoord4dvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord4dv'.
-glMultiTexCoord4dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord4dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord4dvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4dvARB #-}
-ptr_glMultiTexCoord4dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord4dvARB = unsafePerformIO $ getCommand "glMultiTexCoord4dvARB"
-
--- glMultiTexCoord4f -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4fv'.
-glMultiTexCoord4f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> GLfloat -- ^ @q@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord4f v1 v2 v3 v4 v5 = liftIO $ dyn523 ptr_glMultiTexCoord4f v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4f #-}
-ptr_glMultiTexCoord4f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord4f = unsafePerformIO $ getCommand "glMultiTexCoord4f"
-
--- glMultiTexCoord4fARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord4fv'. This command is an alias for 'glMultiTexCoord4f'.
-glMultiTexCoord4fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> GLfloat -- ^ @q@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord4fARB v1 v2 v3 v4 v5 = liftIO $ dyn523 ptr_glMultiTexCoord4fARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4fARB #-}
-ptr_glMultiTexCoord4fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord4fARB = unsafePerformIO $ getCommand "glMultiTexCoord4fARB"
-
--- glMultiTexCoord4fv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord4fv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord4fv v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord4fv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4fv #-}
-ptr_glMultiTexCoord4fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord4fv = unsafePerformIO $ getCommand "glMultiTexCoord4fv"
-
--- glMultiTexCoord4fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord4fv'.
-glMultiTexCoord4fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glMultiTexCoord4fvARB v1 v2 = liftIO $ dyn94 ptr_glMultiTexCoord4fvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4fvARB #-}
-ptr_glMultiTexCoord4fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexCoord4fvARB = unsafePerformIO $ getCommand "glMultiTexCoord4fvARB"
-
--- glMultiTexCoord4hNV ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord4hvNV'.
-glMultiTexCoord4hNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
-  -> m ()
-glMultiTexCoord4hNV v1 v2 v3 v4 v5 = liftIO $ dyn560 ptr_glMultiTexCoord4hNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4hNV #-}
-ptr_glMultiTexCoord4hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glMultiTexCoord4hNV = unsafePerformIO $ getCommand "glMultiTexCoord4hNV"
-
--- glMultiTexCoord4hvNV --------------------------------------------------------
-
-glMultiTexCoord4hvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
-  -> m ()
-glMultiTexCoord4hvNV v1 v2 = liftIO $ dyn545 ptr_glMultiTexCoord4hvNV v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4hvNV #-}
-ptr_glMultiTexCoord4hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
-ptr_glMultiTexCoord4hvNV = unsafePerformIO $ getCommand "glMultiTexCoord4hvNV"
-
--- glMultiTexCoord4i -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4iv'.
-glMultiTexCoord4i
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> GLint -- ^ @q@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord4i v1 v2 v3 v4 v5 = liftIO $ dyn265 ptr_glMultiTexCoord4i v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4i #-}
-ptr_glMultiTexCoord4i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord4i = unsafePerformIO $ getCommand "glMultiTexCoord4i"
-
--- glMultiTexCoord4iARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord4iv'. This command is an alias for 'glMultiTexCoord4i'.
-glMultiTexCoord4iARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> GLint -- ^ @q@ of type @CoordI@.
-  -> m ()
-glMultiTexCoord4iARB v1 v2 v3 v4 v5 = liftIO $ dyn265 ptr_glMultiTexCoord4iARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4iARB #-}
-ptr_glMultiTexCoord4iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glMultiTexCoord4iARB = unsafePerformIO $ getCommand "glMultiTexCoord4iARB"
-
--- glMultiTexCoord4iv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord4iv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord4iv v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord4iv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4iv #-}
-ptr_glMultiTexCoord4iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord4iv = unsafePerformIO $ getCommand "glMultiTexCoord4iv"
-
--- glMultiTexCoord4ivARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord4iv'.
-glMultiTexCoord4ivARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glMultiTexCoord4ivARB v1 v2 = liftIO $ dyn136 ptr_glMultiTexCoord4ivARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4ivARB #-}
-ptr_glMultiTexCoord4ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexCoord4ivARB = unsafePerformIO $ getCommand "glMultiTexCoord4ivARB"
-
--- glMultiTexCoord4s -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4sv'.
-glMultiTexCoord4s
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> GLshort -- ^ @q@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord4s v1 v2 v3 v4 v5 = liftIO $ dyn561 ptr_glMultiTexCoord4s v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4s #-}
-ptr_glMultiTexCoord4s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord4s = unsafePerformIO $ getCommand "glMultiTexCoord4s"
-
--- glMultiTexCoord4sARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord4sv'. This command is an alias for 'glMultiTexCoord4s'.
-glMultiTexCoord4sARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> GLshort -- ^ @q@ of type @CoordS@.
-  -> m ()
-glMultiTexCoord4sARB v1 v2 v3 v4 v5 = liftIO $ dyn561 ptr_glMultiTexCoord4sARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4sARB #-}
-ptr_glMultiTexCoord4sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glMultiTexCoord4sARB = unsafePerformIO $ getCommand "glMultiTexCoord4sARB"
-
--- glMultiTexCoord4sv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
-glMultiTexCoord4sv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord4sv v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord4sv v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4sv #-}
-ptr_glMultiTexCoord4sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord4sv = unsafePerformIO $ getCommand "glMultiTexCoord4sv"
-
--- glMultiTexCoord4svARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord4sv'.
-glMultiTexCoord4svARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glMultiTexCoord4svARB v1 v2 = liftIO $ dyn547 ptr_glMultiTexCoord4svARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4svARB #-}
-ptr_glMultiTexCoord4svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glMultiTexCoord4svARB = unsafePerformIO $ getCommand "glMultiTexCoord4svARB"
-
--- glMultiTexCoord4x -----------------------------------------------------------
-
-glMultiTexCoord4x
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @q@.
-  -> m ()
-glMultiTexCoord4x v1 v2 v3 v4 v5 = liftIO $ dyn562 ptr_glMultiTexCoord4x v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4x #-}
-ptr_glMultiTexCoord4x :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glMultiTexCoord4x = unsafePerformIO $ getCommand "glMultiTexCoord4x"
-
--- glMultiTexCoord4xOES --------------------------------------------------------
-
-glMultiTexCoord4xOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @q@.
-  -> m ()
-glMultiTexCoord4xOES v1 v2 v3 v4 v5 = liftIO $ dyn562 ptr_glMultiTexCoord4xOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoord4xOES #-}
-ptr_glMultiTexCoord4xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glMultiTexCoord4xOES = unsafePerformIO $ getCommand "glMultiTexCoord4xOES"
-
--- glMultiTexCoord4xvOES -------------------------------------------------------
-
-glMultiTexCoord4xvOES
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
-  -> m ()
-glMultiTexCoord4xvOES v1 v2 = liftIO $ dyn95 ptr_glMultiTexCoord4xvOES v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord4xvOES #-}
-ptr_glMultiTexCoord4xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glMultiTexCoord4xvOES = unsafePerformIO $ getCommand "glMultiTexCoord4xvOES"
-
--- glMultiTexCoordP1ui ---------------------------------------------------------
-
-glMultiTexCoordP1ui
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glMultiTexCoordP1ui v1 v2 v3 = liftIO $ dyn29 ptr_glMultiTexCoordP1ui v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP1ui #-}
-ptr_glMultiTexCoordP1ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexCoordP1ui = unsafePerformIO $ getCommand "glMultiTexCoordP1ui"
-
--- glMultiTexCoordP1uiv --------------------------------------------------------
-
-glMultiTexCoordP1uiv
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glMultiTexCoordP1uiv v1 v2 v3 = liftIO $ dyn415 ptr_glMultiTexCoordP1uiv v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP1uiv #-}
-ptr_glMultiTexCoordP1uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glMultiTexCoordP1uiv = unsafePerformIO $ getCommand "glMultiTexCoordP1uiv"
-
--- glMultiTexCoordP2ui ---------------------------------------------------------
-
-glMultiTexCoordP2ui
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glMultiTexCoordP2ui v1 v2 v3 = liftIO $ dyn29 ptr_glMultiTexCoordP2ui v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP2ui #-}
-ptr_glMultiTexCoordP2ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexCoordP2ui = unsafePerformIO $ getCommand "glMultiTexCoordP2ui"
-
--- glMultiTexCoordP2uiv --------------------------------------------------------
-
-glMultiTexCoordP2uiv
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glMultiTexCoordP2uiv v1 v2 v3 = liftIO $ dyn415 ptr_glMultiTexCoordP2uiv v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP2uiv #-}
-ptr_glMultiTexCoordP2uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glMultiTexCoordP2uiv = unsafePerformIO $ getCommand "glMultiTexCoordP2uiv"
-
--- glMultiTexCoordP3ui ---------------------------------------------------------
-
-glMultiTexCoordP3ui
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glMultiTexCoordP3ui v1 v2 v3 = liftIO $ dyn29 ptr_glMultiTexCoordP3ui v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP3ui #-}
-ptr_glMultiTexCoordP3ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexCoordP3ui = unsafePerformIO $ getCommand "glMultiTexCoordP3ui"
-
--- glMultiTexCoordP3uiv --------------------------------------------------------
-
-glMultiTexCoordP3uiv
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glMultiTexCoordP3uiv v1 v2 v3 = liftIO $ dyn415 ptr_glMultiTexCoordP3uiv v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP3uiv #-}
-ptr_glMultiTexCoordP3uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glMultiTexCoordP3uiv = unsafePerformIO $ getCommand "glMultiTexCoordP3uiv"
-
--- glMultiTexCoordP4ui ---------------------------------------------------------
-
-glMultiTexCoordP4ui
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glMultiTexCoordP4ui v1 v2 v3 = liftIO $ dyn29 ptr_glMultiTexCoordP4ui v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP4ui #-}
-ptr_glMultiTexCoordP4ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexCoordP4ui = unsafePerformIO $ getCommand "glMultiTexCoordP4ui"
-
--- glMultiTexCoordP4uiv --------------------------------------------------------
-
-glMultiTexCoordP4uiv
-  :: MonadIO m
-  => GLenum -- ^ @texture@.
-  -> GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glMultiTexCoordP4uiv v1 v2 v3 = liftIO $ dyn415 ptr_glMultiTexCoordP4uiv v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoordP4uiv #-}
-ptr_glMultiTexCoordP4uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glMultiTexCoordP4uiv = unsafePerformIO $ getCommand "glMultiTexCoordP4uiv"
-
--- glMultiTexCoordPointerEXT ---------------------------------------------------
-
-glMultiTexCoordPointerEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glMultiTexCoordPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn563 ptr_glMultiTexCoordPointerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glMultiTexCoordPointerEXT #-}
-ptr_glMultiTexCoordPointerEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glMultiTexCoordPointerEXT = unsafePerformIO $ getCommand "glMultiTexCoordPointerEXT"
-
--- glMultiTexEnvfEXT -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexEnvfvEXT'.
-glMultiTexEnvfEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glMultiTexEnvfEXT v1 v2 v3 v4 = liftIO $ dyn564 ptr_glMultiTexEnvfEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexEnvfEXT #-}
-ptr_glMultiTexEnvfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glMultiTexEnvfEXT = unsafePerformIO $ getCommand "glMultiTexEnvfEXT"
-
--- glMultiTexEnvfvEXT ----------------------------------------------------------
-
-glMultiTexEnvfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glMultiTexEnvfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glMultiTexEnvfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexEnvfvEXT #-}
-ptr_glMultiTexEnvfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexEnvfvEXT = unsafePerformIO $ getCommand "glMultiTexEnvfvEXT"
-
--- glMultiTexEnviEXT -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexEnvivEXT'.
-glMultiTexEnviEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glMultiTexEnviEXT v1 v2 v3 v4 = liftIO $ dyn565 ptr_glMultiTexEnviEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexEnviEXT #-}
-ptr_glMultiTexEnviEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
-ptr_glMultiTexEnviEXT = unsafePerformIO $ getCommand "glMultiTexEnviEXT"
-
--- glMultiTexEnvivEXT ----------------------------------------------------------
-
-glMultiTexEnvivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMultiTexEnvivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glMultiTexEnvivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexEnvivEXT #-}
-ptr_glMultiTexEnvivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexEnvivEXT = unsafePerformIO $ getCommand "glMultiTexEnvivEXT"
-
--- glMultiTexGendEXT -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexGendvEXT'.
-glMultiTexGendEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLdouble -- ^ @param@.
-  -> m ()
-glMultiTexGendEXT v1 v2 v3 v4 = liftIO $ dyn566 ptr_glMultiTexGendEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGendEXT #-}
-ptr_glMultiTexGendEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
-ptr_glMultiTexGendEXT = unsafePerformIO $ getCommand "glMultiTexGendEXT"
-
--- glMultiTexGendvEXT ----------------------------------------------------------
-
-glMultiTexGendvEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
-  -> m ()
-glMultiTexGendvEXT v1 v2 v3 v4 = liftIO $ dyn356 ptr_glMultiTexGendvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGendvEXT #-}
-ptr_glMultiTexGendvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexGendvEXT = unsafePerformIO $ getCommand "glMultiTexGendvEXT"
-
--- glMultiTexGenfEXT -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexGenfvEXT'.
-glMultiTexGenfEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glMultiTexGenfEXT v1 v2 v3 v4 = liftIO $ dyn564 ptr_glMultiTexGenfEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGenfEXT #-}
-ptr_glMultiTexGenfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glMultiTexGenfEXT = unsafePerformIO $ getCommand "glMultiTexGenfEXT"
-
--- glMultiTexGenfvEXT ----------------------------------------------------------
-
-glMultiTexGenfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glMultiTexGenfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glMultiTexGenfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGenfvEXT #-}
-ptr_glMultiTexGenfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexGenfvEXT = unsafePerformIO $ getCommand "glMultiTexGenfvEXT"
-
--- glMultiTexGeniEXT -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexGenivEXT'.
-glMultiTexGeniEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glMultiTexGeniEXT v1 v2 v3 v4 = liftIO $ dyn565 ptr_glMultiTexGeniEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGeniEXT #-}
-ptr_glMultiTexGeniEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
-ptr_glMultiTexGeniEXT = unsafePerformIO $ getCommand "glMultiTexGeniEXT"
-
--- glMultiTexGenivEXT ----------------------------------------------------------
-
-glMultiTexGenivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMultiTexGenivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glMultiTexGenivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexGenivEXT #-}
-ptr_glMultiTexGenivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexGenivEXT = unsafePerformIO $ getCommand "glMultiTexGenivEXT"
-
--- glMultiTexImage1DEXT --------------------------------------------------------
-
-glMultiTexImage1DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn567 ptr_glMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glMultiTexImage1DEXT #-}
-ptr_glMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexImage1DEXT = unsafePerformIO $ getCommand "glMultiTexImage1DEXT"
-
--- glMultiTexImage2DEXT --------------------------------------------------------
-
-glMultiTexImage2DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn568 ptr_glMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glMultiTexImage2DEXT #-}
-ptr_glMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexImage2DEXT = unsafePerformIO $ getCommand "glMultiTexImage2DEXT"
-
--- glMultiTexImage3DEXT --------------------------------------------------------
-
-glMultiTexImage3DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn569 ptr_glMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glMultiTexImage3DEXT #-}
-ptr_glMultiTexImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexImage3DEXT = unsafePerformIO $ getCommand "glMultiTexImage3DEXT"
-
--- glMultiTexParameterIivEXT ---------------------------------------------------
-
-glMultiTexParameterIivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMultiTexParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glMultiTexParameterIivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameterIivEXT #-}
-ptr_glMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIivEXT"
-
--- glMultiTexParameterIuivEXT --------------------------------------------------
-
-glMultiTexParameterIuivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glMultiTexParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn360 ptr_glMultiTexParameterIuivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameterIuivEXT #-}
-ptr_glMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIuivEXT"
-
--- glMultiTexParameterfEXT -----------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexParameterfvEXT'.
-glMultiTexParameterfEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glMultiTexParameterfEXT v1 v2 v3 v4 = liftIO $ dyn564 ptr_glMultiTexParameterfEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameterfEXT #-}
-ptr_glMultiTexParameterfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glMultiTexParameterfEXT = unsafePerformIO $ getCommand "glMultiTexParameterfEXT"
-
--- glMultiTexParameterfvEXT ----------------------------------------------------
-
-glMultiTexParameterfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glMultiTexParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn321 ptr_glMultiTexParameterfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameterfvEXT #-}
-ptr_glMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glMultiTexParameterfvEXT"
-
--- glMultiTexParameteriEXT -----------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexParameterivEXT'.
-glMultiTexParameteriEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glMultiTexParameteriEXT v1 v2 v3 v4 = liftIO $ dyn565 ptr_glMultiTexParameteriEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameteriEXT #-}
-ptr_glMultiTexParameteriEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
-ptr_glMultiTexParameteriEXT = unsafePerformIO $ getCommand "glMultiTexParameteriEXT"
-
--- glMultiTexParameterivEXT ----------------------------------------------------
-
-glMultiTexParameterivEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glMultiTexParameterivEXT v1 v2 v3 v4 = liftIO $ dyn322 ptr_glMultiTexParameterivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMultiTexParameterivEXT #-}
-ptr_glMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glMultiTexParameterivEXT = unsafePerformIO $ getCommand "glMultiTexParameterivEXT"
-
--- glMultiTexRenderbufferEXT ---------------------------------------------------
-
-glMultiTexRenderbufferEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @renderbuffer@.
-  -> m ()
-glMultiTexRenderbufferEXT v1 v2 v3 = liftIO $ dyn29 ptr_glMultiTexRenderbufferEXT v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexRenderbufferEXT #-}
-ptr_glMultiTexRenderbufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glMultiTexRenderbufferEXT = unsafePerformIO $ getCommand "glMultiTexRenderbufferEXT"
+  glMultiDrawElementsEXT,
+  glMultiDrawElementsIndirect,
+  glMultiDrawElementsIndirectAMD,
+  glMultiDrawElementsIndirectBindlessCountNV,
+  glMultiDrawElementsIndirectBindlessNV,
+  glMultiDrawElementsIndirectCountARB,
+  glMultiDrawElementsIndirectEXT,
+  glMultiDrawRangeElementArrayAPPLE,
+  glMultiModeDrawArraysIBM,
+  glMultiModeDrawElementsIBM,
+  glMultiTexBufferEXT,
+  glMultiTexCoord1bOES,
+  glMultiTexCoord1bvOES,
+  glMultiTexCoord1d,
+  glMultiTexCoord1dARB,
+  glMultiTexCoord1dv,
+  glMultiTexCoord1dvARB,
+  glMultiTexCoord1f,
+  glMultiTexCoord1fARB,
+  glMultiTexCoord1fv,
+  glMultiTexCoord1fvARB,
+  glMultiTexCoord1hNV,
+  glMultiTexCoord1hvNV,
+  glMultiTexCoord1i,
+  glMultiTexCoord1iARB,
+  glMultiTexCoord1iv,
+  glMultiTexCoord1ivARB,
+  glMultiTexCoord1s,
+  glMultiTexCoord1sARB,
+  glMultiTexCoord1sv,
+  glMultiTexCoord1svARB,
+  glMultiTexCoord1xOES,
+  glMultiTexCoord1xvOES,
+  glMultiTexCoord2bOES,
+  glMultiTexCoord2bvOES,
+  glMultiTexCoord2d,
+  glMultiTexCoord2dARB,
+  glMultiTexCoord2dv,
+  glMultiTexCoord2dvARB,
+  glMultiTexCoord2f,
+  glMultiTexCoord2fARB,
+  glMultiTexCoord2fv,
+  glMultiTexCoord2fvARB,
+  glMultiTexCoord2hNV,
+  glMultiTexCoord2hvNV,
+  glMultiTexCoord2i,
+  glMultiTexCoord2iARB,
+  glMultiTexCoord2iv,
+  glMultiTexCoord2ivARB,
+  glMultiTexCoord2s,
+  glMultiTexCoord2sARB,
+  glMultiTexCoord2sv,
+  glMultiTexCoord2svARB,
+  glMultiTexCoord2xOES,
+  glMultiTexCoord2xvOES,
+  glMultiTexCoord3bOES,
+  glMultiTexCoord3bvOES,
+  glMultiTexCoord3d,
+  glMultiTexCoord3dARB,
+  glMultiTexCoord3dv,
+  glMultiTexCoord3dvARB,
+  glMultiTexCoord3f,
+  glMultiTexCoord3fARB,
+  glMultiTexCoord3fv,
+  glMultiTexCoord3fvARB,
+  glMultiTexCoord3hNV,
+  glMultiTexCoord3hvNV,
+  glMultiTexCoord3i,
+  glMultiTexCoord3iARB,
+  glMultiTexCoord3iv,
+  glMultiTexCoord3ivARB,
+  glMultiTexCoord3s,
+  glMultiTexCoord3sARB,
+  glMultiTexCoord3sv,
+  glMultiTexCoord3svARB,
+  glMultiTexCoord3xOES,
+  glMultiTexCoord3xvOES,
+  glMultiTexCoord4bOES,
+  glMultiTexCoord4bvOES,
+  glMultiTexCoord4d,
+  glMultiTexCoord4dARB,
+  glMultiTexCoord4dv,
+  glMultiTexCoord4dvARB,
+  glMultiTexCoord4f,
+  glMultiTexCoord4fARB,
+  glMultiTexCoord4fv,
+  glMultiTexCoord4fvARB,
+  glMultiTexCoord4hNV,
+  glMultiTexCoord4hvNV,
+  glMultiTexCoord4i,
+  glMultiTexCoord4iARB,
+  glMultiTexCoord4iv,
+  glMultiTexCoord4ivARB,
+  glMultiTexCoord4s,
+  glMultiTexCoord4sARB,
+  glMultiTexCoord4sv,
+  glMultiTexCoord4svARB,
+  glMultiTexCoord4x,
+  glMultiTexCoord4xOES,
+  glMultiTexCoord4xvOES
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glMultiDrawElementsEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawElements'.
+glMultiDrawElementsEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @primcount@.
+  -> m ()
+glMultiDrawElementsEXT v1 v2 v3 v4 v5 = liftIO $ dyn547 ptr_glMultiDrawElementsEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawElementsEXT #-}
+ptr_glMultiDrawElementsEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
+ptr_glMultiDrawElementsEXT = unsafePerformIO $ getCommand "glMultiDrawElementsEXT"
+
+-- glMultiDrawElementsIndirect -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsIndirect.xhtml OpenGL 4.x>.
+glMultiDrawElementsIndirect
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawElementsIndirect v1 v2 v3 v4 v5 = liftIO $ dyn549 ptr_glMultiDrawElementsIndirect v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirect #-}
+ptr_glMultiDrawElementsIndirect :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawElementsIndirect = unsafePerformIO $ getCommand "glMultiDrawElementsIndirect"
+
+-- glMultiDrawElementsIndirectAMD ----------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawElementsIndirect'.
+glMultiDrawElementsIndirectAMD
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @primcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawElementsIndirectAMD v1 v2 v3 v4 v5 = liftIO $ dyn549 ptr_glMultiDrawElementsIndirectAMD v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirectAMD #-}
+ptr_glMultiDrawElementsIndirectAMD :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawElementsIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectAMD"
+
+-- glMultiDrawElementsIndirectBindlessCountNV ----------------------------------
+
+glMultiDrawElementsIndirectBindlessCountNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @drawCount@.
+  -> GLsizei -- ^ @maxDrawCount@.
+  -> GLsizei -- ^ @stride@.
+  -> GLint -- ^ @vertexBufferCount@.
+  -> m ()
+glMultiDrawElementsIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn550 ptr_glMultiDrawElementsIndirectBindlessCountNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessCountNV #-}
+ptr_glMultiDrawElementsIndirectBindlessCountNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
+ptr_glMultiDrawElementsIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessCountNV"
+
+-- glMultiDrawElementsIndirectBindlessNV ---------------------------------------
+
+glMultiDrawElementsIndirectBindlessNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @indirect@.
+  -> GLsizei -- ^ @drawCount@.
+  -> GLsizei -- ^ @stride@.
+  -> GLint -- ^ @vertexBufferCount@.
+  -> m ()
+glMultiDrawElementsIndirectBindlessNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn551 ptr_glMultiDrawElementsIndirectBindlessNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessNV #-}
+ptr_glMultiDrawElementsIndirectBindlessNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
+ptr_glMultiDrawElementsIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessNV"
+
+-- glMultiDrawElementsIndirectCountARB -----------------------------------------
+
+glMultiDrawElementsIndirectCountARB
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> GLintptr -- ^ @indirect@.
+  -> GLintptr -- ^ @drawcount@.
+  -> GLsizei -- ^ @maxdrawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawElementsIndirectCountARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn552 ptr_glMultiDrawElementsIndirectCountARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirectCountARB #-}
+ptr_glMultiDrawElementsIndirectCountARB :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawElementsIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectCountARB"
+
+-- glMultiDrawElementsIndirectEXT ----------------------------------------------
+
+-- | This command is an alias for 'glMultiDrawElementsIndirect'.
+glMultiDrawElementsIndirectEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
+  -> GLsizei -- ^ @drawcount@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glMultiDrawElementsIndirectEXT v1 v2 v3 v4 v5 = liftIO $ dyn549 ptr_glMultiDrawElementsIndirectEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiDrawElementsIndirectEXT #-}
+ptr_glMultiDrawElementsIndirectEXT :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawElementsIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectEXT"
+
+-- glMultiDrawRangeElementArrayAPPLE -------------------------------------------
+
+glMultiDrawRangeElementArrayAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> GLuint -- ^ @start@.
+  -> GLuint -- ^ @end@.
+  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
+  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
+  -> GLsizei -- ^ @primcount@.
+  -> m ()
+glMultiDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 v6 = liftIO $ dyn553 ptr_glMultiDrawRangeElementArrayAPPLE v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiDrawRangeElementArrayAPPLE #-}
+ptr_glMultiDrawRangeElementArrayAPPLE :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
+ptr_glMultiDrawRangeElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawRangeElementArrayAPPLE"
+
+-- glMultiModeDrawArraysIBM ----------------------------------------------------
+
+glMultiModeDrawArraysIBM
+  :: MonadIO m
+  => Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
+  -> GLsizei -- ^ @primcount@.
+  -> GLint -- ^ @modestride@.
+  -> m ()
+glMultiModeDrawArraysIBM v1 v2 v3 v4 v5 = liftIO $ dyn554 ptr_glMultiModeDrawArraysIBM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiModeDrawArraysIBM #-}
+ptr_glMultiModeDrawArraysIBM :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
+ptr_glMultiModeDrawArraysIBM = unsafePerformIO $ getCommand "glMultiModeDrawArraysIBM"
+
+-- glMultiModeDrawElementsIBM --------------------------------------------------
+
+glMultiModeDrawElementsIBM
+  :: MonadIO m
+  => Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
+  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
+  -> GLenum -- ^ @type@ of type [DrawElementsType](Graphics-GL-Groups.html#DrawElementsType).
+  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
+  -> GLsizei -- ^ @primcount@.
+  -> GLint -- ^ @modestride@.
+  -> m ()
+glMultiModeDrawElementsIBM v1 v2 v3 v4 v5 v6 = liftIO $ dyn555 ptr_glMultiModeDrawElementsIBM v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glMultiModeDrawElementsIBM #-}
+ptr_glMultiModeDrawElementsIBM :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
+ptr_glMultiModeDrawElementsIBM = unsafePerformIO $ getCommand "glMultiModeDrawElementsIBM"
+
+-- glMultiTexBufferEXT ---------------------------------------------------------
+
+glMultiTexBufferEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@ of type @TypeEnum@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glMultiTexBufferEXT v1 v2 v3 v4 = liftIO $ dyn289 ptr_glMultiTexBufferEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexBufferEXT #-}
+ptr_glMultiTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexBufferEXT = unsafePerformIO $ getCommand "glMultiTexBufferEXT"
+
+-- glMultiTexCoord1bOES --------------------------------------------------------
+
+glMultiTexCoord1bOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLbyte -- ^ @s@.
+  -> m ()
+glMultiTexCoord1bOES v1 v2 = liftIO $ dyn556 ptr_glMultiTexCoord1bOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1bOES #-}
+ptr_glMultiTexCoord1bOES :: FunPtr (GLenum -> GLbyte -> IO ())
+ptr_glMultiTexCoord1bOES = unsafePerformIO $ getCommand "glMultiTexCoord1bOES"
+
+-- glMultiTexCoord1bvOES -------------------------------------------------------
+
+glMultiTexCoord1bvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLbyte -- ^ @coords@ pointing to @1@ element of type @GLbyte@.
+  -> m ()
+glMultiTexCoord1bvOES v1 v2 = liftIO $ dyn557 ptr_glMultiTexCoord1bvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1bvOES #-}
+ptr_glMultiTexCoord1bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+ptr_glMultiTexCoord1bvOES = unsafePerformIO $ getCommand "glMultiTexCoord1bvOES"
+
+-- glMultiTexCoord1d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1dv'.
+glMultiTexCoord1d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord1d v1 v2 = liftIO $ dyn558 ptr_glMultiTexCoord1d v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1d #-}
+ptr_glMultiTexCoord1d :: FunPtr (GLenum -> GLdouble -> IO ())
+ptr_glMultiTexCoord1d = unsafePerformIO $ getCommand "glMultiTexCoord1d"
+
+-- glMultiTexCoord1dARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord1dv'. This command is an alias for 'glMultiTexCoord1d'.
+glMultiTexCoord1dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord1dARB v1 v2 = liftIO $ dyn558 ptr_glMultiTexCoord1dARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1dARB #-}
+ptr_glMultiTexCoord1dARB :: FunPtr (GLenum -> GLdouble -> IO ())
+ptr_glMultiTexCoord1dARB = unsafePerformIO $ getCommand "glMultiTexCoord1dARB"
+
+-- glMultiTexCoord1dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord1dv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
+  -> m ()
+glMultiTexCoord1dv v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord1dv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1dv #-}
+ptr_glMultiTexCoord1dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord1dv = unsafePerformIO $ getCommand "glMultiTexCoord1dv"
+
+-- glMultiTexCoord1dvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord1dv'.
+glMultiTexCoord1dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
+  -> m ()
+glMultiTexCoord1dvARB v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord1dvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1dvARB #-}
+ptr_glMultiTexCoord1dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord1dvARB = unsafePerformIO $ getCommand "glMultiTexCoord1dvARB"
+
+-- glMultiTexCoord1f -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1fv'.
+glMultiTexCoord1f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord1f v1 v2 = liftIO $ dyn0 ptr_glMultiTexCoord1f v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1f #-}
+ptr_glMultiTexCoord1f :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glMultiTexCoord1f = unsafePerformIO $ getCommand "glMultiTexCoord1f"
+
+-- glMultiTexCoord1fARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord1fv'. This command is an alias for 'glMultiTexCoord1f'.
+glMultiTexCoord1fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord1fARB v1 v2 = liftIO $ dyn0 ptr_glMultiTexCoord1fARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1fARB #-}
+ptr_glMultiTexCoord1fARB :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glMultiTexCoord1fARB = unsafePerformIO $ getCommand "glMultiTexCoord1fARB"
+
+-- glMultiTexCoord1fv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord1fv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
+  -> m ()
+glMultiTexCoord1fv v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord1fv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1fv #-}
+ptr_glMultiTexCoord1fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord1fv = unsafePerformIO $ getCommand "glMultiTexCoord1fv"
+
+-- glMultiTexCoord1fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord1fv'.
+glMultiTexCoord1fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
+  -> m ()
+glMultiTexCoord1fvARB v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord1fvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1fvARB #-}
+ptr_glMultiTexCoord1fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord1fvARB = unsafePerformIO $ getCommand "glMultiTexCoord1fvARB"
+
+-- glMultiTexCoord1hNV ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord1hvNV'.
+glMultiTexCoord1hNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> m ()
+glMultiTexCoord1hNV v1 v2 = liftIO $ dyn559 ptr_glMultiTexCoord1hNV v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1hNV #-}
+ptr_glMultiTexCoord1hNV :: FunPtr (GLenum -> GLhalfNV -> IO ())
+ptr_glMultiTexCoord1hNV = unsafePerformIO $ getCommand "glMultiTexCoord1hNV"
+
+-- glMultiTexCoord1hvNV --------------------------------------------------------
+
+glMultiTexCoord1hvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
+  -> m ()
+glMultiTexCoord1hvNV v1 v2 = liftIO $ dyn560 ptr_glMultiTexCoord1hvNV v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1hvNV #-}
+ptr_glMultiTexCoord1hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
+ptr_glMultiTexCoord1hvNV = unsafePerformIO $ getCommand "glMultiTexCoord1hvNV"
+
+-- glMultiTexCoord1i -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1iv'.
+glMultiTexCoord1i
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord1i v1 v2 = liftIO $ dyn56 ptr_glMultiTexCoord1i v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1i #-}
+ptr_glMultiTexCoord1i :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glMultiTexCoord1i = unsafePerformIO $ getCommand "glMultiTexCoord1i"
+
+-- glMultiTexCoord1iARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord1iv'. This command is an alias for 'glMultiTexCoord1i'.
+glMultiTexCoord1iARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord1iARB v1 v2 = liftIO $ dyn56 ptr_glMultiTexCoord1iARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1iARB #-}
+ptr_glMultiTexCoord1iARB :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glMultiTexCoord1iARB = unsafePerformIO $ getCommand "glMultiTexCoord1iARB"
+
+-- glMultiTexCoord1iv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord1iv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
+  -> m ()
+glMultiTexCoord1iv v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord1iv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1iv #-}
+ptr_glMultiTexCoord1iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord1iv = unsafePerformIO $ getCommand "glMultiTexCoord1iv"
+
+-- glMultiTexCoord1ivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord1iv'.
+glMultiTexCoord1ivARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
+  -> m ()
+glMultiTexCoord1ivARB v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord1ivARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1ivARB #-}
+ptr_glMultiTexCoord1ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord1ivARB = unsafePerformIO $ getCommand "glMultiTexCoord1ivARB"
+
+-- glMultiTexCoord1s -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord1sv'.
+glMultiTexCoord1s
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord1s v1 v2 = liftIO $ dyn561 ptr_glMultiTexCoord1s v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1s #-}
+ptr_glMultiTexCoord1s :: FunPtr (GLenum -> GLshort -> IO ())
+ptr_glMultiTexCoord1s = unsafePerformIO $ getCommand "glMultiTexCoord1s"
+
+-- glMultiTexCoord1sARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord1sv'. This command is an alias for 'glMultiTexCoord1s'.
+glMultiTexCoord1sARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord1sARB v1 v2 = liftIO $ dyn561 ptr_glMultiTexCoord1sARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1sARB #-}
+ptr_glMultiTexCoord1sARB :: FunPtr (GLenum -> GLshort -> IO ())
+ptr_glMultiTexCoord1sARB = unsafePerformIO $ getCommand "glMultiTexCoord1sARB"
+
+-- glMultiTexCoord1sv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord1sv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
+  -> m ()
+glMultiTexCoord1sv v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord1sv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1sv #-}
+ptr_glMultiTexCoord1sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord1sv = unsafePerformIO $ getCommand "glMultiTexCoord1sv"
+
+-- glMultiTexCoord1svARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord1sv'.
+glMultiTexCoord1svARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
+  -> m ()
+glMultiTexCoord1svARB v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord1svARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1svARB #-}
+ptr_glMultiTexCoord1svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord1svARB = unsafePerformIO $ getCommand "glMultiTexCoord1svARB"
+
+-- glMultiTexCoord1xOES --------------------------------------------------------
+
+glMultiTexCoord1xOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLfixed -- ^ @s@.
+  -> m ()
+glMultiTexCoord1xOES v1 v2 = liftIO $ dyn1 ptr_glMultiTexCoord1xOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1xOES #-}
+ptr_glMultiTexCoord1xOES :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glMultiTexCoord1xOES = unsafePerformIO $ getCommand "glMultiTexCoord1xOES"
+
+-- glMultiTexCoord1xvOES -------------------------------------------------------
+
+glMultiTexCoord1xvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLfixed -- ^ @coords@ pointing to @1@ element of type @GLfixed@.
+  -> m ()
+glMultiTexCoord1xvOES v1 v2 = liftIO $ dyn98 ptr_glMultiTexCoord1xvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord1xvOES #-}
+ptr_glMultiTexCoord1xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glMultiTexCoord1xvOES = unsafePerformIO $ getCommand "glMultiTexCoord1xvOES"
+
+-- glMultiTexCoord2bOES --------------------------------------------------------
+
+glMultiTexCoord2bOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> m ()
+glMultiTexCoord2bOES v1 v2 v3 = liftIO $ dyn563 ptr_glMultiTexCoord2bOES v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2bOES #-}
+ptr_glMultiTexCoord2bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
+ptr_glMultiTexCoord2bOES = unsafePerformIO $ getCommand "glMultiTexCoord2bOES"
+
+-- glMultiTexCoord2bvOES -------------------------------------------------------
+
+glMultiTexCoord2bvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
+  -> m ()
+glMultiTexCoord2bvOES v1 v2 = liftIO $ dyn557 ptr_glMultiTexCoord2bvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2bvOES #-}
+ptr_glMultiTexCoord2bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+ptr_glMultiTexCoord2bvOES = unsafePerformIO $ getCommand "glMultiTexCoord2bvOES"
+
+-- glMultiTexCoord2d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2dv'.
+glMultiTexCoord2d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord2d v1 v2 v3 = liftIO $ dyn564 ptr_glMultiTexCoord2d v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2d #-}
+ptr_glMultiTexCoord2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord2d = unsafePerformIO $ getCommand "glMultiTexCoord2d"
+
+-- glMultiTexCoord2dARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2dv'. This command is an alias for 'glMultiTexCoord2d'.
+glMultiTexCoord2dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord2dARB v1 v2 v3 = liftIO $ dyn564 ptr_glMultiTexCoord2dARB v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2dARB #-}
+ptr_glMultiTexCoord2dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord2dARB = unsafePerformIO $ getCommand "glMultiTexCoord2dARB"
+
+-- glMultiTexCoord2dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord2dv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord2dv v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord2dv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2dv #-}
+ptr_glMultiTexCoord2dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord2dv = unsafePerformIO $ getCommand "glMultiTexCoord2dv"
+
+-- glMultiTexCoord2dvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord2dv'.
+glMultiTexCoord2dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord2dvARB v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord2dvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2dvARB #-}
+ptr_glMultiTexCoord2dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord2dvARB = unsafePerformIO $ getCommand "glMultiTexCoord2dvARB"
+
+-- glMultiTexCoord2f -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2fv'.
+glMultiTexCoord2f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord2f v1 v2 v3 = liftIO $ dyn565 ptr_glMultiTexCoord2f v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2f #-}
+ptr_glMultiTexCoord2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord2f = unsafePerformIO $ getCommand "glMultiTexCoord2f"
+
+-- glMultiTexCoord2fARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2fv'. This command is an alias for 'glMultiTexCoord2f'.
+glMultiTexCoord2fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord2fARB v1 v2 v3 = liftIO $ dyn565 ptr_glMultiTexCoord2fARB v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2fARB #-}
+ptr_glMultiTexCoord2fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord2fARB = unsafePerformIO $ getCommand "glMultiTexCoord2fARB"
+
+-- glMultiTexCoord2fv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord2fv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord2fv v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord2fv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2fv #-}
+ptr_glMultiTexCoord2fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord2fv = unsafePerformIO $ getCommand "glMultiTexCoord2fv"
+
+-- glMultiTexCoord2fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord2fv'.
+glMultiTexCoord2fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord2fvARB v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord2fvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2fvARB #-}
+ptr_glMultiTexCoord2fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord2fvARB = unsafePerformIO $ getCommand "glMultiTexCoord2fvARB"
+
+-- glMultiTexCoord2hNV ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2hvNV'.
+glMultiTexCoord2hNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> m ()
+glMultiTexCoord2hNV v1 v2 v3 = liftIO $ dyn566 ptr_glMultiTexCoord2hNV v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2hNV #-}
+ptr_glMultiTexCoord2hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glMultiTexCoord2hNV = unsafePerformIO $ getCommand "glMultiTexCoord2hNV"
+
+-- glMultiTexCoord2hvNV --------------------------------------------------------
+
+glMultiTexCoord2hvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
+  -> m ()
+glMultiTexCoord2hvNV v1 v2 = liftIO $ dyn560 ptr_glMultiTexCoord2hvNV v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2hvNV #-}
+ptr_glMultiTexCoord2hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
+ptr_glMultiTexCoord2hvNV = unsafePerformIO $ getCommand "glMultiTexCoord2hvNV"
+
+-- glMultiTexCoord2i -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2iv'.
+glMultiTexCoord2i
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord2i v1 v2 v3 = liftIO $ dyn268 ptr_glMultiTexCoord2i v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2i #-}
+ptr_glMultiTexCoord2i :: FunPtr (GLenum -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord2i = unsafePerformIO $ getCommand "glMultiTexCoord2i"
+
+-- glMultiTexCoord2iARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2iv'. This command is an alias for 'glMultiTexCoord2i'.
+glMultiTexCoord2iARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord2iARB v1 v2 v3 = liftIO $ dyn268 ptr_glMultiTexCoord2iARB v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2iARB #-}
+ptr_glMultiTexCoord2iARB :: FunPtr (GLenum -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord2iARB = unsafePerformIO $ getCommand "glMultiTexCoord2iARB"
+
+-- glMultiTexCoord2iv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord2iv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord2iv v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord2iv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2iv #-}
+ptr_glMultiTexCoord2iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord2iv = unsafePerformIO $ getCommand "glMultiTexCoord2iv"
+
+-- glMultiTexCoord2ivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord2iv'.
+glMultiTexCoord2ivARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord2ivARB v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord2ivARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2ivARB #-}
+ptr_glMultiTexCoord2ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord2ivARB = unsafePerformIO $ getCommand "glMultiTexCoord2ivARB"
+
+-- glMultiTexCoord2s -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2sv'.
+glMultiTexCoord2s
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord2s v1 v2 v3 = liftIO $ dyn567 ptr_glMultiTexCoord2s v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2s #-}
+ptr_glMultiTexCoord2s :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord2s = unsafePerformIO $ getCommand "glMultiTexCoord2s"
+
+-- glMultiTexCoord2sARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2sv'. This command is an alias for 'glMultiTexCoord2s'.
+glMultiTexCoord2sARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord2sARB v1 v2 v3 = liftIO $ dyn567 ptr_glMultiTexCoord2sARB v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2sARB #-}
+ptr_glMultiTexCoord2sARB :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord2sARB = unsafePerformIO $ getCommand "glMultiTexCoord2sARB"
+
+-- glMultiTexCoord2sv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord2sv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord2sv v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord2sv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2sv #-}
+ptr_glMultiTexCoord2sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord2sv = unsafePerformIO $ getCommand "glMultiTexCoord2sv"
+
+-- glMultiTexCoord2svARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord2sv'.
+glMultiTexCoord2svARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord2svARB v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord2svARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2svARB #-}
+ptr_glMultiTexCoord2svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord2svARB = unsafePerformIO $ getCommand "glMultiTexCoord2svARB"
+
+-- glMultiTexCoord2xOES --------------------------------------------------------
+
+glMultiTexCoord2xOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> m ()
+glMultiTexCoord2xOES v1 v2 v3 = liftIO $ dyn568 ptr_glMultiTexCoord2xOES v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2xOES #-}
+ptr_glMultiTexCoord2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
+ptr_glMultiTexCoord2xOES = unsafePerformIO $ getCommand "glMultiTexCoord2xOES"
+
+-- glMultiTexCoord2xvOES -------------------------------------------------------
+
+glMultiTexCoord2xvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glMultiTexCoord2xvOES v1 v2 = liftIO $ dyn98 ptr_glMultiTexCoord2xvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2xvOES #-}
+ptr_glMultiTexCoord2xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glMultiTexCoord2xvOES = unsafePerformIO $ getCommand "glMultiTexCoord2xvOES"
+
+-- glMultiTexCoord3bOES --------------------------------------------------------
+
+glMultiTexCoord3bOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> GLbyte -- ^ @r@.
+  -> m ()
+glMultiTexCoord3bOES v1 v2 v3 v4 = liftIO $ dyn569 ptr_glMultiTexCoord3bOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3bOES #-}
+ptr_glMultiTexCoord3bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glMultiTexCoord3bOES = unsafePerformIO $ getCommand "glMultiTexCoord3bOES"
+
+-- glMultiTexCoord3bvOES -------------------------------------------------------
+
+glMultiTexCoord3bvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glMultiTexCoord3bvOES v1 v2 = liftIO $ dyn557 ptr_glMultiTexCoord3bvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3bvOES #-}
+ptr_glMultiTexCoord3bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+ptr_glMultiTexCoord3bvOES = unsafePerformIO $ getCommand "glMultiTexCoord3bvOES"
+
+-- glMultiTexCoord3d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3dv'.
+glMultiTexCoord3d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord3d v1 v2 v3 v4 = liftIO $ dyn539 ptr_glMultiTexCoord3d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3d #-}
+ptr_glMultiTexCoord3d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord3d = unsafePerformIO $ getCommand "glMultiTexCoord3d"
+
+-- glMultiTexCoord3dARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord3dv'. This command is an alias for 'glMultiTexCoord3d'.
+glMultiTexCoord3dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord3dARB v1 v2 v3 v4 = liftIO $ dyn539 ptr_glMultiTexCoord3dARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3dARB #-}
+ptr_glMultiTexCoord3dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord3dARB = unsafePerformIO $ getCommand "glMultiTexCoord3dARB"
+
+-- glMultiTexCoord3dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord3dv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord3dv v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord3dv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3dv #-}
+ptr_glMultiTexCoord3dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord3dv = unsafePerformIO $ getCommand "glMultiTexCoord3dv"
+
+-- glMultiTexCoord3dvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord3dv'.
+glMultiTexCoord3dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord3dvARB v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord3dvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3dvARB #-}
+ptr_glMultiTexCoord3dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord3dvARB = unsafePerformIO $ getCommand "glMultiTexCoord3dvARB"
+
+-- glMultiTexCoord3f -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3fv'.
+glMultiTexCoord3f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord3f v1 v2 v3 v4 = liftIO $ dyn540 ptr_glMultiTexCoord3f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3f #-}
+ptr_glMultiTexCoord3f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord3f = unsafePerformIO $ getCommand "glMultiTexCoord3f"
+
+-- glMultiTexCoord3fARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord3fv'. This command is an alias for 'glMultiTexCoord3f'.
+glMultiTexCoord3fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord3fARB v1 v2 v3 v4 = liftIO $ dyn540 ptr_glMultiTexCoord3fARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3fARB #-}
+ptr_glMultiTexCoord3fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord3fARB = unsafePerformIO $ getCommand "glMultiTexCoord3fARB"
+
+-- glMultiTexCoord3fv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord3fv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord3fv v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord3fv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3fv #-}
+ptr_glMultiTexCoord3fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord3fv = unsafePerformIO $ getCommand "glMultiTexCoord3fv"
+
+-- glMultiTexCoord3fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord3fv'.
+glMultiTexCoord3fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord3fvARB v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord3fvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3fvARB #-}
+ptr_glMultiTexCoord3fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord3fvARB = unsafePerformIO $ getCommand "glMultiTexCoord3fvARB"
+
+-- glMultiTexCoord3hNV ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord3hvNV'.
+glMultiTexCoord3hNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
+  -> m ()
+glMultiTexCoord3hNV v1 v2 v3 v4 = liftIO $ dyn570 ptr_glMultiTexCoord3hNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3hNV #-}
+ptr_glMultiTexCoord3hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glMultiTexCoord3hNV = unsafePerformIO $ getCommand "glMultiTexCoord3hNV"
+
+-- glMultiTexCoord3hvNV --------------------------------------------------------
+
+glMultiTexCoord3hvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glMultiTexCoord3hvNV v1 v2 = liftIO $ dyn560 ptr_glMultiTexCoord3hvNV v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3hvNV #-}
+ptr_glMultiTexCoord3hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
+ptr_glMultiTexCoord3hvNV = unsafePerformIO $ getCommand "glMultiTexCoord3hvNV"
+
+-- glMultiTexCoord3i -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3iv'.
+glMultiTexCoord3i
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord3i v1 v2 v3 v4 = liftIO $ dyn571 ptr_glMultiTexCoord3i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3i #-}
+ptr_glMultiTexCoord3i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord3i = unsafePerformIO $ getCommand "glMultiTexCoord3i"
+
+-- glMultiTexCoord3iARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord3iv'. This command is an alias for 'glMultiTexCoord3i'.
+glMultiTexCoord3iARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord3iARB v1 v2 v3 v4 = liftIO $ dyn571 ptr_glMultiTexCoord3iARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3iARB #-}
+ptr_glMultiTexCoord3iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord3iARB = unsafePerformIO $ getCommand "glMultiTexCoord3iARB"
+
+-- glMultiTexCoord3iv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord3iv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord3iv v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord3iv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3iv #-}
+ptr_glMultiTexCoord3iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord3iv = unsafePerformIO $ getCommand "glMultiTexCoord3iv"
+
+-- glMultiTexCoord3ivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord3iv'.
+glMultiTexCoord3ivARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord3ivARB v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord3ivARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3ivARB #-}
+ptr_glMultiTexCoord3ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord3ivARB = unsafePerformIO $ getCommand "glMultiTexCoord3ivARB"
+
+-- glMultiTexCoord3s -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord3sv'.
+glMultiTexCoord3s
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord3s v1 v2 v3 v4 = liftIO $ dyn572 ptr_glMultiTexCoord3s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3s #-}
+ptr_glMultiTexCoord3s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord3s = unsafePerformIO $ getCommand "glMultiTexCoord3s"
+
+-- glMultiTexCoord3sARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord3sv'. This command is an alias for 'glMultiTexCoord3s'.
+glMultiTexCoord3sARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord3sARB v1 v2 v3 v4 = liftIO $ dyn572 ptr_glMultiTexCoord3sARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3sARB #-}
+ptr_glMultiTexCoord3sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord3sARB = unsafePerformIO $ getCommand "glMultiTexCoord3sARB"
+
+-- glMultiTexCoord3sv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord3sv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord3sv v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord3sv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3sv #-}
+ptr_glMultiTexCoord3sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord3sv = unsafePerformIO $ getCommand "glMultiTexCoord3sv"
+
+-- glMultiTexCoord3svARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord3sv'.
+glMultiTexCoord3svARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord3svARB v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord3svARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3svARB #-}
+ptr_glMultiTexCoord3svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord3svARB = unsafePerformIO $ getCommand "glMultiTexCoord3svARB"
+
+-- glMultiTexCoord3xOES --------------------------------------------------------
+
+glMultiTexCoord3xOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> m ()
+glMultiTexCoord3xOES v1 v2 v3 v4 = liftIO $ dyn573 ptr_glMultiTexCoord3xOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexCoord3xOES #-}
+ptr_glMultiTexCoord3xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glMultiTexCoord3xOES = unsafePerformIO $ getCommand "glMultiTexCoord3xOES"
+
+-- glMultiTexCoord3xvOES -------------------------------------------------------
+
+glMultiTexCoord3xvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
+  -> m ()
+glMultiTexCoord3xvOES v1 v2 = liftIO $ dyn98 ptr_glMultiTexCoord3xvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord3xvOES #-}
+ptr_glMultiTexCoord3xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glMultiTexCoord3xvOES = unsafePerformIO $ getCommand "glMultiTexCoord3xvOES"
+
+-- glMultiTexCoord4bOES --------------------------------------------------------
+
+glMultiTexCoord4bOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> GLbyte -- ^ @r@.
+  -> GLbyte -- ^ @q@.
+  -> m ()
+glMultiTexCoord4bOES v1 v2 v3 v4 v5 = liftIO $ dyn574 ptr_glMultiTexCoord4bOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4bOES #-}
+ptr_glMultiTexCoord4bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glMultiTexCoord4bOES = unsafePerformIO $ getCommand "glMultiTexCoord4bOES"
+
+-- glMultiTexCoord4bvOES -------------------------------------------------------
+
+glMultiTexCoord4bvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glMultiTexCoord4bvOES v1 v2 = liftIO $ dyn557 ptr_glMultiTexCoord4bvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4bvOES #-}
+ptr_glMultiTexCoord4bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+ptr_glMultiTexCoord4bvOES = unsafePerformIO $ getCommand "glMultiTexCoord4bvOES"
+
+-- glMultiTexCoord4d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4dv'.
+glMultiTexCoord4d
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> GLdouble -- ^ @q@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord4d v1 v2 v3 v4 v5 = liftIO $ dyn537 ptr_glMultiTexCoord4d v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4d #-}
+ptr_glMultiTexCoord4d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord4d = unsafePerformIO $ getCommand "glMultiTexCoord4d"
+
+-- glMultiTexCoord4dARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord4dv'. This command is an alias for 'glMultiTexCoord4d'.
+glMultiTexCoord4dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> GLdouble -- ^ @q@ of type @CoordD@.
+  -> m ()
+glMultiTexCoord4dARB v1 v2 v3 v4 v5 = liftIO $ dyn537 ptr_glMultiTexCoord4dARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4dARB #-}
+ptr_glMultiTexCoord4dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMultiTexCoord4dARB = unsafePerformIO $ getCommand "glMultiTexCoord4dARB"
+
+-- glMultiTexCoord4dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord4dv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord4dv v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord4dv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4dv #-}
+ptr_glMultiTexCoord4dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord4dv = unsafePerformIO $ getCommand "glMultiTexCoord4dv"
+
+-- glMultiTexCoord4dvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord4dv'.
+glMultiTexCoord4dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord4dvARB v1 v2 = liftIO $ dyn96 ptr_glMultiTexCoord4dvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4dvARB #-}
+ptr_glMultiTexCoord4dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord4dvARB = unsafePerformIO $ getCommand "glMultiTexCoord4dvARB"
+
+-- glMultiTexCoord4f -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4fv'.
+glMultiTexCoord4f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> GLfloat -- ^ @q@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord4f v1 v2 v3 v4 v5 = liftIO $ dyn538 ptr_glMultiTexCoord4f v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4f #-}
+ptr_glMultiTexCoord4f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord4f = unsafePerformIO $ getCommand "glMultiTexCoord4f"
+
+-- glMultiTexCoord4fARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord4fv'. This command is an alias for 'glMultiTexCoord4f'.
+glMultiTexCoord4fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> GLfloat -- ^ @q@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord4fARB v1 v2 v3 v4 v5 = liftIO $ dyn538 ptr_glMultiTexCoord4fARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4fARB #-}
+ptr_glMultiTexCoord4fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord4fARB = unsafePerformIO $ getCommand "glMultiTexCoord4fARB"
+
+-- glMultiTexCoord4fv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord4fv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord4fv v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord4fv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4fv #-}
+ptr_glMultiTexCoord4fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord4fv = unsafePerformIO $ getCommand "glMultiTexCoord4fv"
+
+-- glMultiTexCoord4fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord4fv'.
+glMultiTexCoord4fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glMultiTexCoord4fvARB v1 v2 = liftIO $ dyn97 ptr_glMultiTexCoord4fvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4fvARB #-}
+ptr_glMultiTexCoord4fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexCoord4fvARB = unsafePerformIO $ getCommand "glMultiTexCoord4fvARB"
+
+-- glMultiTexCoord4hNV ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord4hvNV'.
+glMultiTexCoord4hNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
+  -> m ()
+glMultiTexCoord4hNV v1 v2 v3 v4 v5 = liftIO $ dyn575 ptr_glMultiTexCoord4hNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4hNV #-}
+ptr_glMultiTexCoord4hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glMultiTexCoord4hNV = unsafePerformIO $ getCommand "glMultiTexCoord4hNV"
+
+-- glMultiTexCoord4hvNV --------------------------------------------------------
+
+glMultiTexCoord4hvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
+  -> m ()
+glMultiTexCoord4hvNV v1 v2 = liftIO $ dyn560 ptr_glMultiTexCoord4hvNV v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4hvNV #-}
+ptr_glMultiTexCoord4hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
+ptr_glMultiTexCoord4hvNV = unsafePerformIO $ getCommand "glMultiTexCoord4hvNV"
+
+-- glMultiTexCoord4i -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4iv'.
+glMultiTexCoord4i
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> GLint -- ^ @q@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord4i v1 v2 v3 v4 v5 = liftIO $ dyn269 ptr_glMultiTexCoord4i v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4i #-}
+ptr_glMultiTexCoord4i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord4i = unsafePerformIO $ getCommand "glMultiTexCoord4i"
+
+-- glMultiTexCoord4iARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord4iv'. This command is an alias for 'glMultiTexCoord4i'.
+glMultiTexCoord4iARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> GLint -- ^ @q@ of type @CoordI@.
+  -> m ()
+glMultiTexCoord4iARB v1 v2 v3 v4 v5 = liftIO $ dyn269 ptr_glMultiTexCoord4iARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4iARB #-}
+ptr_glMultiTexCoord4iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glMultiTexCoord4iARB = unsafePerformIO $ getCommand "glMultiTexCoord4iARB"
+
+-- glMultiTexCoord4iv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord4iv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord4iv v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord4iv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4iv #-}
+ptr_glMultiTexCoord4iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord4iv = unsafePerformIO $ getCommand "glMultiTexCoord4iv"
+
+-- glMultiTexCoord4ivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord4iv'.
+glMultiTexCoord4ivARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glMultiTexCoord4ivARB v1 v2 = liftIO $ dyn139 ptr_glMultiTexCoord4ivARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4ivARB #-}
+ptr_glMultiTexCoord4ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexCoord4ivARB = unsafePerformIO $ getCommand "glMultiTexCoord4ivARB"
+
+-- glMultiTexCoord4s -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord4sv'.
+glMultiTexCoord4s
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> GLshort -- ^ @q@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord4s v1 v2 v3 v4 v5 = liftIO $ dyn576 ptr_glMultiTexCoord4s v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4s #-}
+ptr_glMultiTexCoord4s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord4s = unsafePerformIO $ getCommand "glMultiTexCoord4s"
+
+-- glMultiTexCoord4sARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord4sv'. This command is an alias for 'glMultiTexCoord4s'.
+glMultiTexCoord4sARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> GLshort -- ^ @q@ of type @CoordS@.
+  -> m ()
+glMultiTexCoord4sARB v1 v2 v3 v4 v5 = liftIO $ dyn576 ptr_glMultiTexCoord4sARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4sARB #-}
+ptr_glMultiTexCoord4sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glMultiTexCoord4sARB = unsafePerformIO $ getCommand "glMultiTexCoord4sARB"
+
+-- glMultiTexCoord4sv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
+glMultiTexCoord4sv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord4sv v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord4sv v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4sv #-}
+ptr_glMultiTexCoord4sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord4sv = unsafePerformIO $ getCommand "glMultiTexCoord4sv"
+
+-- glMultiTexCoord4svARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord4sv'.
+glMultiTexCoord4svARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glMultiTexCoord4svARB v1 v2 = liftIO $ dyn562 ptr_glMultiTexCoord4svARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4svARB #-}
+ptr_glMultiTexCoord4svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glMultiTexCoord4svARB = unsafePerformIO $ getCommand "glMultiTexCoord4svARB"
+
+-- glMultiTexCoord4x -----------------------------------------------------------
+
+glMultiTexCoord4x
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @q@.
+  -> m ()
+glMultiTexCoord4x v1 v2 v3 v4 v5 = liftIO $ dyn577 ptr_glMultiTexCoord4x v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4x #-}
+ptr_glMultiTexCoord4x :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glMultiTexCoord4x = unsafePerformIO $ getCommand "glMultiTexCoord4x"
+
+-- glMultiTexCoord4xOES --------------------------------------------------------
+
+glMultiTexCoord4xOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @q@.
+  -> m ()
+glMultiTexCoord4xOES v1 v2 v3 v4 v5 = liftIO $ dyn577 ptr_glMultiTexCoord4xOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoord4xOES #-}
+ptr_glMultiTexCoord4xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glMultiTexCoord4xOES = unsafePerformIO $ getCommand "glMultiTexCoord4xOES"
+
+-- glMultiTexCoord4xvOES -------------------------------------------------------
+
+glMultiTexCoord4xvOES
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
+  -> m ()
+glMultiTexCoord4xvOES v1 v2 = liftIO $ dyn98 ptr_glMultiTexCoord4xvOES v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord4xvOES #-}
+ptr_glMultiTexCoord4xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glMultiTexCoord4xvOES = unsafePerformIO $ getCommand "glMultiTexCoord4xvOES"
 
diff --git a/src/Graphics/GL/Functions/F18.hs b/src/Graphics/GL/Functions/F18.hs
--- a/src/Graphics/GL/Functions/F18.hs
+++ b/src/Graphics/GL/Functions/F18.hs
@@ -15,1632 +15,1699 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F18 (
-  glMultiTexSubImage1DEXT,
-  glMultiTexSubImage2DEXT,
-  glMultiTexSubImage3DEXT,
-  glNamedBufferData,
-  glNamedBufferDataEXT,
-  glNamedBufferPageCommitmentARB,
-  glNamedBufferPageCommitmentEXT,
-  glNamedBufferStorage,
-  glNamedBufferStorageEXT,
-  glNamedBufferSubData,
-  glNamedBufferSubDataEXT,
-  glNamedCopyBufferSubDataEXT,
-  glNamedFramebufferDrawBuffer,
-  glNamedFramebufferDrawBuffers,
-  glNamedFramebufferParameteri,
-  glNamedFramebufferParameteriEXT,
-  glNamedFramebufferReadBuffer,
-  glNamedFramebufferRenderbuffer,
-  glNamedFramebufferRenderbufferEXT,
-  glNamedFramebufferSampleLocationsfvARB,
-  glNamedFramebufferSampleLocationsfvNV,
-  glNamedFramebufferSamplePositionsfvAMD,
-  glNamedFramebufferTexture,
-  glNamedFramebufferTexture1DEXT,
-  glNamedFramebufferTexture2DEXT,
-  glNamedFramebufferTexture3DEXT,
-  glNamedFramebufferTextureEXT,
-  glNamedFramebufferTextureFaceEXT,
-  glNamedFramebufferTextureLayer,
-  glNamedFramebufferTextureLayerEXT,
-  glNamedProgramLocalParameter4dEXT,
-  glNamedProgramLocalParameter4dvEXT,
-  glNamedProgramLocalParameter4fEXT,
-  glNamedProgramLocalParameter4fvEXT,
-  glNamedProgramLocalParameterI4iEXT,
-  glNamedProgramLocalParameterI4ivEXT,
-  glNamedProgramLocalParameterI4uiEXT,
-  glNamedProgramLocalParameterI4uivEXT,
-  glNamedProgramLocalParameters4fvEXT,
-  glNamedProgramLocalParametersI4ivEXT,
-  glNamedProgramLocalParametersI4uivEXT,
-  glNamedProgramStringEXT,
-  glNamedRenderbufferStorage,
-  glNamedRenderbufferStorageEXT,
-  glNamedRenderbufferStorageMultisample,
-  glNamedRenderbufferStorageMultisampleCoverageEXT,
-  glNamedRenderbufferStorageMultisampleEXT,
-  glNamedStringARB,
-  glNewList,
-  glNewObjectBufferATI,
-  glNormal3b,
-  glNormal3bv,
-  glNormal3d,
-  glNormal3dv,
-  glNormal3f,
-  glNormal3fVertex3fSUN,
-  glNormal3fVertex3fvSUN,
-  glNormal3fv,
-  glNormal3hNV,
-  glNormal3hvNV,
-  glNormal3i,
-  glNormal3iv,
-  glNormal3s,
-  glNormal3sv,
-  glNormal3x,
-  glNormal3xOES,
-  glNormal3xvOES,
-  glNormalFormatNV,
-  glNormalP3ui,
-  glNormalP3uiv,
-  glNormalPointer,
-  glNormalPointerEXT,
-  glNormalPointerListIBM,
-  glNormalPointervINTEL,
-  glNormalStream3bATI,
-  glNormalStream3bvATI,
-  glNormalStream3dATI,
-  glNormalStream3dvATI,
-  glNormalStream3fATI,
-  glNormalStream3fvATI,
-  glNormalStream3iATI,
-  glNormalStream3ivATI,
-  glNormalStream3sATI,
-  glNormalStream3svATI,
-  glObjectLabel,
-  glObjectLabelKHR,
-  glObjectPtrLabel,
-  glObjectPtrLabelKHR,
-  glObjectPurgeableAPPLE,
-  glObjectUnpurgeableAPPLE,
-  glOrtho,
-  glOrthof,
-  glOrthofOES,
-  glOrthox,
-  glOrthoxOES,
-  glPNTrianglesfATI,
-  glPNTrianglesiATI,
-  glPassTexCoordATI,
-  glPassThrough,
-  glPassThroughxOES
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glMultiTexSubImage1DEXT -----------------------------------------------------
-
-glMultiTexSubImage1DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn570 ptr_glMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glMultiTexSubImage1DEXT #-}
-ptr_glMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexSubImage1DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage1DEXT"
-
--- glMultiTexSubImage2DEXT -----------------------------------------------------
-
-glMultiTexSubImage2DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn571 ptr_glMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glMultiTexSubImage2DEXT #-}
-ptr_glMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexSubImage2DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage2DEXT"
-
--- glMultiTexSubImage3DEXT -----------------------------------------------------
-
-glMultiTexSubImage3DEXT
-  :: MonadIO m
-  => GLenum -- ^ @texunit@ of type @TextureUnit@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn572 ptr_glMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
-
-{-# NOINLINE ptr_glMultiTexSubImage3DEXT #-}
-ptr_glMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glMultiTexSubImage3DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage3DEXT"
-
--- glNamedBufferData -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferData.xhtml OpenGL 4.x>.
-glNamedBufferData
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@.
-  -> GLenum -- ^ @usage@.
-  -> m ()
-glNamedBufferData v1 v2 v3 v4 = liftIO $ dyn573 ptr_glNamedBufferData v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferData #-}
-ptr_glNamedBufferData :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
-ptr_glNamedBufferData = unsafePerformIO $ getCommand "glNamedBufferData"
-
--- glNamedBufferDataEXT --------------------------------------------------------
-
-glNamedBufferDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLsizeiptr -- ^ @size@.
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
-  -> GLenum -- ^ @usage@ of type @VertexBufferObjectUsage@.
-  -> m ()
-glNamedBufferDataEXT v1 v2 v3 v4 = liftIO $ dyn573 ptr_glNamedBufferDataEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferDataEXT #-}
-ptr_glNamedBufferDataEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
-ptr_glNamedBufferDataEXT = unsafePerformIO $ getCommand "glNamedBufferDataEXT"
-
--- glNamedBufferPageCommitmentARB ----------------------------------------------
-
-glNamedBufferPageCommitmentARB
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glNamedBufferPageCommitmentARB v1 v2 v3 v4 = liftIO $ dyn574 ptr_glNamedBufferPageCommitmentARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferPageCommitmentARB #-}
-ptr_glNamedBufferPageCommitmentARB :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
-ptr_glNamedBufferPageCommitmentARB = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentARB"
-
--- glNamedBufferPageCommitmentEXT ----------------------------------------------
-
-glNamedBufferPageCommitmentEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glNamedBufferPageCommitmentEXT v1 v2 v3 v4 = liftIO $ dyn574 ptr_glNamedBufferPageCommitmentEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferPageCommitmentEXT #-}
-ptr_glNamedBufferPageCommitmentEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
-ptr_glNamedBufferPageCommitmentEXT = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentEXT"
-
--- glNamedBufferStorage --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferStorage.xhtml OpenGL 4.x>.
-glNamedBufferStorage
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
-  -> GLbitfield -- ^ @flags@.
-  -> m ()
-glNamedBufferStorage v1 v2 v3 v4 = liftIO $ dyn575 ptr_glNamedBufferStorage v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferStorage #-}
-ptr_glNamedBufferStorage :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
-ptr_glNamedBufferStorage = unsafePerformIO $ getCommand "glNamedBufferStorage"
-
--- glNamedBufferStorageEXT -----------------------------------------------------
-
--- | This command is an alias for 'glNamedBufferStorage'.
-glNamedBufferStorageEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
-  -> GLbitfield -- ^ @flags@.
-  -> m ()
-glNamedBufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn575 ptr_glNamedBufferStorageEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferStorageEXT #-}
-ptr_glNamedBufferStorageEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
-ptr_glNamedBufferStorageEXT = unsafePerformIO $ getCommand "glNamedBufferStorageEXT"
-
--- glNamedBufferSubData --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>.
-glNamedBufferSubData
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
-  -> m ()
-glNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn364 ptr_glNamedBufferSubData v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferSubData #-}
-ptr_glNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-ptr_glNamedBufferSubData = unsafePerformIO $ getCommand "glNamedBufferSubData"
-
--- glNamedBufferSubDataEXT -----------------------------------------------------
-
--- | This command is an alias for 'glNamedBufferSubData'.
-glNamedBufferSubDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
-  -> m ()
-glNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn364 ptr_glNamedBufferSubDataEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferSubDataEXT #-}
-ptr_glNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-ptr_glNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedBufferSubDataEXT"
-
--- glNamedCopyBufferSubDataEXT -------------------------------------------------
-
-glNamedCopyBufferSubDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @readBuffer@.
-  -> GLuint -- ^ @writeBuffer@.
-  -> GLintptr -- ^ @readOffset@.
-  -> GLintptr -- ^ @writeOffset@.
-  -> GLsizeiptr -- ^ @size@.
-  -> m ()
-glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn174 ptr_glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedCopyBufferSubDataEXT #-}
-ptr_glNamedCopyBufferSubDataEXT :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glNamedCopyBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedCopyBufferSubDataEXT"
-
--- glNamedFramebufferDrawBuffer ------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffer.xhtml OpenGL 4.x>.
-glNamedFramebufferDrawBuffer
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @buf@.
-  -> m ()
-glNamedFramebufferDrawBuffer v1 v2 = liftIO $ dyn15 ptr_glNamedFramebufferDrawBuffer v1 v2
-
-{-# NOINLINE ptr_glNamedFramebufferDrawBuffer #-}
-ptr_glNamedFramebufferDrawBuffer :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glNamedFramebufferDrawBuffer = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffer"
-
--- glNamedFramebufferDrawBuffers -----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffers.xhtml OpenGL 4.x>.
-glNamedFramebufferDrawBuffers
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLenum -- ^ @bufs@.
-  -> m ()
-glNamedFramebufferDrawBuffers v1 v2 v3 = liftIO $ dyn282 ptr_glNamedFramebufferDrawBuffers v1 v2 v3
-
-{-# NOINLINE ptr_glNamedFramebufferDrawBuffers #-}
-ptr_glNamedFramebufferDrawBuffers :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
-ptr_glNamedFramebufferDrawBuffers = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffers"
-
--- glNamedFramebufferParameteri ------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferParameteri.xhtml OpenGL 4.x>.
-glNamedFramebufferParameteri
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @pname@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glNamedFramebufferParameteri v1 v2 v3 = liftIO $ dyn490 ptr_glNamedFramebufferParameteri v1 v2 v3
-
-{-# NOINLINE ptr_glNamedFramebufferParameteri #-}
-ptr_glNamedFramebufferParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glNamedFramebufferParameteri = unsafePerformIO $ getCommand "glNamedFramebufferParameteri"
-
--- glNamedFramebufferParameteriEXT ---------------------------------------------
-
-glNamedFramebufferParameteriEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @pname@ of type @FramebufferParameterName@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glNamedFramebufferParameteriEXT v1 v2 v3 = liftIO $ dyn490 ptr_glNamedFramebufferParameteriEXT v1 v2 v3
-
-{-# NOINLINE ptr_glNamedFramebufferParameteriEXT #-}
-ptr_glNamedFramebufferParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glNamedFramebufferParameteriEXT = unsafePerformIO $ getCommand "glNamedFramebufferParameteriEXT"
-
--- glNamedFramebufferReadBuffer ------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>.
-glNamedFramebufferReadBuffer
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @src@.
-  -> m ()
-glNamedFramebufferReadBuffer v1 v2 = liftIO $ dyn15 ptr_glNamedFramebufferReadBuffer v1 v2
-
-{-# NOINLINE ptr_glNamedFramebufferReadBuffer #-}
-ptr_glNamedFramebufferReadBuffer :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glNamedFramebufferReadBuffer = unsafePerformIO $ getCommand "glNamedFramebufferReadBuffer"
-
--- glNamedFramebufferRenderbuffer ----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferRenderbuffer.xhtml OpenGL 4.x>.
-glNamedFramebufferRenderbuffer
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @attachment@.
-  -> GLenum -- ^ @renderbuffertarget@.
-  -> GLuint -- ^ @renderbuffer@.
-  -> m ()
-glNamedFramebufferRenderbuffer v1 v2 v3 v4 = liftIO $ dyn576 ptr_glNamedFramebufferRenderbuffer v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferRenderbuffer #-}
-ptr_glNamedFramebufferRenderbuffer :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
-ptr_glNamedFramebufferRenderbuffer = unsafePerformIO $ getCommand "glNamedFramebufferRenderbuffer"
-
--- glNamedFramebufferRenderbufferEXT -------------------------------------------
-
-glNamedFramebufferRenderbufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
-  -> GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
-  -> m ()
-glNamedFramebufferRenderbufferEXT v1 v2 v3 v4 = liftIO $ dyn576 ptr_glNamedFramebufferRenderbufferEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferRenderbufferEXT #-}
-ptr_glNamedFramebufferRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
-ptr_glNamedFramebufferRenderbufferEXT = unsafePerformIO $ getCommand "glNamedFramebufferRenderbufferEXT"
-
--- glNamedFramebufferSampleLocationsfvARB --------------------------------------
-
-glNamedFramebufferSampleLocationsfvARB
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLuint -- ^ @start@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@.
-  -> m ()
-glNamedFramebufferSampleLocationsfvARB v1 v2 v3 v4 = liftIO $ dyn577 ptr_glNamedFramebufferSampleLocationsfvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferSampleLocationsfvARB #-}
-ptr_glNamedFramebufferSampleLocationsfvARB :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glNamedFramebufferSampleLocationsfvARB = unsafePerformIO $ getCommand "glNamedFramebufferSampleLocationsfvARB"
-
--- glNamedFramebufferSampleLocationsfvNV ---------------------------------------
-
-glNamedFramebufferSampleLocationsfvNV
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLuint -- ^ @start@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@.
-  -> m ()
-glNamedFramebufferSampleLocationsfvNV v1 v2 v3 v4 = liftIO $ dyn577 ptr_glNamedFramebufferSampleLocationsfvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferSampleLocationsfvNV #-}
-ptr_glNamedFramebufferSampleLocationsfvNV :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glNamedFramebufferSampleLocationsfvNV = unsafePerformIO $ getCommand "glNamedFramebufferSampleLocationsfvNV"
-
--- glNamedFramebufferSamplePositionsfvAMD --------------------------------------
-
-glNamedFramebufferSamplePositionsfvAMD
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLuint -- ^ @numsamples@.
-  -> GLuint -- ^ @pixelindex@.
-  -> Ptr GLfloat -- ^ @values@.
-  -> m ()
-glNamedFramebufferSamplePositionsfvAMD v1 v2 v3 v4 = liftIO $ dyn578 ptr_glNamedFramebufferSamplePositionsfvAMD v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferSamplePositionsfvAMD #-}
-ptr_glNamedFramebufferSamplePositionsfvAMD :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glNamedFramebufferSamplePositionsfvAMD = unsafePerformIO $ getCommand "glNamedFramebufferSamplePositionsfvAMD"
-
--- glNamedFramebufferTexture ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>.
-glNamedFramebufferTexture
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @attachment@.
-  -> GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> m ()
-glNamedFramebufferTexture v1 v2 v3 v4 = liftIO $ dyn579 ptr_glNamedFramebufferTexture v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferTexture #-}
-ptr_glNamedFramebufferTexture :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
-ptr_glNamedFramebufferTexture = unsafePerformIO $ getCommand "glNamedFramebufferTexture"
-
--- glNamedFramebufferTexture1DEXT ----------------------------------------------
-
-glNamedFramebufferTexture1DEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> m ()
-glNamedFramebufferTexture1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn580 ptr_glNamedFramebufferTexture1DEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedFramebufferTexture1DEXT #-}
-ptr_glNamedFramebufferTexture1DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
-ptr_glNamedFramebufferTexture1DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture1DEXT"
-
--- glNamedFramebufferTexture2DEXT ----------------------------------------------
-
-glNamedFramebufferTexture2DEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> m ()
-glNamedFramebufferTexture2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn580 ptr_glNamedFramebufferTexture2DEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedFramebufferTexture2DEXT #-}
-ptr_glNamedFramebufferTexture2DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
-ptr_glNamedFramebufferTexture2DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture2DEXT"
-
--- glNamedFramebufferTexture3DEXT ----------------------------------------------
-
-glNamedFramebufferTexture3DEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> m ()
-glNamedFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn581 ptr_glNamedFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glNamedFramebufferTexture3DEXT #-}
-ptr_glNamedFramebufferTexture3DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-ptr_glNamedFramebufferTexture3DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture3DEXT"
-
--- glNamedFramebufferTextureEXT ------------------------------------------------
-
-glNamedFramebufferTextureEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> m ()
-glNamedFramebufferTextureEXT v1 v2 v3 v4 = liftIO $ dyn579 ptr_glNamedFramebufferTextureEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedFramebufferTextureEXT #-}
-ptr_glNamedFramebufferTextureEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
-ptr_glNamedFramebufferTextureEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureEXT"
-
--- glNamedFramebufferTextureFaceEXT --------------------------------------------
-
-glNamedFramebufferTextureFaceEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLenum -- ^ @face@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> m ()
-glNamedFramebufferTextureFaceEXT v1 v2 v3 v4 v5 = liftIO $ dyn582 ptr_glNamedFramebufferTextureFaceEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedFramebufferTextureFaceEXT #-}
-ptr_glNamedFramebufferTextureFaceEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
-ptr_glNamedFramebufferTextureFaceEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureFaceEXT"
-
--- glNamedFramebufferTextureLayer ----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTextureLayer.xhtml OpenGL 4.x>.
-glNamedFramebufferTextureLayer
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@.
-  -> GLenum -- ^ @attachment@.
-  -> GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @layer@.
-  -> m ()
-glNamedFramebufferTextureLayer v1 v2 v3 v4 v5 = liftIO $ dyn583 ptr_glNamedFramebufferTextureLayer v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedFramebufferTextureLayer #-}
-ptr_glNamedFramebufferTextureLayer :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-ptr_glNamedFramebufferTextureLayer = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayer"
-
--- glNamedFramebufferTextureLayerEXT -------------------------------------------
-
-glNamedFramebufferTextureLayerEXT
-  :: MonadIO m
-  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
-  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
-  -> GLuint -- ^ @texture@ of type @Texture@.
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @layer@ of type @CheckedInt32@.
-  -> m ()
-glNamedFramebufferTextureLayerEXT v1 v2 v3 v4 v5 = liftIO $ dyn583 ptr_glNamedFramebufferTextureLayerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedFramebufferTextureLayerEXT #-}
-ptr_glNamedFramebufferTextureLayerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
-ptr_glNamedFramebufferTextureLayerEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayerEXT"
-
--- glNamedProgramLocalParameter4dEXT -------------------------------------------
-
--- | The vector equivalent of this command is 'glNamedProgramLocalParameter4dvEXT'.
-glNamedProgramLocalParameter4dEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glNamedProgramLocalParameter4dEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn584 ptr_glNamedProgramLocalParameter4dEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glNamedProgramLocalParameter4dEXT #-}
-ptr_glNamedProgramLocalParameter4dEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glNamedProgramLocalParameter4dEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dEXT"
-
--- glNamedProgramLocalParameter4dvEXT ------------------------------------------
-
-glNamedProgramLocalParameter4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glNamedProgramLocalParameter4dvEXT v1 v2 v3 v4 = liftIO $ dyn368 ptr_glNamedProgramLocalParameter4dvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedProgramLocalParameter4dvEXT #-}
-ptr_glNamedProgramLocalParameter4dvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
-ptr_glNamedProgramLocalParameter4dvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dvEXT"
-
--- glNamedProgramLocalParameter4fEXT -------------------------------------------
-
--- | The vector equivalent of this command is 'glNamedProgramLocalParameter4fvEXT'.
-glNamedProgramLocalParameter4fEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glNamedProgramLocalParameter4fEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn585 ptr_glNamedProgramLocalParameter4fEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glNamedProgramLocalParameter4fEXT #-}
-ptr_glNamedProgramLocalParameter4fEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glNamedProgramLocalParameter4fEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fEXT"
-
--- glNamedProgramLocalParameter4fvEXT ------------------------------------------
-
-glNamedProgramLocalParameter4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glNamedProgramLocalParameter4fvEXT v1 v2 v3 v4 = liftIO $ dyn369 ptr_glNamedProgramLocalParameter4fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedProgramLocalParameter4fvEXT #-}
-ptr_glNamedProgramLocalParameter4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glNamedProgramLocalParameter4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fvEXT"
-
--- glNamedProgramLocalParameterI4iEXT ------------------------------------------
-
--- | The vector equivalent of this command is 'glNamedProgramLocalParameterI4ivEXT'.
-glNamedProgramLocalParameterI4iEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glNamedProgramLocalParameterI4iEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn586 ptr_glNamedProgramLocalParameterI4iEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glNamedProgramLocalParameterI4iEXT #-}
-ptr_glNamedProgramLocalParameterI4iEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glNamedProgramLocalParameterI4iEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4iEXT"
-
--- glNamedProgramLocalParameterI4ivEXT -----------------------------------------
-
-glNamedProgramLocalParameterI4ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glNamedProgramLocalParameterI4ivEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glNamedProgramLocalParameterI4ivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedProgramLocalParameterI4ivEXT #-}
-ptr_glNamedProgramLocalParameterI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
-ptr_glNamedProgramLocalParameterI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4ivEXT"
-
--- glNamedProgramLocalParameterI4uiEXT -----------------------------------------
-
--- | The vector equivalent of this command is 'glNamedProgramLocalParameterI4uivEXT'.
-glNamedProgramLocalParameterI4uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glNamedProgramLocalParameterI4uiEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn587 ptr_glNamedProgramLocalParameterI4uiEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glNamedProgramLocalParameterI4uiEXT #-}
-ptr_glNamedProgramLocalParameterI4uiEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glNamedProgramLocalParameterI4uiEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uiEXT"
-
--- glNamedProgramLocalParameterI4uivEXT ----------------------------------------
-
-glNamedProgramLocalParameterI4uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glNamedProgramLocalParameterI4uivEXT v1 v2 v3 v4 = liftIO $ dyn367 ptr_glNamedProgramLocalParameterI4uivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedProgramLocalParameterI4uivEXT #-}
-ptr_glNamedProgramLocalParameterI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glNamedProgramLocalParameterI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uivEXT"
-
--- glNamedProgramLocalParameters4fvEXT -----------------------------------------
-
-glNamedProgramLocalParameters4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glNamedProgramLocalParameters4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn588 ptr_glNamedProgramLocalParameters4fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedProgramLocalParameters4fvEXT #-}
-ptr_glNamedProgramLocalParameters4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glNamedProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameters4fvEXT"
-
--- glNamedProgramLocalParametersI4ivEXT ----------------------------------------
-
-glNamedProgramLocalParametersI4ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glNamedProgramLocalParametersI4ivEXT v1 v2 v3 v4 v5 = liftIO $ dyn589 ptr_glNamedProgramLocalParametersI4ivEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedProgramLocalParametersI4ivEXT #-}
-ptr_glNamedProgramLocalParametersI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glNamedProgramLocalParametersI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4ivEXT"
-
--- glNamedProgramLocalParametersI4uivEXT ---------------------------------------
-
-glNamedProgramLocalParametersI4uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glNamedProgramLocalParametersI4uivEXT v1 v2 v3 v4 v5 = liftIO $ dyn590 ptr_glNamedProgramLocalParametersI4uivEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedProgramLocalParametersI4uivEXT #-}
-ptr_glNamedProgramLocalParametersI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glNamedProgramLocalParametersI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4uivEXT"
-
--- glNamedProgramStringEXT -----------------------------------------------------
-
-glNamedProgramStringEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLenum -- ^ @format@ of type @ProgramFormat@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
-  -> m ()
-glNamedProgramStringEXT v1 v2 v3 v4 v5 = liftIO $ dyn591 ptr_glNamedProgramStringEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedProgramStringEXT #-}
-ptr_glNamedProgramStringEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glNamedProgramStringEXT = unsafePerformIO $ getCommand "glNamedProgramStringEXT"
-
--- glNamedRenderbufferStorage --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>.
-glNamedRenderbufferStorage
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glNamedRenderbufferStorage v1 v2 v3 v4 = liftIO $ dyn592 ptr_glNamedRenderbufferStorage v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedRenderbufferStorage #-}
-ptr_glNamedRenderbufferStorage :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glNamedRenderbufferStorage = unsafePerformIO $ getCommand "glNamedRenderbufferStorage"
-
--- glNamedRenderbufferStorageEXT -----------------------------------------------
-
-glNamedRenderbufferStorageEXT
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glNamedRenderbufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn592 ptr_glNamedRenderbufferStorageEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedRenderbufferStorageEXT #-}
-ptr_glNamedRenderbufferStorageEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glNamedRenderbufferStorageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageEXT"
-
--- glNamedRenderbufferStorageMultisample ---------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>.
-glNamedRenderbufferStorageMultisample
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glNamedRenderbufferStorageMultisample v1 v2 v3 v4 v5 = liftIO $ dyn593 ptr_glNamedRenderbufferStorageMultisample v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedRenderbufferStorageMultisample #-}
-ptr_glNamedRenderbufferStorageMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glNamedRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisample"
-
--- glNamedRenderbufferStorageMultisampleCoverageEXT ----------------------------
-
-glNamedRenderbufferStorageMultisampleCoverageEXT
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glNamedRenderbufferStorageMultisampleCoverageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn594 ptr_glNamedRenderbufferStorageMultisampleCoverageEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleCoverageEXT #-}
-ptr_glNamedRenderbufferStorageMultisampleCoverageEXT :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glNamedRenderbufferStorageMultisampleCoverageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleCoverageEXT"
-
--- glNamedRenderbufferStorageMultisampleEXT ------------------------------------
-
-glNamedRenderbufferStorageMultisampleEXT
-  :: MonadIO m
-  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glNamedRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5 = liftIO $ dyn593 ptr_glNamedRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleEXT #-}
-ptr_glNamedRenderbufferStorageMultisampleEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glNamedRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleEXT"
-
--- glNamedStringARB ------------------------------------------------------------
-
-glNamedStringARB
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLint -- ^ @namelen@.
-  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
-  -> GLint -- ^ @stringlen@.
-  -> Ptr GLchar -- ^ @string@ pointing to @stringlen@ elements of type @GLchar@.
-  -> m ()
-glNamedStringARB v1 v2 v3 v4 v5 = liftIO $ dyn595 ptr_glNamedStringARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedStringARB #-}
-ptr_glNamedStringARB :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
-ptr_glNamedStringARB = unsafePerformIO $ getCommand "glNamedStringARB"
-
--- glNewList -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNewList.xml OpenGL 2.x>.
-glNewList
-  :: MonadIO m
-  => GLuint -- ^ @list@ of type @List@.
-  -> GLenum -- ^ @mode@ of type [ListMode](Graphics-GL-Groups.html#ListMode).
-  -> m ()
-glNewList v1 v2 = liftIO $ dyn15 ptr_glNewList v1 v2
-
-{-# NOINLINE ptr_glNewList #-}
-ptr_glNewList :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glNewList = unsafePerformIO $ getCommand "glNewList"
-
--- glNewObjectBufferATI --------------------------------------------------------
-
-glNewObjectBufferATI
-  :: MonadIO m
-  => GLsizei -- ^ @size@.
-  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
-  -> GLenum -- ^ @usage@ of type @ArrayObjectUsageATI@.
-  -> m GLuint
-glNewObjectBufferATI v1 v2 v3 = liftIO $ dyn596 ptr_glNewObjectBufferATI v1 v2 v3
-
-{-# NOINLINE ptr_glNewObjectBufferATI #-}
-ptr_glNewObjectBufferATI :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
-ptr_glNewObjectBufferATI = unsafePerformIO $ getCommand "glNewObjectBufferATI"
-
--- glNormal3b ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3bv'.
-glNormal3b
-  :: MonadIO m
-  => GLbyte -- ^ @nx@.
-  -> GLbyte -- ^ @ny@.
-  -> GLbyte -- ^ @nz@.
-  -> m ()
-glNormal3b v1 v2 v3 = liftIO $ dyn36 ptr_glNormal3b v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3b #-}
-ptr_glNormal3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glNormal3b = unsafePerformIO $ getCommand "glNormal3b"
-
--- glNormal3bv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
-glNormal3bv
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glNormal3bv v1 = liftIO $ dyn37 ptr_glNormal3bv v1
-
-{-# NOINLINE ptr_glNormal3bv #-}
-ptr_glNormal3bv :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glNormal3bv = unsafePerformIO $ getCommand "glNormal3bv"
-
--- glNormal3d ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3dv'.
-glNormal3d
-  :: MonadIO m
-  => GLdouble -- ^ @nx@ of type @CoordD@.
-  -> GLdouble -- ^ @ny@ of type @CoordD@.
-  -> GLdouble -- ^ @nz@ of type @CoordD@.
-  -> m ()
-glNormal3d v1 v2 v3 = liftIO $ dyn38 ptr_glNormal3d v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3d #-}
-ptr_glNormal3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glNormal3d = unsafePerformIO $ getCommand "glNormal3d"
-
--- glNormal3dv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
-glNormal3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glNormal3dv v1 = liftIO $ dyn39 ptr_glNormal3dv v1
-
-{-# NOINLINE ptr_glNormal3dv #-}
-ptr_glNormal3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glNormal3dv = unsafePerformIO $ getCommand "glNormal3dv"
-
--- glNormal3f ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3fv'.
-glNormal3f
-  :: MonadIO m
-  => GLfloat -- ^ @nx@ of type @CoordF@.
-  -> GLfloat -- ^ @ny@ of type @CoordF@.
-  -> GLfloat -- ^ @nz@ of type @CoordF@.
-  -> m ()
-glNormal3f v1 v2 v3 = liftIO $ dyn40 ptr_glNormal3f v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3f #-}
-ptr_glNormal3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glNormal3f = unsafePerformIO $ getCommand "glNormal3f"
-
--- glNormal3fVertex3fSUN -------------------------------------------------------
-
-glNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glNormal3fVertex3fSUN #-}
-ptr_glNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fSUN"
-
--- glNormal3fVertex3fvSUN ------------------------------------------------------
-
-glNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glNormal3fVertex3fvSUN v1 v2 = liftIO $ dyn97 ptr_glNormal3fVertex3fvSUN v1 v2
-
-{-# NOINLINE ptr_glNormal3fVertex3fvSUN #-}
-ptr_glNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fvSUN"
-
--- glNormal3fv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
-glNormal3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glNormal3fv v1 = liftIO $ dyn41 ptr_glNormal3fv v1
-
-{-# NOINLINE ptr_glNormal3fv #-}
-ptr_glNormal3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glNormal3fv = unsafePerformIO $ getCommand "glNormal3fv"
-
--- glNormal3hNV ----------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glNormal3hvNV'.
-glNormal3hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @nx@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @ny@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @nz@ of type @Half16NV@.
-  -> m ()
-glNormal3hNV v1 v2 v3 = liftIO $ dyn98 ptr_glNormal3hNV v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3hNV #-}
-ptr_glNormal3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glNormal3hNV = unsafePerformIO $ getCommand "glNormal3hNV"
-
--- glNormal3hvNV ---------------------------------------------------------------
-
-glNormal3hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glNormal3hvNV v1 = liftIO $ dyn99 ptr_glNormal3hvNV v1
-
-{-# NOINLINE ptr_glNormal3hvNV #-}
-ptr_glNormal3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glNormal3hvNV = unsafePerformIO $ getCommand "glNormal3hvNV"
-
--- glNormal3i ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3iv'.
-glNormal3i
-  :: MonadIO m
-  => GLint -- ^ @nx@.
-  -> GLint -- ^ @ny@.
-  -> GLint -- ^ @nz@.
-  -> m ()
-glNormal3i v1 v2 v3 = liftIO $ dyn42 ptr_glNormal3i v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3i #-}
-ptr_glNormal3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glNormal3i = unsafePerformIO $ getCommand "glNormal3i"
-
--- glNormal3iv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
-glNormal3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glNormal3iv v1 = liftIO $ dyn43 ptr_glNormal3iv v1
-
-{-# NOINLINE ptr_glNormal3iv #-}
-ptr_glNormal3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glNormal3iv = unsafePerformIO $ getCommand "glNormal3iv"
-
--- glNormal3s ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3sv'.
-glNormal3s
-  :: MonadIO m
-  => GLshort -- ^ @nx@.
-  -> GLshort -- ^ @ny@.
-  -> GLshort -- ^ @nz@.
-  -> m ()
-glNormal3s v1 v2 v3 = liftIO $ dyn44 ptr_glNormal3s v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3s #-}
-ptr_glNormal3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glNormal3s = unsafePerformIO $ getCommand "glNormal3s"
-
--- glNormal3sv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
-glNormal3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glNormal3sv v1 = liftIO $ dyn45 ptr_glNormal3sv v1
-
-{-# NOINLINE ptr_glNormal3sv #-}
-ptr_glNormal3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glNormal3sv = unsafePerformIO $ getCommand "glNormal3sv"
-
--- glNormal3x ------------------------------------------------------------------
-
-glNormal3x
-  :: MonadIO m
-  => GLfixed -- ^ @nx@.
-  -> GLfixed -- ^ @ny@.
-  -> GLfixed -- ^ @nz@.
-  -> m ()
-glNormal3x v1 v2 v3 = liftIO $ dyn106 ptr_glNormal3x v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3x #-}
-ptr_glNormal3x :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glNormal3x = unsafePerformIO $ getCommand "glNormal3x"
-
--- glNormal3xOES ---------------------------------------------------------------
-
-glNormal3xOES
-  :: MonadIO m
-  => GLfixed -- ^ @nx@.
-  -> GLfixed -- ^ @ny@.
-  -> GLfixed -- ^ @nz@.
-  -> m ()
-glNormal3xOES v1 v2 v3 = liftIO $ dyn106 ptr_glNormal3xOES v1 v2 v3
-
-{-# NOINLINE ptr_glNormal3xOES #-}
-ptr_glNormal3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glNormal3xOES = unsafePerformIO $ getCommand "glNormal3xOES"
-
--- glNormal3xvOES --------------------------------------------------------------
-
-glNormal3xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
-  -> m ()
-glNormal3xvOES v1 = liftIO $ dyn107 ptr_glNormal3xvOES v1
-
-{-# NOINLINE ptr_glNormal3xvOES #-}
-ptr_glNormal3xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glNormal3xvOES = unsafePerformIO $ getCommand "glNormal3xvOES"
-
--- glNormalFormatNV ------------------------------------------------------------
-
-glNormalFormatNV
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glNormalFormatNV v1 v2 = liftIO $ dyn239 ptr_glNormalFormatNV v1 v2
-
-{-# NOINLINE ptr_glNormalFormatNV #-}
-ptr_glNormalFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
-ptr_glNormalFormatNV = unsafePerformIO $ getCommand "glNormalFormatNV"
-
--- glNormalP3ui ----------------------------------------------------------------
-
-glNormalP3ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glNormalP3ui v1 v2 = liftIO $ dyn16 ptr_glNormalP3ui v1 v2
-
-{-# NOINLINE ptr_glNormalP3ui #-}
-ptr_glNormalP3ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glNormalP3ui = unsafePerformIO $ getCommand "glNormalP3ui"
-
--- glNormalP3uiv ---------------------------------------------------------------
-
-glNormalP3uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glNormalP3uiv v1 v2 = liftIO $ dyn125 ptr_glNormalP3uiv v1 v2
-
-{-# NOINLINE ptr_glNormalP3uiv #-}
-ptr_glNormalP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glNormalP3uiv = unsafePerformIO $ getCommand "glNormalP3uiv"
-
--- glNormalPointer -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormalPointer.xml OpenGL 2.x>.
-glNormalPointer
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glNormalPointer v1 v2 v3 = liftIO $ dyn46 ptr_glNormalPointer v1 v2 v3
-
-{-# NOINLINE ptr_glNormalPointer #-}
-ptr_glNormalPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glNormalPointer = unsafePerformIO $ getCommand "glNormalPointer"
-
--- glNormalPointerEXT ----------------------------------------------------------
-
-glNormalPointerEXT
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride,count)@ elements of type @a@.
-  -> m ()
-glNormalPointerEXT v1 v2 v3 v4 = liftIO $ dyn470 ptr_glNormalPointerEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalPointerEXT #-}
-ptr_glNormalPointerEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
-ptr_glNormalPointerEXT = unsafePerformIO $ getCommand "glNormalPointerEXT"
-
--- glNormalPointerListIBM ------------------------------------------------------
-
-glNormalPointerListIBM
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
-  -> GLint -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glNormalPointerListIBM v1 v2 v3 v4 = liftIO $ dyn280 ptr_glNormalPointerListIBM v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalPointerListIBM #-}
-ptr_glNormalPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-ptr_glNormalPointerListIBM = unsafePerformIO $ getCommand "glNormalPointerListIBM"
-
--- glNormalPointervINTEL -------------------------------------------------------
-
-glNormalPointervINTEL
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
-  -> m ()
-glNormalPointervINTEL v1 v2 = liftIO $ dyn268 ptr_glNormalPointervINTEL v1 v2
-
-{-# NOINLINE ptr_glNormalPointervINTEL #-}
-ptr_glNormalPointervINTEL :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
-ptr_glNormalPointervINTEL = unsafePerformIO $ getCommand "glNormalPointervINTEL"
-
--- glNormalStream3bATI ---------------------------------------------------------
-
-glNormalStream3bATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLbyte -- ^ @nx@.
-  -> GLbyte -- ^ @ny@.
-  -> GLbyte -- ^ @nz@.
-  -> m ()
-glNormalStream3bATI v1 v2 v3 v4 = liftIO $ dyn554 ptr_glNormalStream3bATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalStream3bATI #-}
-ptr_glNormalStream3bATI :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glNormalStream3bATI = unsafePerformIO $ getCommand "glNormalStream3bATI"
-
--- glNormalStream3bvATI --------------------------------------------------------
-
-glNormalStream3bvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glNormalStream3bvATI v1 v2 = liftIO $ dyn542 ptr_glNormalStream3bvATI v1 v2
-
-{-# NOINLINE ptr_glNormalStream3bvATI #-}
-ptr_glNormalStream3bvATI :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
-ptr_glNormalStream3bvATI = unsafePerformIO $ getCommand "glNormalStream3bvATI"
-
--- glNormalStream3dATI ---------------------------------------------------------
-
-glNormalStream3dATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLdouble -- ^ @nx@.
-  -> GLdouble -- ^ @ny@.
-  -> GLdouble -- ^ @nz@.
-  -> m ()
-glNormalStream3dATI v1 v2 v3 v4 = liftIO $ dyn524 ptr_glNormalStream3dATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalStream3dATI #-}
-ptr_glNormalStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glNormalStream3dATI = unsafePerformIO $ getCommand "glNormalStream3dATI"
-
--- glNormalStream3dvATI --------------------------------------------------------
-
-glNormalStream3dvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glNormalStream3dvATI v1 v2 = liftIO $ dyn93 ptr_glNormalStream3dvATI v1 v2
-
-{-# NOINLINE ptr_glNormalStream3dvATI #-}
-ptr_glNormalStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glNormalStream3dvATI = unsafePerformIO $ getCommand "glNormalStream3dvATI"
-
--- glNormalStream3fATI ---------------------------------------------------------
-
-glNormalStream3fATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> m ()
-glNormalStream3fATI v1 v2 v3 v4 = liftIO $ dyn525 ptr_glNormalStream3fATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalStream3fATI #-}
-ptr_glNormalStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glNormalStream3fATI = unsafePerformIO $ getCommand "glNormalStream3fATI"
-
--- glNormalStream3fvATI --------------------------------------------------------
-
-glNormalStream3fvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glNormalStream3fvATI v1 v2 = liftIO $ dyn94 ptr_glNormalStream3fvATI v1 v2
-
-{-# NOINLINE ptr_glNormalStream3fvATI #-}
-ptr_glNormalStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glNormalStream3fvATI = unsafePerformIO $ getCommand "glNormalStream3fvATI"
-
--- glNormalStream3iATI ---------------------------------------------------------
-
-glNormalStream3iATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLint -- ^ @nx@.
-  -> GLint -- ^ @ny@.
-  -> GLint -- ^ @nz@.
-  -> m ()
-glNormalStream3iATI v1 v2 v3 v4 = liftIO $ dyn556 ptr_glNormalStream3iATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalStream3iATI #-}
-ptr_glNormalStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-ptr_glNormalStream3iATI = unsafePerformIO $ getCommand "glNormalStream3iATI"
-
--- glNormalStream3ivATI --------------------------------------------------------
-
-glNormalStream3ivATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glNormalStream3ivATI v1 v2 = liftIO $ dyn136 ptr_glNormalStream3ivATI v1 v2
-
-{-# NOINLINE ptr_glNormalStream3ivATI #-}
-ptr_glNormalStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glNormalStream3ivATI = unsafePerformIO $ getCommand "glNormalStream3ivATI"
-
--- glNormalStream3sATI ---------------------------------------------------------
-
-glNormalStream3sATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLshort -- ^ @nx@.
-  -> GLshort -- ^ @ny@.
-  -> GLshort -- ^ @nz@.
-  -> m ()
-glNormalStream3sATI v1 v2 v3 v4 = liftIO $ dyn557 ptr_glNormalStream3sATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNormalStream3sATI #-}
-ptr_glNormalStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glNormalStream3sATI = unsafePerformIO $ getCommand "glNormalStream3sATI"
-
--- glNormalStream3svATI --------------------------------------------------------
-
-glNormalStream3svATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glNormalStream3svATI v1 v2 = liftIO $ dyn547 ptr_glNormalStream3svATI v1 v2
-
-{-# NOINLINE ptr_glNormalStream3svATI #-}
-ptr_glNormalStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glNormalStream3svATI = unsafePerformIO $ getCommand "glNormalStream3svATI"
-
--- glObjectLabel ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectLabel.xhtml OpenGL 4.x>.
-glObjectLabel
-  :: MonadIO m
-  => GLenum -- ^ @identifier@.
-  -> GLuint -- ^ @name@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
-  -> m ()
-glObjectLabel v1 v2 v3 v4 = liftIO $ dyn486 ptr_glObjectLabel v1 v2 v3 v4
-
-{-# NOINLINE ptr_glObjectLabel #-}
-ptr_glObjectLabel :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glObjectLabel = unsafePerformIO $ getCommand "glObjectLabel"
-
--- glObjectLabelKHR ------------------------------------------------------------
-
--- | This command is an alias for 'glObjectLabel'.
-glObjectLabelKHR
-  :: MonadIO m
-  => GLenum -- ^ @identifier@.
-  -> GLuint -- ^ @name@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @label@.
-  -> m ()
-glObjectLabelKHR v1 v2 v3 v4 = liftIO $ dyn486 ptr_glObjectLabelKHR v1 v2 v3 v4
-
-{-# NOINLINE ptr_glObjectLabelKHR #-}
-ptr_glObjectLabelKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glObjectLabelKHR = unsafePerformIO $ getCommand "glObjectLabelKHR"
-
--- glObjectPtrLabel ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectPtrLabel.xhtml OpenGL 4.x>.
-glObjectPtrLabel
-  :: MonadIO m
-  => Ptr a -- ^ @ptr@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
-  -> m ()
-glObjectPtrLabel v1 v2 v3 = liftIO $ dyn597 ptr_glObjectPtrLabel v1 v2 v3
-
-{-# NOINLINE ptr_glObjectPtrLabel #-}
-ptr_glObjectPtrLabel :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glObjectPtrLabel = unsafePerformIO $ getCommand "glObjectPtrLabel"
-
--- glObjectPtrLabelKHR ---------------------------------------------------------
-
--- | This command is an alias for 'glObjectPtrLabel'.
-glObjectPtrLabelKHR
-  :: MonadIO m
-  => Ptr a -- ^ @ptr@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @label@.
-  -> m ()
-glObjectPtrLabelKHR v1 v2 v3 = liftIO $ dyn597 ptr_glObjectPtrLabelKHR v1 v2 v3
-
-{-# NOINLINE ptr_glObjectPtrLabelKHR #-}
-ptr_glObjectPtrLabelKHR :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glObjectPtrLabelKHR = unsafePerformIO $ getCommand "glObjectPtrLabelKHR"
-
--- glObjectPurgeableAPPLE ------------------------------------------------------
-
-glObjectPurgeableAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @objectType@.
-  -> GLuint -- ^ @name@.
-  -> GLenum -- ^ @option@.
-  -> m GLenum
-glObjectPurgeableAPPLE v1 v2 v3 = liftIO $ dyn598 ptr_glObjectPurgeableAPPLE v1 v2 v3
-
-{-# NOINLINE ptr_glObjectPurgeableAPPLE #-}
-ptr_glObjectPurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
-ptr_glObjectPurgeableAPPLE = unsafePerformIO $ getCommand "glObjectPurgeableAPPLE"
-
--- glObjectUnpurgeableAPPLE ----------------------------------------------------
-
-glObjectUnpurgeableAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @objectType@.
-  -> GLuint -- ^ @name@.
-  -> GLenum -- ^ @option@.
-  -> m GLenum
-glObjectUnpurgeableAPPLE v1 v2 v3 = liftIO $ dyn598 ptr_glObjectUnpurgeableAPPLE v1 v2 v3
-
-{-# NOINLINE ptr_glObjectUnpurgeableAPPLE #-}
-ptr_glObjectUnpurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
-ptr_glObjectUnpurgeableAPPLE = unsafePerformIO $ getCommand "glObjectUnpurgeableAPPLE"
-
--- glOrtho ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glOrtho.xml OpenGL 2.x>.
-glOrtho
-  :: MonadIO m
-  => GLdouble -- ^ @left@.
-  -> GLdouble -- ^ @right@.
-  -> GLdouble -- ^ @bottom@.
-  -> GLdouble -- ^ @top@.
-  -> GLdouble -- ^ @zNear@.
-  -> GLdouble -- ^ @zFar@.
-  -> m ()
-glOrtho v1 v2 v3 v4 v5 v6 = liftIO $ dyn296 ptr_glOrtho v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glOrtho #-}
-ptr_glOrtho :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glOrtho = unsafePerformIO $ getCommand "glOrtho"
-
--- glOrthof --------------------------------------------------------------------
-
-glOrthof
-  :: MonadIO m
-  => GLfloat -- ^ @l@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @n@.
-  -> GLfloat -- ^ @f@.
-  -> m ()
-glOrthof v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glOrthof v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glOrthof #-}
-ptr_glOrthof :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glOrthof = unsafePerformIO $ getCommand "glOrthof"
-
--- glOrthofOES -----------------------------------------------------------------
-
-glOrthofOES
-  :: MonadIO m
-  => GLfloat -- ^ @l@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @n@.
-  -> GLfloat -- ^ @f@.
-  -> m ()
-glOrthofOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn96 ptr_glOrthofOES v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glOrthofOES #-}
-ptr_glOrthofOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glOrthofOES = unsafePerformIO $ getCommand "glOrthofOES"
-
--- glOrthox --------------------------------------------------------------------
-
-glOrthox
-  :: MonadIO m
-  => GLfixed -- ^ @l@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @b@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @n@.
-  -> GLfixed -- ^ @f@.
-  -> m ()
-glOrthox v1 v2 v3 v4 v5 v6 = liftIO $ dyn297 ptr_glOrthox v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glOrthox #-}
-ptr_glOrthox :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glOrthox = unsafePerformIO $ getCommand "glOrthox"
-
--- glOrthoxOES -----------------------------------------------------------------
-
-glOrthoxOES
-  :: MonadIO m
-  => GLfixed -- ^ @l@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @b@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @n@.
-  -> GLfixed -- ^ @f@.
-  -> m ()
-glOrthoxOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn297 ptr_glOrthoxOES v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glOrthoxOES #-}
-ptr_glOrthoxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glOrthoxOES = unsafePerformIO $ getCommand "glOrthoxOES"
-
--- glPNTrianglesfATI -----------------------------------------------------------
-
-glPNTrianglesfATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glPNTrianglesfATI v1 v2 = liftIO $ dyn0 ptr_glPNTrianglesfATI v1 v2
-
-{-# NOINLINE ptr_glPNTrianglesfATI #-}
-ptr_glPNTrianglesfATI :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPNTrianglesfATI = unsafePerformIO $ getCommand "glPNTrianglesfATI"
-
--- glPNTrianglesiATI -----------------------------------------------------------
-
-glPNTrianglesiATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glPNTrianglesiATI v1 v2 = liftIO $ dyn55 ptr_glPNTrianglesiATI v1 v2
-
-{-# NOINLINE ptr_glPNTrianglesiATI #-}
-ptr_glPNTrianglesiATI :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPNTrianglesiATI = unsafePerformIO $ getCommand "glPNTrianglesiATI"
-
--- glPassTexCoordATI -----------------------------------------------------------
-
-glPassTexCoordATI
-  :: MonadIO m
-  => GLuint -- ^ @dst@.
-  -> GLuint -- ^ @coord@.
-  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
-  -> m ()
-glPassTexCoordATI v1 v2 v3 = liftIO $ dyn599 ptr_glPassTexCoordATI v1 v2 v3
-
-{-# NOINLINE ptr_glPassTexCoordATI #-}
-ptr_glPassTexCoordATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
-ptr_glPassTexCoordATI = unsafePerformIO $ getCommand "glPassTexCoordATI"
-
--- glPassThrough ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPassThrough.xml OpenGL 2.x>.
-glPassThrough
-  :: MonadIO m
-  => GLfloat -- ^ @token@ of type @FeedbackElement@.
-  -> m ()
-glPassThrough v1 = liftIO $ dyn79 ptr_glPassThrough v1
-
-{-# NOINLINE ptr_glPassThrough #-}
-ptr_glPassThrough :: FunPtr (GLfloat -> IO ())
-ptr_glPassThrough = unsafePerformIO $ getCommand "glPassThrough"
-
--- glPassThroughxOES -----------------------------------------------------------
-
-glPassThroughxOES
-  :: MonadIO m
-  => GLfixed -- ^ @token@.
-  -> m ()
-glPassThroughxOES v1 = liftIO $ dyn81 ptr_glPassThroughxOES v1
-
-{-# NOINLINE ptr_glPassThroughxOES #-}
-ptr_glPassThroughxOES :: FunPtr (GLfixed -> IO ())
-ptr_glPassThroughxOES = unsafePerformIO $ getCommand "glPassThroughxOES"
+  glMultiTexCoordP1ui,
+  glMultiTexCoordP1uiv,
+  glMultiTexCoordP2ui,
+  glMultiTexCoordP2uiv,
+  glMultiTexCoordP3ui,
+  glMultiTexCoordP3uiv,
+  glMultiTexCoordP4ui,
+  glMultiTexCoordP4uiv,
+  glMultiTexCoordPointerEXT,
+  glMultiTexEnvfEXT,
+  glMultiTexEnvfvEXT,
+  glMultiTexEnviEXT,
+  glMultiTexEnvivEXT,
+  glMultiTexGendEXT,
+  glMultiTexGendvEXT,
+  glMultiTexGenfEXT,
+  glMultiTexGenfvEXT,
+  glMultiTexGeniEXT,
+  glMultiTexGenivEXT,
+  glMultiTexImage1DEXT,
+  glMultiTexImage2DEXT,
+  glMultiTexImage3DEXT,
+  glMultiTexParameterIivEXT,
+  glMultiTexParameterIuivEXT,
+  glMultiTexParameterfEXT,
+  glMultiTexParameterfvEXT,
+  glMultiTexParameteriEXT,
+  glMultiTexParameterivEXT,
+  glMultiTexRenderbufferEXT,
+  glMultiTexSubImage1DEXT,
+  glMultiTexSubImage2DEXT,
+  glMultiTexSubImage3DEXT,
+  glMulticastBarrierNV,
+  glMulticastBlitFramebufferNV,
+  glMulticastBufferSubDataNV,
+  glMulticastCopyBufferSubDataNV,
+  glMulticastCopyImageSubDataNV,
+  glMulticastFramebufferSampleLocationsfvNV,
+  glMulticastGetQueryObjecti64vNV,
+  glMulticastGetQueryObjectivNV,
+  glMulticastGetQueryObjectui64vNV,
+  glMulticastGetQueryObjectuivNV,
+  glMulticastWaitSyncNV,
+  glNamedBufferData,
+  glNamedBufferDataEXT,
+  glNamedBufferPageCommitmentARB,
+  glNamedBufferPageCommitmentEXT,
+  glNamedBufferStorage,
+  glNamedBufferStorageEXT,
+  glNamedBufferStorageExternalEXT,
+  glNamedBufferStorageMemEXT,
+  glNamedBufferSubData,
+  glNamedBufferSubDataEXT,
+  glNamedCopyBufferSubDataEXT,
+  glNamedFramebufferDrawBuffer,
+  glNamedFramebufferDrawBuffers,
+  glNamedFramebufferParameteri,
+  glNamedFramebufferParameteriEXT,
+  glNamedFramebufferReadBuffer,
+  glNamedFramebufferRenderbuffer,
+  glNamedFramebufferRenderbufferEXT,
+  glNamedFramebufferSampleLocationsfvARB,
+  glNamedFramebufferSampleLocationsfvNV,
+  glNamedFramebufferSamplePositionsfvAMD,
+  glNamedFramebufferTexture,
+  glNamedFramebufferTexture1DEXT,
+  glNamedFramebufferTexture2DEXT,
+  glNamedFramebufferTexture3DEXT,
+  glNamedFramebufferTextureEXT,
+  glNamedFramebufferTextureFaceEXT,
+  glNamedFramebufferTextureLayer,
+  glNamedFramebufferTextureLayerEXT,
+  glNamedProgramLocalParameter4dEXT,
+  glNamedProgramLocalParameter4dvEXT,
+  glNamedProgramLocalParameter4fEXT,
+  glNamedProgramLocalParameter4fvEXT,
+  glNamedProgramLocalParameterI4iEXT,
+  glNamedProgramLocalParameterI4ivEXT,
+  glNamedProgramLocalParameterI4uiEXT,
+  glNamedProgramLocalParameterI4uivEXT,
+  glNamedProgramLocalParameters4fvEXT,
+  glNamedProgramLocalParametersI4ivEXT,
+  glNamedProgramLocalParametersI4uivEXT,
+  glNamedProgramStringEXT,
+  glNamedRenderbufferStorage,
+  glNamedRenderbufferStorageEXT,
+  glNamedRenderbufferStorageMultisample,
+  glNamedRenderbufferStorageMultisampleCoverageEXT,
+  glNamedRenderbufferStorageMultisampleEXT,
+  glNamedStringARB,
+  glNewList,
+  glNewObjectBufferATI,
+  glNormal3b,
+  glNormal3bv,
+  glNormal3d,
+  glNormal3dv,
+  glNormal3f,
+  glNormal3fVertex3fSUN,
+  glNormal3fVertex3fvSUN,
+  glNormal3fv
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glMultiTexCoordP1ui ---------------------------------------------------------
+
+glMultiTexCoordP1ui
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glMultiTexCoordP1ui v1 v2 v3 = liftIO $ dyn30 ptr_glMultiTexCoordP1ui v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP1ui #-}
+ptr_glMultiTexCoordP1ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexCoordP1ui = unsafePerformIO $ getCommand "glMultiTexCoordP1ui"
+
+-- glMultiTexCoordP1uiv --------------------------------------------------------
+
+glMultiTexCoordP1uiv
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glMultiTexCoordP1uiv v1 v2 v3 = liftIO $ dyn422 ptr_glMultiTexCoordP1uiv v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP1uiv #-}
+ptr_glMultiTexCoordP1uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMultiTexCoordP1uiv = unsafePerformIO $ getCommand "glMultiTexCoordP1uiv"
+
+-- glMultiTexCoordP2ui ---------------------------------------------------------
+
+glMultiTexCoordP2ui
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glMultiTexCoordP2ui v1 v2 v3 = liftIO $ dyn30 ptr_glMultiTexCoordP2ui v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP2ui #-}
+ptr_glMultiTexCoordP2ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexCoordP2ui = unsafePerformIO $ getCommand "glMultiTexCoordP2ui"
+
+-- glMultiTexCoordP2uiv --------------------------------------------------------
+
+glMultiTexCoordP2uiv
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glMultiTexCoordP2uiv v1 v2 v3 = liftIO $ dyn422 ptr_glMultiTexCoordP2uiv v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP2uiv #-}
+ptr_glMultiTexCoordP2uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMultiTexCoordP2uiv = unsafePerformIO $ getCommand "glMultiTexCoordP2uiv"
+
+-- glMultiTexCoordP3ui ---------------------------------------------------------
+
+glMultiTexCoordP3ui
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glMultiTexCoordP3ui v1 v2 v3 = liftIO $ dyn30 ptr_glMultiTexCoordP3ui v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP3ui #-}
+ptr_glMultiTexCoordP3ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexCoordP3ui = unsafePerformIO $ getCommand "glMultiTexCoordP3ui"
+
+-- glMultiTexCoordP3uiv --------------------------------------------------------
+
+glMultiTexCoordP3uiv
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glMultiTexCoordP3uiv v1 v2 v3 = liftIO $ dyn422 ptr_glMultiTexCoordP3uiv v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP3uiv #-}
+ptr_glMultiTexCoordP3uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMultiTexCoordP3uiv = unsafePerformIO $ getCommand "glMultiTexCoordP3uiv"
+
+-- glMultiTexCoordP4ui ---------------------------------------------------------
+
+glMultiTexCoordP4ui
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glMultiTexCoordP4ui v1 v2 v3 = liftIO $ dyn30 ptr_glMultiTexCoordP4ui v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP4ui #-}
+ptr_glMultiTexCoordP4ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexCoordP4ui = unsafePerformIO $ getCommand "glMultiTexCoordP4ui"
+
+-- glMultiTexCoordP4uiv --------------------------------------------------------
+
+glMultiTexCoordP4uiv
+  :: MonadIO m
+  => GLenum -- ^ @texture@.
+  -> GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glMultiTexCoordP4uiv v1 v2 v3 = liftIO $ dyn422 ptr_glMultiTexCoordP4uiv v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoordP4uiv #-}
+ptr_glMultiTexCoordP4uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMultiTexCoordP4uiv = unsafePerformIO $ getCommand "glMultiTexCoordP4uiv"
+
+-- glMultiTexCoordPointerEXT ---------------------------------------------------
+
+glMultiTexCoordPointerEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glMultiTexCoordPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn578 ptr_glMultiTexCoordPointerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMultiTexCoordPointerEXT #-}
+ptr_glMultiTexCoordPointerEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glMultiTexCoordPointerEXT = unsafePerformIO $ getCommand "glMultiTexCoordPointerEXT"
+
+-- glMultiTexEnvfEXT -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexEnvfvEXT'.
+glMultiTexEnvfEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glMultiTexEnvfEXT v1 v2 v3 v4 = liftIO $ dyn579 ptr_glMultiTexEnvfEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexEnvfEXT #-}
+ptr_glMultiTexEnvfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glMultiTexEnvfEXT = unsafePerformIO $ getCommand "glMultiTexEnvfEXT"
+
+-- glMultiTexEnvfvEXT ----------------------------------------------------------
+
+glMultiTexEnvfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glMultiTexEnvfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glMultiTexEnvfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexEnvfvEXT #-}
+ptr_glMultiTexEnvfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexEnvfvEXT = unsafePerformIO $ getCommand "glMultiTexEnvfvEXT"
+
+-- glMultiTexEnviEXT -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexEnvivEXT'.
+glMultiTexEnviEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glMultiTexEnviEXT v1 v2 v3 v4 = liftIO $ dyn580 ptr_glMultiTexEnviEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexEnviEXT #-}
+ptr_glMultiTexEnviEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
+ptr_glMultiTexEnviEXT = unsafePerformIO $ getCommand "glMultiTexEnviEXT"
+
+-- glMultiTexEnvivEXT ----------------------------------------------------------
+
+glMultiTexEnvivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMultiTexEnvivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glMultiTexEnvivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexEnvivEXT #-}
+ptr_glMultiTexEnvivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexEnvivEXT = unsafePerformIO $ getCommand "glMultiTexEnvivEXT"
+
+-- glMultiTexGendEXT -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexGendvEXT'.
+glMultiTexGendEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLdouble -- ^ @param@.
+  -> m ()
+glMultiTexGendEXT v1 v2 v3 v4 = liftIO $ dyn581 ptr_glMultiTexGendEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGendEXT #-}
+ptr_glMultiTexGendEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
+ptr_glMultiTexGendEXT = unsafePerformIO $ getCommand "glMultiTexGendEXT"
+
+-- glMultiTexGendvEXT ----------------------------------------------------------
+
+glMultiTexGendvEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
+  -> m ()
+glMultiTexGendvEXT v1 v2 v3 v4 = liftIO $ dyn362 ptr_glMultiTexGendvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGendvEXT #-}
+ptr_glMultiTexGendvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexGendvEXT = unsafePerformIO $ getCommand "glMultiTexGendvEXT"
+
+-- glMultiTexGenfEXT -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexGenfvEXT'.
+glMultiTexGenfEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glMultiTexGenfEXT v1 v2 v3 v4 = liftIO $ dyn579 ptr_glMultiTexGenfEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGenfEXT #-}
+ptr_glMultiTexGenfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glMultiTexGenfEXT = unsafePerformIO $ getCommand "glMultiTexGenfEXT"
+
+-- glMultiTexGenfvEXT ----------------------------------------------------------
+
+glMultiTexGenfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glMultiTexGenfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glMultiTexGenfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGenfvEXT #-}
+ptr_glMultiTexGenfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexGenfvEXT = unsafePerformIO $ getCommand "glMultiTexGenfvEXT"
+
+-- glMultiTexGeniEXT -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexGenivEXT'.
+glMultiTexGeniEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glMultiTexGeniEXT v1 v2 v3 v4 = liftIO $ dyn580 ptr_glMultiTexGeniEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGeniEXT #-}
+ptr_glMultiTexGeniEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
+ptr_glMultiTexGeniEXT = unsafePerformIO $ getCommand "glMultiTexGeniEXT"
+
+-- glMultiTexGenivEXT ----------------------------------------------------------
+
+glMultiTexGenivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMultiTexGenivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glMultiTexGenivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexGenivEXT #-}
+ptr_glMultiTexGenivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexGenivEXT = unsafePerformIO $ getCommand "glMultiTexGenivEXT"
+
+-- glMultiTexImage1DEXT --------------------------------------------------------
+
+glMultiTexImage1DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn582 ptr_glMultiTexImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glMultiTexImage1DEXT #-}
+ptr_glMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexImage1DEXT = unsafePerformIO $ getCommand "glMultiTexImage1DEXT"
+
+-- glMultiTexImage2DEXT --------------------------------------------------------
+
+glMultiTexImage2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn583 ptr_glMultiTexImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glMultiTexImage2DEXT #-}
+ptr_glMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexImage2DEXT = unsafePerformIO $ getCommand "glMultiTexImage2DEXT"
+
+-- glMultiTexImage3DEXT --------------------------------------------------------
+
+glMultiTexImage3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn584 ptr_glMultiTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glMultiTexImage3DEXT #-}
+ptr_glMultiTexImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexImage3DEXT = unsafePerformIO $ getCommand "glMultiTexImage3DEXT"
+
+-- glMultiTexParameterIivEXT ---------------------------------------------------
+
+glMultiTexParameterIivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMultiTexParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glMultiTexParameterIivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameterIivEXT #-}
+ptr_glMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIivEXT"
+
+-- glMultiTexParameterIuivEXT --------------------------------------------------
+
+glMultiTexParameterIuivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glMultiTexParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glMultiTexParameterIuivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameterIuivEXT #-}
+ptr_glMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIuivEXT"
+
+-- glMultiTexParameterfEXT -----------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexParameterfvEXT'.
+glMultiTexParameterfEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glMultiTexParameterfEXT v1 v2 v3 v4 = liftIO $ dyn579 ptr_glMultiTexParameterfEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameterfEXT #-}
+ptr_glMultiTexParameterfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glMultiTexParameterfEXT = unsafePerformIO $ getCommand "glMultiTexParameterfEXT"
+
+-- glMultiTexParameterfvEXT ----------------------------------------------------
+
+glMultiTexParameterfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glMultiTexParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn327 ptr_glMultiTexParameterfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameterfvEXT #-}
+ptr_glMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glMultiTexParameterfvEXT"
+
+-- glMultiTexParameteriEXT -----------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexParameterivEXT'.
+glMultiTexParameteriEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glMultiTexParameteriEXT v1 v2 v3 v4 = liftIO $ dyn580 ptr_glMultiTexParameteriEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameteriEXT #-}
+ptr_glMultiTexParameteriEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
+ptr_glMultiTexParameteriEXT = unsafePerformIO $ getCommand "glMultiTexParameteriEXT"
+
+-- glMultiTexParameterivEXT ----------------------------------------------------
+
+glMultiTexParameterivEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glMultiTexParameterivEXT v1 v2 v3 v4 = liftIO $ dyn328 ptr_glMultiTexParameterivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMultiTexParameterivEXT #-}
+ptr_glMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glMultiTexParameterivEXT = unsafePerformIO $ getCommand "glMultiTexParameterivEXT"
+
+-- glMultiTexRenderbufferEXT ---------------------------------------------------
+
+glMultiTexRenderbufferEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @renderbuffer@.
+  -> m ()
+glMultiTexRenderbufferEXT v1 v2 v3 = liftIO $ dyn30 ptr_glMultiTexRenderbufferEXT v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexRenderbufferEXT #-}
+ptr_glMultiTexRenderbufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glMultiTexRenderbufferEXT = unsafePerformIO $ getCommand "glMultiTexRenderbufferEXT"
+
+-- glMultiTexSubImage1DEXT -----------------------------------------------------
+
+glMultiTexSubImage1DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn585 ptr_glMultiTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glMultiTexSubImage1DEXT #-}
+ptr_glMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexSubImage1DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage1DEXT"
+
+-- glMultiTexSubImage2DEXT -----------------------------------------------------
+
+glMultiTexSubImage2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn586 ptr_glMultiTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glMultiTexSubImage2DEXT #-}
+ptr_glMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexSubImage2DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage2DEXT"
+
+-- glMultiTexSubImage3DEXT -----------------------------------------------------
+
+glMultiTexSubImage3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @texunit@ of type @TextureUnit@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn587 ptr_glMultiTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+
+{-# NOINLINE ptr_glMultiTexSubImage3DEXT #-}
+ptr_glMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glMultiTexSubImage3DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage3DEXT"
+
+-- glMulticastBarrierNV --------------------------------------------------------
+
+glMulticastBarrierNV
+  :: MonadIO m
+  => m ()
+glMulticastBarrierNV = liftIO $ dyn11 ptr_glMulticastBarrierNV
+
+{-# NOINLINE ptr_glMulticastBarrierNV #-}
+ptr_glMulticastBarrierNV :: FunPtr (IO ())
+ptr_glMulticastBarrierNV = unsafePerformIO $ getCommand "glMulticastBarrierNV"
+
+-- glMulticastBlitFramebufferNV ------------------------------------------------
+
+glMulticastBlitFramebufferNV
+  :: MonadIO m
+  => GLuint -- ^ @srcGpu@.
+  -> GLuint -- ^ @dstGpu@.
+  -> GLint -- ^ @srcX0@.
+  -> GLint -- ^ @srcY0@.
+  -> GLint -- ^ @srcX1@.
+  -> GLint -- ^ @srcY1@.
+  -> GLint -- ^ @dstX0@.
+  -> GLint -- ^ @dstY0@.
+  -> GLint -- ^ @dstX1@.
+  -> GLint -- ^ @dstY1@.
+  -> GLbitfield -- ^ @mask@.
+  -> GLenum -- ^ @filter@.
+  -> m ()
+glMulticastBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn58 ptr_glMulticastBlitFramebufferNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+
+{-# NOINLINE ptr_glMulticastBlitFramebufferNV #-}
+ptr_glMulticastBlitFramebufferNV :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
+ptr_glMulticastBlitFramebufferNV = unsafePerformIO $ getCommand "glMulticastBlitFramebufferNV"
+
+-- glMulticastBufferSubDataNV --------------------------------------------------
+
+glMulticastBufferSubDataNV
+  :: MonadIO m
+  => GLbitfield -- ^ @gpuMask@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> Ptr a -- ^ @data@.
+  -> m ()
+glMulticastBufferSubDataNV v1 v2 v3 v4 v5 = liftIO $ dyn501 ptr_glMulticastBufferSubDataNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMulticastBufferSubDataNV #-}
+ptr_glMulticastBufferSubDataNV :: FunPtr (GLbitfield -> GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glMulticastBufferSubDataNV = unsafePerformIO $ getCommand "glMulticastBufferSubDataNV"
+
+-- glMulticastCopyBufferSubDataNV ----------------------------------------------
+
+glMulticastCopyBufferSubDataNV
+  :: MonadIO m
+  => GLuint -- ^ @readGpu@.
+  -> GLbitfield -- ^ @writeGpuMask@.
+  -> GLuint -- ^ @readBuffer@.
+  -> GLuint -- ^ @writeBuffer@.
+  -> GLintptr -- ^ @readOffset@.
+  -> GLintptr -- ^ @writeOffset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> m ()
+glMulticastCopyBufferSubDataNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn588 ptr_glMulticastCopyBufferSubDataNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMulticastCopyBufferSubDataNV #-}
+ptr_glMulticastCopyBufferSubDataNV :: FunPtr (GLuint -> GLbitfield -> GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glMulticastCopyBufferSubDataNV = unsafePerformIO $ getCommand "glMulticastCopyBufferSubDataNV"
+
+-- glMulticastCopyImageSubDataNV -----------------------------------------------
+
+glMulticastCopyImageSubDataNV
+  :: MonadIO m
+  => GLuint -- ^ @srcGpu@.
+  -> GLbitfield -- ^ @dstGpuMask@.
+  -> GLuint -- ^ @srcName@.
+  -> GLenum -- ^ @srcTarget@.
+  -> GLint -- ^ @srcLevel@.
+  -> GLint -- ^ @srcX@.
+  -> GLint -- ^ @srcY@.
+  -> GLint -- ^ @srcZ@.
+  -> GLuint -- ^ @dstName@.
+  -> GLenum -- ^ @dstTarget@.
+  -> GLint -- ^ @dstLevel@.
+  -> GLint -- ^ @dstX@.
+  -> GLint -- ^ @dstY@.
+  -> GLint -- ^ @dstZ@.
+  -> GLsizei -- ^ @srcWidth@.
+  -> GLsizei -- ^ @srcHeight@.
+  -> GLsizei -- ^ @srcDepth@.
+  -> m ()
+glMulticastCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 = liftIO $ dyn500 ptr_glMulticastCopyImageSubDataNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17
+
+{-# NOINLINE ptr_glMulticastCopyImageSubDataNV #-}
+ptr_glMulticastCopyImageSubDataNV :: FunPtr (GLuint -> GLbitfield -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glMulticastCopyImageSubDataNV = unsafePerformIO $ getCommand "glMulticastCopyImageSubDataNV"
+
+-- glMulticastFramebufferSampleLocationsfvNV -----------------------------------
+
+glMulticastFramebufferSampleLocationsfvNV
+  :: MonadIO m
+  => GLuint -- ^ @gpu@.
+  -> GLuint -- ^ @framebuffer@.
+  -> GLuint -- ^ @start@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@.
+  -> m ()
+glMulticastFramebufferSampleLocationsfvNV v1 v2 v3 v4 v5 = liftIO $ dyn589 ptr_glMulticastFramebufferSampleLocationsfvNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glMulticastFramebufferSampleLocationsfvNV #-}
+ptr_glMulticastFramebufferSampleLocationsfvNV :: FunPtr (GLuint -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glMulticastFramebufferSampleLocationsfvNV = unsafePerformIO $ getCommand "glMulticastFramebufferSampleLocationsfvNV"
+
+-- glMulticastGetQueryObjecti64vNV ---------------------------------------------
+
+glMulticastGetQueryObjecti64vNV
+  :: MonadIO m
+  => GLuint -- ^ @gpu@.
+  -> GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint64 -- ^ @params@.
+  -> m ()
+glMulticastGetQueryObjecti64vNV v1 v2 v3 v4 = liftIO $ dyn451 ptr_glMulticastGetQueryObjecti64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMulticastGetQueryObjecti64vNV #-}
+ptr_glMulticastGetQueryObjecti64vNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
+ptr_glMulticastGetQueryObjecti64vNV = unsafePerformIO $ getCommand "glMulticastGetQueryObjecti64vNV"
+
+-- glMulticastGetQueryObjectivNV -----------------------------------------------
+
+glMulticastGetQueryObjectivNV
+  :: MonadIO m
+  => GLuint -- ^ @gpu@.
+  -> GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glMulticastGetQueryObjectivNV v1 v2 v3 v4 = liftIO $ dyn307 ptr_glMulticastGetQueryObjectivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMulticastGetQueryObjectivNV #-}
+ptr_glMulticastGetQueryObjectivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glMulticastGetQueryObjectivNV = unsafePerformIO $ getCommand "glMulticastGetQueryObjectivNV"
+
+-- glMulticastGetQueryObjectui64vNV --------------------------------------------
+
+glMulticastGetQueryObjectui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @gpu@.
+  -> GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint64 -- ^ @params@.
+  -> m ()
+glMulticastGetQueryObjectui64vNV v1 v2 v3 v4 = liftIO $ dyn590 ptr_glMulticastGetQueryObjectui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMulticastGetQueryObjectui64vNV #-}
+ptr_glMulticastGetQueryObjectui64vNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLuint64 -> IO ())
+ptr_glMulticastGetQueryObjectui64vNV = unsafePerformIO $ getCommand "glMulticastGetQueryObjectui64vNV"
+
+-- glMulticastGetQueryObjectuivNV ----------------------------------------------
+
+glMulticastGetQueryObjectuivNV
+  :: MonadIO m
+  => GLuint -- ^ @gpu@.
+  -> GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @params@.
+  -> m ()
+glMulticastGetQueryObjectuivNV v1 v2 v3 v4 = liftIO $ dyn591 ptr_glMulticastGetQueryObjectuivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMulticastGetQueryObjectuivNV #-}
+ptr_glMulticastGetQueryObjectuivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glMulticastGetQueryObjectuivNV = unsafePerformIO $ getCommand "glMulticastGetQueryObjectuivNV"
+
+-- glMulticastWaitSyncNV -------------------------------------------------------
+
+glMulticastWaitSyncNV
+  :: MonadIO m
+  => GLuint -- ^ @signalGpu@.
+  -> GLbitfield -- ^ @waitGpuMask@.
+  -> m ()
+glMulticastWaitSyncNV v1 v2 = liftIO $ dyn592 ptr_glMulticastWaitSyncNV v1 v2
+
+{-# NOINLINE ptr_glMulticastWaitSyncNV #-}
+ptr_glMulticastWaitSyncNV :: FunPtr (GLuint -> GLbitfield -> IO ())
+ptr_glMulticastWaitSyncNV = unsafePerformIO $ getCommand "glMulticastWaitSyncNV"
+
+-- glNamedBufferData -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferData.xhtml OpenGL 4.x>.
+glNamedBufferData
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@.
+  -> GLenum -- ^ @usage@.
+  -> m ()
+glNamedBufferData v1 v2 v3 v4 = liftIO $ dyn593 ptr_glNamedBufferData v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferData #-}
+ptr_glNamedBufferData :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
+ptr_glNamedBufferData = unsafePerformIO $ getCommand "glNamedBufferData"
+
+-- glNamedBufferDataEXT --------------------------------------------------------
+
+glNamedBufferDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLsizeiptr -- ^ @size@.
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
+  -> GLenum -- ^ @usage@ of type @VertexBufferObjectUsage@.
+  -> m ()
+glNamedBufferDataEXT v1 v2 v3 v4 = liftIO $ dyn593 ptr_glNamedBufferDataEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferDataEXT #-}
+ptr_glNamedBufferDataEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
+ptr_glNamedBufferDataEXT = unsafePerformIO $ getCommand "glNamedBufferDataEXT"
+
+-- glNamedBufferPageCommitmentARB ----------------------------------------------
+
+glNamedBufferPageCommitmentARB
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glNamedBufferPageCommitmentARB v1 v2 v3 v4 = liftIO $ dyn594 ptr_glNamedBufferPageCommitmentARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferPageCommitmentARB #-}
+ptr_glNamedBufferPageCommitmentARB :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
+ptr_glNamedBufferPageCommitmentARB = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentARB"
+
+-- glNamedBufferPageCommitmentEXT ----------------------------------------------
+
+glNamedBufferPageCommitmentEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glNamedBufferPageCommitmentEXT v1 v2 v3 v4 = liftIO $ dyn594 ptr_glNamedBufferPageCommitmentEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferPageCommitmentEXT #-}
+ptr_glNamedBufferPageCommitmentEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
+ptr_glNamedBufferPageCommitmentEXT = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentEXT"
+
+-- glNamedBufferStorage --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferStorage.xhtml OpenGL 4.x>.
+glNamedBufferStorage
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glNamedBufferStorage v1 v2 v3 v4 = liftIO $ dyn595 ptr_glNamedBufferStorage v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferStorage #-}
+ptr_glNamedBufferStorage :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
+ptr_glNamedBufferStorage = unsafePerformIO $ getCommand "glNamedBufferStorage"
+
+-- glNamedBufferStorageEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glNamedBufferStorage'.
+glNamedBufferStorageEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glNamedBufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn595 ptr_glNamedBufferStorageEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferStorageEXT #-}
+ptr_glNamedBufferStorageEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
+ptr_glNamedBufferStorageEXT = unsafePerformIO $ getCommand "glNamedBufferStorageEXT"
+
+-- glNamedBufferStorageExternalEXT ---------------------------------------------
+
+glNamedBufferStorageExternalEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> GLeglClientBufferEXT -- ^ @clientBuffer@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glNamedBufferStorageExternalEXT v1 v2 v3 v4 v5 = liftIO $ dyn596 ptr_glNamedBufferStorageExternalEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedBufferStorageExternalEXT #-}
+ptr_glNamedBufferStorageExternalEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLeglClientBufferEXT -> GLbitfield -> IO ())
+ptr_glNamedBufferStorageExternalEXT = unsafePerformIO $ getCommand "glNamedBufferStorageExternalEXT"
+
+-- glNamedBufferStorageMemEXT --------------------------------------------------
+
+glNamedBufferStorageMemEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glNamedBufferStorageMemEXT v1 v2 v3 v4 = liftIO $ dyn597 ptr_glNamedBufferStorageMemEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferStorageMemEXT #-}
+ptr_glNamedBufferStorageMemEXT :: FunPtr (GLuint -> GLsizeiptr -> GLuint -> GLuint64 -> IO ())
+ptr_glNamedBufferStorageMemEXT = unsafePerformIO $ getCommand "glNamedBufferStorageMemEXT"
+
+-- glNamedBufferSubData --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>.
+glNamedBufferSubData
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
+  -> m ()
+glNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn370 ptr_glNamedBufferSubData v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferSubData #-}
+ptr_glNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glNamedBufferSubData = unsafePerformIO $ getCommand "glNamedBufferSubData"
+
+-- glNamedBufferSubDataEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glNamedBufferSubData'.
+glNamedBufferSubDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
+  -> m ()
+glNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn370 ptr_glNamedBufferSubDataEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferSubDataEXT #-}
+ptr_glNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedBufferSubDataEXT"
+
+-- glNamedCopyBufferSubDataEXT -------------------------------------------------
+
+glNamedCopyBufferSubDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @readBuffer@.
+  -> GLuint -- ^ @writeBuffer@.
+  -> GLintptr -- ^ @readOffset@.
+  -> GLintptr -- ^ @writeOffset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> m ()
+glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn177 ptr_glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedCopyBufferSubDataEXT #-}
+ptr_glNamedCopyBufferSubDataEXT :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glNamedCopyBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedCopyBufferSubDataEXT"
+
+-- glNamedFramebufferDrawBuffer ------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffer.xhtml OpenGL 4.x>.
+glNamedFramebufferDrawBuffer
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @buf@.
+  -> m ()
+glNamedFramebufferDrawBuffer v1 v2 = liftIO $ dyn16 ptr_glNamedFramebufferDrawBuffer v1 v2
+
+{-# NOINLINE ptr_glNamedFramebufferDrawBuffer #-}
+ptr_glNamedFramebufferDrawBuffer :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glNamedFramebufferDrawBuffer = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffer"
+
+-- glNamedFramebufferDrawBuffers -----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffers.xhtml OpenGL 4.x>.
+glNamedFramebufferDrawBuffers
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLenum -- ^ @bufs@.
+  -> m ()
+glNamedFramebufferDrawBuffers v1 v2 v3 = liftIO $ dyn286 ptr_glNamedFramebufferDrawBuffers v1 v2 v3
+
+{-# NOINLINE ptr_glNamedFramebufferDrawBuffers #-}
+ptr_glNamedFramebufferDrawBuffers :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
+ptr_glNamedFramebufferDrawBuffers = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffers"
+
+-- glNamedFramebufferParameteri ------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferParameteri.xhtml OpenGL 4.x>.
+glNamedFramebufferParameteri
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @pname@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glNamedFramebufferParameteri v1 v2 v3 = liftIO $ dyn481 ptr_glNamedFramebufferParameteri v1 v2 v3
+
+{-# NOINLINE ptr_glNamedFramebufferParameteri #-}
+ptr_glNamedFramebufferParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glNamedFramebufferParameteri = unsafePerformIO $ getCommand "glNamedFramebufferParameteri"
+
+-- glNamedFramebufferParameteriEXT ---------------------------------------------
+
+glNamedFramebufferParameteriEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @pname@ of type @FramebufferParameterName@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glNamedFramebufferParameteriEXT v1 v2 v3 = liftIO $ dyn481 ptr_glNamedFramebufferParameteriEXT v1 v2 v3
+
+{-# NOINLINE ptr_glNamedFramebufferParameteriEXT #-}
+ptr_glNamedFramebufferParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glNamedFramebufferParameteriEXT = unsafePerformIO $ getCommand "glNamedFramebufferParameteriEXT"
+
+-- glNamedFramebufferReadBuffer ------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>.
+glNamedFramebufferReadBuffer
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @src@.
+  -> m ()
+glNamedFramebufferReadBuffer v1 v2 = liftIO $ dyn16 ptr_glNamedFramebufferReadBuffer v1 v2
+
+{-# NOINLINE ptr_glNamedFramebufferReadBuffer #-}
+ptr_glNamedFramebufferReadBuffer :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glNamedFramebufferReadBuffer = unsafePerformIO $ getCommand "glNamedFramebufferReadBuffer"
+
+-- glNamedFramebufferRenderbuffer ----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferRenderbuffer.xhtml OpenGL 4.x>.
+glNamedFramebufferRenderbuffer
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @attachment@.
+  -> GLenum -- ^ @renderbuffertarget@.
+  -> GLuint -- ^ @renderbuffer@.
+  -> m ()
+glNamedFramebufferRenderbuffer v1 v2 v3 v4 = liftIO $ dyn598 ptr_glNamedFramebufferRenderbuffer v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferRenderbuffer #-}
+ptr_glNamedFramebufferRenderbuffer :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
+ptr_glNamedFramebufferRenderbuffer = unsafePerformIO $ getCommand "glNamedFramebufferRenderbuffer"
+
+-- glNamedFramebufferRenderbufferEXT -------------------------------------------
+
+glNamedFramebufferRenderbufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
+  -> GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
+  -> m ()
+glNamedFramebufferRenderbufferEXT v1 v2 v3 v4 = liftIO $ dyn598 ptr_glNamedFramebufferRenderbufferEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferRenderbufferEXT #-}
+ptr_glNamedFramebufferRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
+ptr_glNamedFramebufferRenderbufferEXT = unsafePerformIO $ getCommand "glNamedFramebufferRenderbufferEXT"
+
+-- glNamedFramebufferSampleLocationsfvARB --------------------------------------
+
+glNamedFramebufferSampleLocationsfvARB
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLuint -- ^ @start@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@.
+  -> m ()
+glNamedFramebufferSampleLocationsfvARB v1 v2 v3 v4 = liftIO $ dyn599 ptr_glNamedFramebufferSampleLocationsfvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferSampleLocationsfvARB #-}
+ptr_glNamedFramebufferSampleLocationsfvARB :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glNamedFramebufferSampleLocationsfvARB = unsafePerformIO $ getCommand "glNamedFramebufferSampleLocationsfvARB"
+
+-- glNamedFramebufferSampleLocationsfvNV ---------------------------------------
+
+glNamedFramebufferSampleLocationsfvNV
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLuint -- ^ @start@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@.
+  -> m ()
+glNamedFramebufferSampleLocationsfvNV v1 v2 v3 v4 = liftIO $ dyn599 ptr_glNamedFramebufferSampleLocationsfvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferSampleLocationsfvNV #-}
+ptr_glNamedFramebufferSampleLocationsfvNV :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glNamedFramebufferSampleLocationsfvNV = unsafePerformIO $ getCommand "glNamedFramebufferSampleLocationsfvNV"
+
+-- glNamedFramebufferSamplePositionsfvAMD --------------------------------------
+
+glNamedFramebufferSamplePositionsfvAMD
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLuint -- ^ @numsamples@.
+  -> GLuint -- ^ @pixelindex@.
+  -> Ptr GLfloat -- ^ @values@.
+  -> m ()
+glNamedFramebufferSamplePositionsfvAMD v1 v2 v3 v4 = liftIO $ dyn600 ptr_glNamedFramebufferSamplePositionsfvAMD v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferSamplePositionsfvAMD #-}
+ptr_glNamedFramebufferSamplePositionsfvAMD :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glNamedFramebufferSamplePositionsfvAMD = unsafePerformIO $ getCommand "glNamedFramebufferSamplePositionsfvAMD"
+
+-- glNamedFramebufferTexture ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>.
+glNamedFramebufferTexture
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @attachment@.
+  -> GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> m ()
+glNamedFramebufferTexture v1 v2 v3 v4 = liftIO $ dyn601 ptr_glNamedFramebufferTexture v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferTexture #-}
+ptr_glNamedFramebufferTexture :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
+ptr_glNamedFramebufferTexture = unsafePerformIO $ getCommand "glNamedFramebufferTexture"
+
+-- glNamedFramebufferTexture1DEXT ----------------------------------------------
+
+glNamedFramebufferTexture1DEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> m ()
+glNamedFramebufferTexture1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn602 ptr_glNamedFramebufferTexture1DEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedFramebufferTexture1DEXT #-}
+ptr_glNamedFramebufferTexture1DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
+ptr_glNamedFramebufferTexture1DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture1DEXT"
+
+-- glNamedFramebufferTexture2DEXT ----------------------------------------------
+
+glNamedFramebufferTexture2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> m ()
+glNamedFramebufferTexture2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn602 ptr_glNamedFramebufferTexture2DEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedFramebufferTexture2DEXT #-}
+ptr_glNamedFramebufferTexture2DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
+ptr_glNamedFramebufferTexture2DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture2DEXT"
+
+-- glNamedFramebufferTexture3DEXT ----------------------------------------------
+
+glNamedFramebufferTexture3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLenum -- ^ @textarget@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> m ()
+glNamedFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn603 ptr_glNamedFramebufferTexture3DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glNamedFramebufferTexture3DEXT #-}
+ptr_glNamedFramebufferTexture3DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+ptr_glNamedFramebufferTexture3DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture3DEXT"
+
+-- glNamedFramebufferTextureEXT ------------------------------------------------
+
+glNamedFramebufferTextureEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> m ()
+glNamedFramebufferTextureEXT v1 v2 v3 v4 = liftIO $ dyn601 ptr_glNamedFramebufferTextureEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedFramebufferTextureEXT #-}
+ptr_glNamedFramebufferTextureEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
+ptr_glNamedFramebufferTextureEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureEXT"
+
+-- glNamedFramebufferTextureFaceEXT --------------------------------------------
+
+glNamedFramebufferTextureFaceEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLenum -- ^ @face@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> m ()
+glNamedFramebufferTextureFaceEXT v1 v2 v3 v4 v5 = liftIO $ dyn604 ptr_glNamedFramebufferTextureFaceEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedFramebufferTextureFaceEXT #-}
+ptr_glNamedFramebufferTextureFaceEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
+ptr_glNamedFramebufferTextureFaceEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureFaceEXT"
+
+-- glNamedFramebufferTextureLayer ----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTextureLayer.xhtml OpenGL 4.x>.
+glNamedFramebufferTextureLayer
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@.
+  -> GLenum -- ^ @attachment@.
+  -> GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @layer@.
+  -> m ()
+glNamedFramebufferTextureLayer v1 v2 v3 v4 v5 = liftIO $ dyn605 ptr_glNamedFramebufferTextureLayer v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedFramebufferTextureLayer #-}
+ptr_glNamedFramebufferTextureLayer :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+ptr_glNamedFramebufferTextureLayer = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayer"
+
+-- glNamedFramebufferTextureLayerEXT -------------------------------------------
+
+glNamedFramebufferTextureLayerEXT
+  :: MonadIO m
+  => GLuint -- ^ @framebuffer@ of type @Framebuffer@.
+  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
+  -> GLuint -- ^ @texture@ of type @Texture@.
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @layer@ of type @CheckedInt32@.
+  -> m ()
+glNamedFramebufferTextureLayerEXT v1 v2 v3 v4 v5 = liftIO $ dyn605 ptr_glNamedFramebufferTextureLayerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedFramebufferTextureLayerEXT #-}
+ptr_glNamedFramebufferTextureLayerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
+ptr_glNamedFramebufferTextureLayerEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayerEXT"
+
+-- glNamedProgramLocalParameter4dEXT -------------------------------------------
+
+-- | The vector equivalent of this command is 'glNamedProgramLocalParameter4dvEXT'.
+glNamedProgramLocalParameter4dEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glNamedProgramLocalParameter4dEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn606 ptr_glNamedProgramLocalParameter4dEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glNamedProgramLocalParameter4dEXT #-}
+ptr_glNamedProgramLocalParameter4dEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glNamedProgramLocalParameter4dEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dEXT"
+
+-- glNamedProgramLocalParameter4dvEXT ------------------------------------------
+
+glNamedProgramLocalParameter4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glNamedProgramLocalParameter4dvEXT v1 v2 v3 v4 = liftIO $ dyn375 ptr_glNamedProgramLocalParameter4dvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedProgramLocalParameter4dvEXT #-}
+ptr_glNamedProgramLocalParameter4dvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
+ptr_glNamedProgramLocalParameter4dvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dvEXT"
+
+-- glNamedProgramLocalParameter4fEXT -------------------------------------------
+
+-- | The vector equivalent of this command is 'glNamedProgramLocalParameter4fvEXT'.
+glNamedProgramLocalParameter4fEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glNamedProgramLocalParameter4fEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn607 ptr_glNamedProgramLocalParameter4fEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glNamedProgramLocalParameter4fEXT #-}
+ptr_glNamedProgramLocalParameter4fEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glNamedProgramLocalParameter4fEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fEXT"
+
+-- glNamedProgramLocalParameter4fvEXT ------------------------------------------
+
+glNamedProgramLocalParameter4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glNamedProgramLocalParameter4fvEXT v1 v2 v3 v4 = liftIO $ dyn376 ptr_glNamedProgramLocalParameter4fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedProgramLocalParameter4fvEXT #-}
+ptr_glNamedProgramLocalParameter4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glNamedProgramLocalParameter4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fvEXT"
+
+-- glNamedProgramLocalParameterI4iEXT ------------------------------------------
+
+-- | The vector equivalent of this command is 'glNamedProgramLocalParameterI4ivEXT'.
+glNamedProgramLocalParameterI4iEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glNamedProgramLocalParameterI4iEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn608 ptr_glNamedProgramLocalParameterI4iEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glNamedProgramLocalParameterI4iEXT #-}
+ptr_glNamedProgramLocalParameterI4iEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glNamedProgramLocalParameterI4iEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4iEXT"
+
+-- glNamedProgramLocalParameterI4ivEXT -----------------------------------------
+
+glNamedProgramLocalParameterI4ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glNamedProgramLocalParameterI4ivEXT v1 v2 v3 v4 = liftIO $ dyn373 ptr_glNamedProgramLocalParameterI4ivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedProgramLocalParameterI4ivEXT #-}
+ptr_glNamedProgramLocalParameterI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
+ptr_glNamedProgramLocalParameterI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4ivEXT"
+
+-- glNamedProgramLocalParameterI4uiEXT -----------------------------------------
+
+-- | The vector equivalent of this command is 'glNamedProgramLocalParameterI4uivEXT'.
+glNamedProgramLocalParameterI4uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glNamedProgramLocalParameterI4uiEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn609 ptr_glNamedProgramLocalParameterI4uiEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glNamedProgramLocalParameterI4uiEXT #-}
+ptr_glNamedProgramLocalParameterI4uiEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glNamedProgramLocalParameterI4uiEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uiEXT"
+
+-- glNamedProgramLocalParameterI4uivEXT ----------------------------------------
+
+glNamedProgramLocalParameterI4uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glNamedProgramLocalParameterI4uivEXT v1 v2 v3 v4 = liftIO $ dyn374 ptr_glNamedProgramLocalParameterI4uivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedProgramLocalParameterI4uivEXT #-}
+ptr_glNamedProgramLocalParameterI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glNamedProgramLocalParameterI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uivEXT"
+
+-- glNamedProgramLocalParameters4fvEXT -----------------------------------------
+
+glNamedProgramLocalParameters4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glNamedProgramLocalParameters4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn610 ptr_glNamedProgramLocalParameters4fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedProgramLocalParameters4fvEXT #-}
+ptr_glNamedProgramLocalParameters4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glNamedProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameters4fvEXT"
+
+-- glNamedProgramLocalParametersI4ivEXT ----------------------------------------
+
+glNamedProgramLocalParametersI4ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glNamedProgramLocalParametersI4ivEXT v1 v2 v3 v4 v5 = liftIO $ dyn611 ptr_glNamedProgramLocalParametersI4ivEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedProgramLocalParametersI4ivEXT #-}
+ptr_glNamedProgramLocalParametersI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glNamedProgramLocalParametersI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4ivEXT"
+
+-- glNamedProgramLocalParametersI4uivEXT ---------------------------------------
+
+glNamedProgramLocalParametersI4uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glNamedProgramLocalParametersI4uivEXT v1 v2 v3 v4 v5 = liftIO $ dyn612 ptr_glNamedProgramLocalParametersI4uivEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedProgramLocalParametersI4uivEXT #-}
+ptr_glNamedProgramLocalParametersI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glNamedProgramLocalParametersI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4uivEXT"
+
+-- glNamedProgramStringEXT -----------------------------------------------------
+
+glNamedProgramStringEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLenum -- ^ @format@ of type @ProgramFormat@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
+  -> m ()
+glNamedProgramStringEXT v1 v2 v3 v4 v5 = liftIO $ dyn613 ptr_glNamedProgramStringEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedProgramStringEXT #-}
+ptr_glNamedProgramStringEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glNamedProgramStringEXT = unsafePerformIO $ getCommand "glNamedProgramStringEXT"
+
+-- glNamedRenderbufferStorage --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>.
+glNamedRenderbufferStorage
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorage v1 v2 v3 v4 = liftIO $ dyn614 ptr_glNamedRenderbufferStorage v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedRenderbufferStorage #-}
+ptr_glNamedRenderbufferStorage :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorage = unsafePerformIO $ getCommand "glNamedRenderbufferStorage"
+
+-- glNamedRenderbufferStorageEXT -----------------------------------------------
+
+glNamedRenderbufferStorageEXT
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn614 ptr_glNamedRenderbufferStorageEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedRenderbufferStorageEXT #-}
+ptr_glNamedRenderbufferStorageEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageEXT"
+
+-- glNamedRenderbufferStorageMultisample ---------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>.
+glNamedRenderbufferStorageMultisample
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorageMultisample v1 v2 v3 v4 v5 = liftIO $ dyn615 ptr_glNamedRenderbufferStorageMultisample v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedRenderbufferStorageMultisample #-}
+ptr_glNamedRenderbufferStorageMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisample"
+
+-- glNamedRenderbufferStorageMultisampleCoverageEXT ----------------------------
+
+glNamedRenderbufferStorageMultisampleCoverageEXT
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorageMultisampleCoverageEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn616 ptr_glNamedRenderbufferStorageMultisampleCoverageEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleCoverageEXT #-}
+ptr_glNamedRenderbufferStorageMultisampleCoverageEXT :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorageMultisampleCoverageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleCoverageEXT"
+
+-- glNamedRenderbufferStorageMultisampleEXT ------------------------------------
+
+glNamedRenderbufferStorageMultisampleEXT
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5 = liftIO $ dyn615 ptr_glNamedRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleEXT #-}
+ptr_glNamedRenderbufferStorageMultisampleEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleEXT"
+
+-- glNamedStringARB ------------------------------------------------------------
+
+glNamedStringARB
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLint -- ^ @namelen@.
+  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
+  -> GLint -- ^ @stringlen@.
+  -> Ptr GLchar -- ^ @string@ pointing to @stringlen@ elements of type @GLchar@.
+  -> m ()
+glNamedStringARB v1 v2 v3 v4 v5 = liftIO $ dyn617 ptr_glNamedStringARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedStringARB #-}
+ptr_glNamedStringARB :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
+ptr_glNamedStringARB = unsafePerformIO $ getCommand "glNamedStringARB"
+
+-- glNewList -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNewList.xml OpenGL 2.x>.
+glNewList
+  :: MonadIO m
+  => GLuint -- ^ @list@ of type @List@.
+  -> GLenum -- ^ @mode@ of type [ListMode](Graphics-GL-Groups.html#ListMode).
+  -> m ()
+glNewList v1 v2 = liftIO $ dyn16 ptr_glNewList v1 v2
+
+{-# NOINLINE ptr_glNewList #-}
+ptr_glNewList :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glNewList = unsafePerformIO $ getCommand "glNewList"
+
+-- glNewObjectBufferATI --------------------------------------------------------
+
+glNewObjectBufferATI
+  :: MonadIO m
+  => GLsizei -- ^ @size@.
+  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
+  -> GLenum -- ^ @usage@ of type @ArrayObjectUsageATI@.
+  -> m GLuint
+glNewObjectBufferATI v1 v2 v3 = liftIO $ dyn618 ptr_glNewObjectBufferATI v1 v2 v3
+
+{-# NOINLINE ptr_glNewObjectBufferATI #-}
+ptr_glNewObjectBufferATI :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
+ptr_glNewObjectBufferATI = unsafePerformIO $ getCommand "glNewObjectBufferATI"
+
+-- glNormal3b ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3bv'.
+glNormal3b
+  :: MonadIO m
+  => GLbyte -- ^ @nx@.
+  -> GLbyte -- ^ @ny@.
+  -> GLbyte -- ^ @nz@.
+  -> m ()
+glNormal3b v1 v2 v3 = liftIO $ dyn37 ptr_glNormal3b v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3b #-}
+ptr_glNormal3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glNormal3b = unsafePerformIO $ getCommand "glNormal3b"
+
+-- glNormal3bv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
+glNormal3bv
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glNormal3bv v1 = liftIO $ dyn38 ptr_glNormal3bv v1
+
+{-# NOINLINE ptr_glNormal3bv #-}
+ptr_glNormal3bv :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glNormal3bv = unsafePerformIO $ getCommand "glNormal3bv"
+
+-- glNormal3d ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3dv'.
+glNormal3d
+  :: MonadIO m
+  => GLdouble -- ^ @nx@ of type @CoordD@.
+  -> GLdouble -- ^ @ny@ of type @CoordD@.
+  -> GLdouble -- ^ @nz@ of type @CoordD@.
+  -> m ()
+glNormal3d v1 v2 v3 = liftIO $ dyn39 ptr_glNormal3d v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3d #-}
+ptr_glNormal3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glNormal3d = unsafePerformIO $ getCommand "glNormal3d"
+
+-- glNormal3dv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
+glNormal3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glNormal3dv v1 = liftIO $ dyn40 ptr_glNormal3dv v1
+
+{-# NOINLINE ptr_glNormal3dv #-}
+ptr_glNormal3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glNormal3dv = unsafePerformIO $ getCommand "glNormal3dv"
+
+-- glNormal3f ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3fv'.
+glNormal3f
+  :: MonadIO m
+  => GLfloat -- ^ @nx@ of type @CoordF@.
+  -> GLfloat -- ^ @ny@ of type @CoordF@.
+  -> GLfloat -- ^ @nz@ of type @CoordF@.
+  -> m ()
+glNormal3f v1 v2 v3 = liftIO $ dyn41 ptr_glNormal3f v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3f #-}
+ptr_glNormal3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glNormal3f = unsafePerformIO $ getCommand "glNormal3f"
+
+-- glNormal3fVertex3fSUN -------------------------------------------------------
+
+glNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glNormal3fVertex3fSUN #-}
+ptr_glNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fSUN"
+
+-- glNormal3fVertex3fvSUN ------------------------------------------------------
+
+glNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glNormal3fVertex3fvSUN v1 v2 = liftIO $ dyn100 ptr_glNormal3fVertex3fvSUN v1 v2
+
+{-# NOINLINE ptr_glNormal3fVertex3fvSUN #-}
+ptr_glNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fvSUN"
+
+-- glNormal3fv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
+glNormal3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glNormal3fv v1 = liftIO $ dyn42 ptr_glNormal3fv v1
+
+{-# NOINLINE ptr_glNormal3fv #-}
+ptr_glNormal3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glNormal3fv = unsafePerformIO $ getCommand "glNormal3fv"
 
diff --git a/src/Graphics/GL/Functions/F19.hs b/src/Graphics/GL/Functions/F19.hs
--- a/src/Graphics/GL/Functions/F19.hs
+++ b/src/Graphics/GL/Functions/F19.hs
@@ -15,1549 +15,1555 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F19 (
-  glPatchParameterfv,
-  glPatchParameteri,
-  glPatchParameteriEXT,
-  glPatchParameteriOES,
-  glPathColorGenNV,
-  glPathCommandsNV,
-  glPathCoordsNV,
-  glPathCoverDepthFuncNV,
-  glPathDashArrayNV,
-  glPathFogGenNV,
-  glPathGlyphIndexArrayNV,
-  glPathGlyphIndexRangeNV,
-  glPathGlyphRangeNV,
-  glPathGlyphsNV,
-  glPathMemoryGlyphIndexArrayNV,
-  glPathParameterfNV,
-  glPathParameterfvNV,
-  glPathParameteriNV,
-  glPathParameterivNV,
-  glPathStencilDepthOffsetNV,
-  glPathStencilFuncNV,
-  glPathStringNV,
-  glPathSubCommandsNV,
-  glPathSubCoordsNV,
-  glPathTexGenNV,
-  glPauseTransformFeedback,
-  glPauseTransformFeedbackNV,
-  glPixelDataRangeNV,
-  glPixelMapfv,
-  glPixelMapuiv,
-  glPixelMapusv,
-  glPixelMapx,
-  glPixelStoref,
-  glPixelStorei,
-  glPixelStorex,
-  glPixelTexGenParameterfSGIS,
-  glPixelTexGenParameterfvSGIS,
-  glPixelTexGenParameteriSGIS,
-  glPixelTexGenParameterivSGIS,
-  glPixelTexGenSGIX,
-  glPixelTransferf,
-  glPixelTransferi,
-  glPixelTransferxOES,
-  glPixelTransformParameterfEXT,
-  glPixelTransformParameterfvEXT,
-  glPixelTransformParameteriEXT,
-  glPixelTransformParameterivEXT,
-  glPixelZoom,
-  glPixelZoomxOES,
-  glPointAlongPathNV,
-  glPointParameterf,
-  glPointParameterfARB,
-  glPointParameterfEXT,
-  glPointParameterfSGIS,
-  glPointParameterfv,
-  glPointParameterfvARB,
-  glPointParameterfvEXT,
-  glPointParameterfvSGIS,
-  glPointParameteri,
-  glPointParameteriNV,
-  glPointParameteriv,
-  glPointParameterivNV,
-  glPointParameterx,
-  glPointParameterxOES,
-  glPointParameterxv,
-  glPointParameterxvOES,
-  glPointSize,
-  glPointSizePointerOES,
-  glPointSizex,
-  glPointSizexOES,
-  glPollAsyncSGIX,
-  glPollInstrumentsSGIX,
-  glPolygonMode,
-  glPolygonModeNV,
-  glPolygonOffset,
-  glPolygonOffsetClampEXT,
-  glPolygonOffsetEXT,
-  glPolygonOffsetx,
-  glPolygonOffsetxOES,
-  glPolygonStipple,
-  glPopAttrib,
-  glPopClientAttrib,
-  glPopDebugGroup,
-  glPopDebugGroupKHR,
-  glPopGroupMarkerEXT,
-  glPopMatrix,
-  glPopName,
-  glPresentFrameDualFillNV,
-  glPresentFrameKeyedNV,
-  glPrimitiveBoundingBox,
-  glPrimitiveBoundingBoxARB,
-  glPrimitiveBoundingBoxEXT,
-  glPrimitiveBoundingBoxOES,
-  glPrimitiveRestartIndex,
-  glPrimitiveRestartIndexNV,
-  glPrimitiveRestartNV,
-  glPrioritizeTextures,
-  glPrioritizeTexturesEXT,
-  glPrioritizeTexturesxOES,
-  glProgramBinary
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glPatchParameterfv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>.
-glPatchParameterfv
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @values@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glPatchParameterfv v1 v2 = liftIO $ dyn94 ptr_glPatchParameterfv v1 v2
-
-{-# NOINLINE ptr_glPatchParameterfv #-}
-ptr_glPatchParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPatchParameterfv = unsafePerformIO $ getCommand "glPatchParameterfv"
-
--- glPatchParameteri -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>.
-glPatchParameteri
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glPatchParameteri v1 v2 = liftIO $ dyn55 ptr_glPatchParameteri v1 v2
-
-{-# NOINLINE ptr_glPatchParameteri #-}
-ptr_glPatchParameteri :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPatchParameteri = unsafePerformIO $ getCommand "glPatchParameteri"
-
--- glPatchParameteriEXT --------------------------------------------------------
-
--- | This command is an alias for 'glPatchParameteri'.
-glPatchParameteriEXT
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glPatchParameteriEXT v1 v2 = liftIO $ dyn55 ptr_glPatchParameteriEXT v1 v2
-
-{-# NOINLINE ptr_glPatchParameteriEXT #-}
-ptr_glPatchParameteriEXT :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPatchParameteriEXT = unsafePerformIO $ getCommand "glPatchParameteriEXT"
-
--- glPatchParameteriOES --------------------------------------------------------
-
--- | This command is an alias for 'glPatchParameteri'.
-glPatchParameteriOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glPatchParameteriOES v1 v2 = liftIO $ dyn55 ptr_glPatchParameteriOES v1 v2
-
-{-# NOINLINE ptr_glPatchParameteriOES #-}
-ptr_glPatchParameteriOES :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPatchParameteriOES = unsafePerformIO $ getCommand "glPatchParameteriOES"
-
--- glPathColorGenNV ------------------------------------------------------------
-
-glPathColorGenNV
-  :: MonadIO m
-  => GLenum -- ^ @color@ of type @PathColor@.
-  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
-  -> GLenum -- ^ @colorFormat@ of type @PathColorFormat@.
-  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,colorFormat)@ elements of type @GLfloat@.
-  -> m ()
-glPathColorGenNV v1 v2 v3 v4 = liftIO $ dyn321 ptr_glPathColorGenNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPathColorGenNV #-}
-ptr_glPathColorGenNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glPathColorGenNV = unsafePerformIO $ getCommand "glPathColorGenNV"
-
--- glPathCommandsNV ------------------------------------------------------------
-
-glPathCommandsNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @numCommands@.
-  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
-  -> GLsizei -- ^ @numCoords@.
-  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
-  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
-  -> m ()
-glPathCommandsNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn600 ptr_glPathCommandsNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glPathCommandsNV #-}
-ptr_glPathCommandsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
-ptr_glPathCommandsNV = unsafePerformIO $ getCommand "glPathCommandsNV"
-
--- glPathCoordsNV --------------------------------------------------------------
-
-glPathCoordsNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @numCoords@.
-  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
-  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
-  -> m ()
-glPathCoordsNV v1 v2 v3 v4 = liftIO $ dyn601 ptr_glPathCoordsNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPathCoordsNV #-}
-ptr_glPathCoordsNV :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
-ptr_glPathCoordsNV = unsafePerformIO $ getCommand "glPathCoordsNV"
-
--- glPathCoverDepthFuncNV ------------------------------------------------------
-
-glPathCoverDepthFuncNV
-  :: MonadIO m
-  => GLenum -- ^ @func@ of type [DepthFunction](Graphics-GL-Groups.html#DepthFunction).
-  -> m ()
-glPathCoverDepthFuncNV v1 = liftIO $ dyn4 ptr_glPathCoverDepthFuncNV v1
-
-{-# NOINLINE ptr_glPathCoverDepthFuncNV #-}
-ptr_glPathCoverDepthFuncNV :: FunPtr (GLenum -> IO ())
-ptr_glPathCoverDepthFuncNV = unsafePerformIO $ getCommand "glPathCoverDepthFuncNV"
-
--- glPathDashArrayNV -----------------------------------------------------------
-
-glPathDashArrayNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @dashCount@.
-  -> Ptr GLfloat -- ^ @dashArray@ pointing to @dashCount@ elements of type @GLfloat@.
-  -> m ()
-glPathDashArrayNV v1 v2 v3 = liftIO $ dyn218 ptr_glPathDashArrayNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathDashArrayNV #-}
-ptr_glPathDashArrayNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glPathDashArrayNV = unsafePerformIO $ getCommand "glPathDashArrayNV"
-
--- glPathFogGenNV --------------------------------------------------------------
-
-glPathFogGenNV
-  :: MonadIO m
-  => GLenum -- ^ @genMode@ of type @PathGenMode@.
-  -> m ()
-glPathFogGenNV v1 = liftIO $ dyn4 ptr_glPathFogGenNV v1
-
-{-# NOINLINE ptr_glPathFogGenNV #-}
-ptr_glPathFogGenNV :: FunPtr (GLenum -> IO ())
-ptr_glPathFogGenNV = unsafePerformIO $ getCommand "glPathFogGenNV"
-
--- glPathGlyphIndexArrayNV -----------------------------------------------------
-
-glPathGlyphIndexArrayNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@.
-  -> GLenum -- ^ @fontTarget@.
-  -> Ptr a -- ^ @fontName@.
-  -> GLbitfield -- ^ @fontStyle@.
-  -> GLuint -- ^ @firstGlyphIndex@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@.
-  -> GLfloat -- ^ @emScale@.
-  -> m GLenum
-glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn602 ptr_glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPathGlyphIndexArrayNV #-}
-ptr_glPathGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
-ptr_glPathGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathGlyphIndexArrayNV"
-
--- glPathGlyphIndexRangeNV -----------------------------------------------------
-
-glPathGlyphIndexRangeNV
-  :: MonadIO m
-  => GLenum -- ^ @fontTarget@.
-  -> Ptr a -- ^ @fontName@.
-  -> GLbitfield -- ^ @fontStyle@.
-  -> GLuint -- ^ @pathParameterTemplate@.
-  -> GLfloat -- ^ @emScale@.
-  -> Ptr GLuint -- ^ @baseAndCount@.
-  -> m GLenum
-glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn603 ptr_glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glPathGlyphIndexRangeNV #-}
-ptr_glPathGlyphIndexRangeNV :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
-ptr_glPathGlyphIndexRangeNV = unsafePerformIO $ getCommand "glPathGlyphIndexRangeNV"
-
--- glPathGlyphRangeNV ----------------------------------------------------------
-
-glPathGlyphRangeNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@ of type @Path@.
-  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
-  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
-  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
-  -> GLuint -- ^ @firstGlyph@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
-  -> GLfloat -- ^ @emScale@.
-  -> m ()
-glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn604 ptr_glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glPathGlyphRangeNV #-}
-ptr_glPathGlyphRangeNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
-ptr_glPathGlyphRangeNV = unsafePerformIO $ getCommand "glPathGlyphRangeNV"
-
--- glPathGlyphsNV --------------------------------------------------------------
-
-glPathGlyphsNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@ of type @Path@.
-  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
-  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
-  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLenum -- ^ @type@ of type @PathElementType@.
-  -> Ptr b -- ^ @charcodes@ pointing to @COMPSIZE(numGlyphs,type,charcodes)@ elements of type @b@.
-  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
-  -> GLfloat -- ^ @emScale@.
-  -> m ()
-glPathGlyphsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn605 ptr_glPathGlyphsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glPathGlyphsNV #-}
-ptr_glPathGlyphsNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
-ptr_glPathGlyphsNV = unsafePerformIO $ getCommand "glPathGlyphsNV"
-
--- glPathMemoryGlyphIndexArrayNV -----------------------------------------------
-
-glPathMemoryGlyphIndexArrayNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@.
-  -> GLenum -- ^ @fontTarget@.
-  -> GLsizeiptr -- ^ @fontSize@.
-  -> Ptr a -- ^ @fontData@.
-  -> GLsizei -- ^ @faceIndex@.
-  -> GLuint -- ^ @firstGlyphIndex@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@.
-  -> GLfloat -- ^ @emScale@.
-  -> m GLenum
-glPathMemoryGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn606 ptr_glPathMemoryGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glPathMemoryGlyphIndexArrayNV #-}
-ptr_glPathMemoryGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
-ptr_glPathMemoryGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathMemoryGlyphIndexArrayNV"
-
--- glPathParameterfNV ----------------------------------------------------------
-
-glPathParameterfNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @pname@ of type @PathParameter@.
-  -> GLfloat -- ^ @value@.
-  -> m ()
-glPathParameterfNV v1 v2 v3 = liftIO $ dyn489 ptr_glPathParameterfNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathParameterfNV #-}
-ptr_glPathParameterfNV :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-ptr_glPathParameterfNV = unsafePerformIO $ getCommand "glPathParameterfNV"
-
--- glPathParameterfvNV ---------------------------------------------------------
-
-glPathParameterfvNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @pname@ of type @PathParameter@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glPathParameterfvNV v1 v2 v3 = liftIO $ dyn351 ptr_glPathParameterfvNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathParameterfvNV #-}
-ptr_glPathParameterfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glPathParameterfvNV = unsafePerformIO $ getCommand "glPathParameterfvNV"
-
--- glPathParameteriNV ----------------------------------------------------------
-
-glPathParameteriNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @pname@ of type @PathParameter@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glPathParameteriNV v1 v2 v3 = liftIO $ dyn490 ptr_glPathParameteriNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathParameteriNV #-}
-ptr_glPathParameteriNV :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glPathParameteriNV = unsafePerformIO $ getCommand "glPathParameteriNV"
-
--- glPathParameterivNV ---------------------------------------------------------
-
-glPathParameterivNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @pname@ of type @PathParameter@.
-  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glPathParameterivNV v1 v2 v3 = liftIO $ dyn335 ptr_glPathParameterivNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathParameterivNV #-}
-ptr_glPathParameterivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glPathParameterivNV = unsafePerformIO $ getCommand "glPathParameterivNV"
-
--- glPathStencilDepthOffsetNV --------------------------------------------------
-
-glPathStencilDepthOffsetNV
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> GLfloat -- ^ @units@.
-  -> m ()
-glPathStencilDepthOffsetNV v1 v2 = liftIO $ dyn222 ptr_glPathStencilDepthOffsetNV v1 v2
-
-{-# NOINLINE ptr_glPathStencilDepthOffsetNV #-}
-ptr_glPathStencilDepthOffsetNV :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glPathStencilDepthOffsetNV = unsafePerformIO $ getCommand "glPathStencilDepthOffsetNV"
-
--- glPathStencilFuncNV ---------------------------------------------------------
-
-glPathStencilFuncNV
-  :: MonadIO m
-  => GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
-  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glPathStencilFuncNV v1 v2 v3 = liftIO $ dyn607 ptr_glPathStencilFuncNV v1 v2 v3
-
-{-# NOINLINE ptr_glPathStencilFuncNV #-}
-ptr_glPathStencilFuncNV :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
-ptr_glPathStencilFuncNV = unsafePerformIO $ getCommand "glPathStencilFuncNV"
-
--- glPathStringNV --------------------------------------------------------------
-
-glPathStringNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @format@ of type @PathStringFormat@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr a -- ^ @pathString@ pointing to @length@ elements of type @a@.
-  -> m ()
-glPathStringNV v1 v2 v3 v4 = liftIO $ dyn608 ptr_glPathStringNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPathStringNV #-}
-ptr_glPathStringNV :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glPathStringNV = unsafePerformIO $ getCommand "glPathStringNV"
-
--- glPathSubCommandsNV ---------------------------------------------------------
-
-glPathSubCommandsNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @commandStart@.
-  -> GLsizei -- ^ @commandsToDelete@.
-  -> GLsizei -- ^ @numCommands@.
-  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
-  -> GLsizei -- ^ @numCoords@.
-  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
-  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
-  -> m ()
-glPathSubCommandsNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn609 ptr_glPathSubCommandsNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPathSubCommandsNV #-}
-ptr_glPathSubCommandsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
-ptr_glPathSubCommandsNV = unsafePerformIO $ getCommand "glPathSubCommandsNV"
-
--- glPathSubCoordsNV -----------------------------------------------------------
-
-glPathSubCoordsNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @coordStart@.
-  -> GLsizei -- ^ @numCoords@.
-  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
-  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
-  -> m ()
-glPathSubCoordsNV v1 v2 v3 v4 v5 = liftIO $ dyn610 ptr_glPathSubCoordsNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glPathSubCoordsNV #-}
-ptr_glPathSubCoordsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
-ptr_glPathSubCoordsNV = unsafePerformIO $ getCommand "glPathSubCoordsNV"
-
--- glPathTexGenNV --------------------------------------------------------------
-
-glPathTexGenNV
-  :: MonadIO m
-  => GLenum -- ^ @texCoordSet@ of type @PathColor@.
-  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
-  -> GLint -- ^ @components@.
-  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,components)@ elements of type @GLfloat@.
-  -> m ()
-glPathTexGenNV v1 v2 v3 v4 = liftIO $ dyn611 ptr_glPathTexGenNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPathTexGenNV #-}
-ptr_glPathTexGenNV :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-ptr_glPathTexGenNV = unsafePerformIO $ getCommand "glPathTexGenNV"
-
--- glPauseTransformFeedback ----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPauseTransformFeedback.xhtml OpenGL 4.x>.
-glPauseTransformFeedback
-  :: MonadIO m
-  => m ()
-glPauseTransformFeedback = liftIO $ dyn10 ptr_glPauseTransformFeedback
-
-{-# NOINLINE ptr_glPauseTransformFeedback #-}
-ptr_glPauseTransformFeedback :: FunPtr (IO ())
-ptr_glPauseTransformFeedback = unsafePerformIO $ getCommand "glPauseTransformFeedback"
-
--- glPauseTransformFeedbackNV --------------------------------------------------
-
--- | This command is an alias for 'glPauseTransformFeedback'.
-glPauseTransformFeedbackNV
-  :: MonadIO m
-  => m ()
-glPauseTransformFeedbackNV = liftIO $ dyn10 ptr_glPauseTransformFeedbackNV
-
-{-# NOINLINE ptr_glPauseTransformFeedbackNV #-}
-ptr_glPauseTransformFeedbackNV :: FunPtr (IO ())
-ptr_glPauseTransformFeedbackNV = unsafePerformIO $ getCommand "glPauseTransformFeedbackNV"
-
--- glPixelDataRangeNV ----------------------------------------------------------
-
-glPixelDataRangeNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @PixelDataRangeTargetNV@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
-  -> m ()
-glPixelDataRangeNV v1 v2 v3 = liftIO $ dyn46 ptr_glPixelDataRangeNV v1 v2 v3
-
-{-# NOINLINE ptr_glPixelDataRangeNV #-}
-ptr_glPixelDataRangeNV :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glPixelDataRangeNV = unsafePerformIO $ getCommand "glPixelDataRangeNV"
-
--- glPixelMapfv ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
-glPixelMapfv
-  :: MonadIO m
-  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
-  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
-  -> Ptr GLfloat -- ^ @values@ pointing to @mapsize@ elements of type @GLfloat@.
-  -> m ()
-glPixelMapfv v1 v2 v3 = liftIO $ dyn225 ptr_glPixelMapfv v1 v2 v3
-
-{-# NOINLINE ptr_glPixelMapfv #-}
-ptr_glPixelMapfv :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glPixelMapfv = unsafePerformIO $ getCommand "glPixelMapfv"
-
--- glPixelMapuiv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
-glPixelMapuiv
-  :: MonadIO m
-  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
-  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
-  -> Ptr GLuint -- ^ @values@ pointing to @mapsize@ elements of type @GLuint@.
-  -> m ()
-glPixelMapuiv v1 v2 v3 = liftIO $ dyn197 ptr_glPixelMapuiv v1 v2 v3
-
-{-# NOINLINE ptr_glPixelMapuiv #-}
-ptr_glPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glPixelMapuiv = unsafePerformIO $ getCommand "glPixelMapuiv"
-
--- glPixelMapusv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
-glPixelMapusv
-  :: MonadIO m
-  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
-  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
-  -> Ptr GLushort -- ^ @values@ pointing to @mapsize@ elements of type @GLushort@.
-  -> m ()
-glPixelMapusv v1 v2 v3 = liftIO $ dyn454 ptr_glPixelMapusv v1 v2 v3
-
-{-# NOINLINE ptr_glPixelMapusv #-}
-ptr_glPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
-ptr_glPixelMapusv = unsafePerformIO $ getCommand "glPixelMapusv"
-
--- glPixelMapx -----------------------------------------------------------------
-
-glPixelMapx
-  :: MonadIO m
-  => GLenum -- ^ @map@.
-  -> GLint -- ^ @size@.
-  -> Ptr GLfixed -- ^ @values@ pointing to @size@ elements of type @GLfixed@.
-  -> m ()
-glPixelMapx v1 v2 v3 = liftIO $ dyn392 ptr_glPixelMapx v1 v2 v3
-
-{-# NOINLINE ptr_glPixelMapx #-}
-ptr_glPixelMapx :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
-ptr_glPixelMapx = unsafePerformIO $ getCommand "glPixelMapx"
-
--- glPixelStoref ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>.
-glPixelStoref
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelStoreParameter](Graphics-GL-Groups.html#PixelStoreParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPixelStoref v1 v2 = liftIO $ dyn0 ptr_glPixelStoref v1 v2
-
-{-# NOINLINE ptr_glPixelStoref #-}
-ptr_glPixelStoref :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPixelStoref = unsafePerformIO $ getCommand "glPixelStoref"
-
--- glPixelStorei ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>.
-glPixelStorei
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelStoreParameter](Graphics-GL-Groups.html#PixelStoreParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glPixelStorei v1 v2 = liftIO $ dyn55 ptr_glPixelStorei v1 v2
-
-{-# NOINLINE ptr_glPixelStorei #-}
-ptr_glPixelStorei :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPixelStorei = unsafePerformIO $ getCommand "glPixelStorei"
-
--- glPixelStorex ---------------------------------------------------------------
-
-glPixelStorex
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glPixelStorex v1 v2 = liftIO $ dyn1 ptr_glPixelStorex v1 v2
-
-{-# NOINLINE ptr_glPixelStorex #-}
-ptr_glPixelStorex :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glPixelStorex = unsafePerformIO $ getCommand "glPixelStorex"
-
--- glPixelTexGenParameterfSGIS -------------------------------------------------
-
-glPixelTexGenParameterfSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPixelTexGenParameterfSGIS v1 v2 = liftIO $ dyn0 ptr_glPixelTexGenParameterfSGIS v1 v2
-
-{-# NOINLINE ptr_glPixelTexGenParameterfSGIS #-}
-ptr_glPixelTexGenParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPixelTexGenParameterfSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfSGIS"
-
--- glPixelTexGenParameterfvSGIS ------------------------------------------------
-
-glPixelTexGenParameterfvSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glPixelTexGenParameterfvSGIS v1 v2 = liftIO $ dyn94 ptr_glPixelTexGenParameterfvSGIS v1 v2
-
-{-# NOINLINE ptr_glPixelTexGenParameterfvSGIS #-}
-ptr_glPixelTexGenParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPixelTexGenParameterfvSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfvSGIS"
-
--- glPixelTexGenParameteriSGIS -------------------------------------------------
-
-glPixelTexGenParameteriSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glPixelTexGenParameteriSGIS v1 v2 = liftIO $ dyn55 ptr_glPixelTexGenParameteriSGIS v1 v2
-
-{-# NOINLINE ptr_glPixelTexGenParameteriSGIS #-}
-ptr_glPixelTexGenParameteriSGIS :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPixelTexGenParameteriSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameteriSGIS"
-
--- glPixelTexGenParameterivSGIS ------------------------------------------------
-
-glPixelTexGenParameterivSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glPixelTexGenParameterivSGIS v1 v2 = liftIO $ dyn136 ptr_glPixelTexGenParameterivSGIS v1 v2
-
-{-# NOINLINE ptr_glPixelTexGenParameterivSGIS #-}
-ptr_glPixelTexGenParameterivSGIS :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glPixelTexGenParameterivSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterivSGIS"
-
--- glPixelTexGenSGIX -----------------------------------------------------------
-
-glPixelTexGenSGIX
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type @PixelTexGenModeSGIX@.
-  -> m ()
-glPixelTexGenSGIX v1 = liftIO $ dyn4 ptr_glPixelTexGenSGIX v1
-
-{-# NOINLINE ptr_glPixelTexGenSGIX #-}
-ptr_glPixelTexGenSGIX :: FunPtr (GLenum -> IO ())
-ptr_glPixelTexGenSGIX = unsafePerformIO $ getCommand "glPixelTexGenSGIX"
-
--- glPixelTransferf ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>.
-glPixelTransferf
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTransferParameter](Graphics-GL-Groups.html#PixelTransferParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPixelTransferf v1 v2 = liftIO $ dyn0 ptr_glPixelTransferf v1 v2
-
-{-# NOINLINE ptr_glPixelTransferf #-}
-ptr_glPixelTransferf :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPixelTransferf = unsafePerformIO $ getCommand "glPixelTransferf"
-
--- glPixelTransferi ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>.
-glPixelTransferi
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type [PixelTransferParameter](Graphics-GL-Groups.html#PixelTransferParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glPixelTransferi v1 v2 = liftIO $ dyn55 ptr_glPixelTransferi v1 v2
-
-{-# NOINLINE ptr_glPixelTransferi #-}
-ptr_glPixelTransferi :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPixelTransferi = unsafePerformIO $ getCommand "glPixelTransferi"
-
--- glPixelTransferxOES ---------------------------------------------------------
-
-glPixelTransferxOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glPixelTransferxOES v1 v2 = liftIO $ dyn1 ptr_glPixelTransferxOES v1 v2
-
-{-# NOINLINE ptr_glPixelTransferxOES #-}
-ptr_glPixelTransferxOES :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glPixelTransferxOES = unsafePerformIO $ getCommand "glPixelTransferxOES"
-
--- glPixelTransformParameterfEXT -----------------------------------------------
-
-glPixelTransformParameterfEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
-  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glPixelTransformParameterfEXT v1 v2 v3 = liftIO $ dyn161 ptr_glPixelTransformParameterfEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPixelTransformParameterfEXT #-}
-ptr_glPixelTransformParameterfEXT :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glPixelTransformParameterfEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfEXT"
-
--- glPixelTransformParameterfvEXT ----------------------------------------------
-
-glPixelTransformParameterfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
-  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glPixelTransformParameterfvEXT v1 v2 v3 = liftIO $ dyn132 ptr_glPixelTransformParameterfvEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPixelTransformParameterfvEXT #-}
-ptr_glPixelTransformParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glPixelTransformParameterfvEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfvEXT"
-
--- glPixelTransformParameteriEXT -----------------------------------------------
-
-glPixelTransformParameteriEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
-  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glPixelTransformParameteriEXT v1 v2 v3 = liftIO $ dyn62 ptr_glPixelTransformParameteriEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPixelTransformParameteriEXT #-}
-ptr_glPixelTransformParameteriEXT :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glPixelTransformParameteriEXT = unsafePerformIO $ getCommand "glPixelTransformParameteriEXT"
-
--- glPixelTransformParameterivEXT ----------------------------------------------
-
-glPixelTransformParameterivEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
-  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
-  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glPixelTransformParameterivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glPixelTransformParameterivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPixelTransformParameterivEXT #-}
-ptr_glPixelTransformParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glPixelTransformParameterivEXT = unsafePerformIO $ getCommand "glPixelTransformParameterivEXT"
-
--- glPixelZoom -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelZoom.xml OpenGL 2.x>.
-glPixelZoom
-  :: MonadIO m
-  => GLfloat -- ^ @xfactor@.
-  -> GLfloat -- ^ @yfactor@.
-  -> m ()
-glPixelZoom v1 v2 = liftIO $ dyn222 ptr_glPixelZoom v1 v2
-
-{-# NOINLINE ptr_glPixelZoom #-}
-ptr_glPixelZoom :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glPixelZoom = unsafePerformIO $ getCommand "glPixelZoom"
-
--- glPixelZoomxOES -------------------------------------------------------------
-
-glPixelZoomxOES
-  :: MonadIO m
-  => GLfixed -- ^ @xfactor@.
-  -> GLfixed -- ^ @yfactor@.
-  -> m ()
-glPixelZoomxOES v1 v2 = liftIO $ dyn224 ptr_glPixelZoomxOES v1 v2
-
-{-# NOINLINE ptr_glPixelZoomxOES #-}
-ptr_glPixelZoomxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glPixelZoomxOES = unsafePerformIO $ getCommand "glPixelZoomxOES"
-
--- glPointAlongPathNV ----------------------------------------------------------
-
-glPointAlongPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @startSegment@.
-  -> GLsizei -- ^ @numSegments@.
-  -> GLfloat -- ^ @distance@.
-  -> Ptr GLfloat -- ^ @x@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @y@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @tangentX@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @tangentY@ pointing to @1@ element of type @GLfloat@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn612 ptr_glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPointAlongPathNV #-}
-ptr_glPointAlongPathNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
-ptr_glPointAlongPathNV = unsafePerformIO $ getCommand "glPointAlongPathNV"
-
--- glPointParameterf -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
-glPointParameterf
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPointParameterf v1 v2 = liftIO $ dyn0 ptr_glPointParameterf v1 v2
-
-{-# NOINLINE ptr_glPointParameterf #-}
-ptr_glPointParameterf :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPointParameterf = unsafePerformIO $ getCommand "glPointParameterf"
-
--- glPointParameterfARB --------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterf'.
-glPointParameterfARB
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfARB v1 v2 = liftIO $ dyn0 ptr_glPointParameterfARB v1 v2
-
-{-# NOINLINE ptr_glPointParameterfARB #-}
-ptr_glPointParameterfARB :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPointParameterfARB = unsafePerformIO $ getCommand "glPointParameterfARB"
-
--- glPointParameterfEXT --------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterf'.
-glPointParameterfEXT
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfEXT v1 v2 = liftIO $ dyn0 ptr_glPointParameterfEXT v1 v2
-
-{-# NOINLINE ptr_glPointParameterfEXT #-}
-ptr_glPointParameterfEXT :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPointParameterfEXT = unsafePerformIO $ getCommand "glPointParameterfEXT"
-
--- glPointParameterfSGIS -------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterf'.
-glPointParameterfSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfSGIS v1 v2 = liftIO $ dyn0 ptr_glPointParameterfSGIS v1 v2
-
-{-# NOINLINE ptr_glPointParameterfSGIS #-}
-ptr_glPointParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glPointParameterfSGIS = unsafePerformIO $ getCommand "glPointParameterfSGIS"
-
--- glPointParameterfv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
-glPointParameterfv
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfv v1 v2 = liftIO $ dyn94 ptr_glPointParameterfv v1 v2
-
-{-# NOINLINE ptr_glPointParameterfv #-}
-ptr_glPointParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPointParameterfv = unsafePerformIO $ getCommand "glPointParameterfv"
-
--- glPointParameterfvARB -------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterfv'.
-glPointParameterfvARB
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfvARB v1 v2 = liftIO $ dyn94 ptr_glPointParameterfvARB v1 v2
-
-{-# NOINLINE ptr_glPointParameterfvARB #-}
-ptr_glPointParameterfvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPointParameterfvARB = unsafePerformIO $ getCommand "glPointParameterfvARB"
-
--- glPointParameterfvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterfv'.
-glPointParameterfvEXT
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfvEXT v1 v2 = liftIO $ dyn94 ptr_glPointParameterfvEXT v1 v2
-
-{-# NOINLINE ptr_glPointParameterfvEXT #-}
-ptr_glPointParameterfvEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPointParameterfvEXT = unsafePerformIO $ getCommand "glPointParameterfvEXT"
-
--- glPointParameterfvSGIS ------------------------------------------------------
-
--- | This command is an alias for 'glPointParameterfv'.
-glPointParameterfvSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glPointParameterfvSGIS v1 v2 = liftIO $ dyn94 ptr_glPointParameterfvSGIS v1 v2
-
-{-# NOINLINE ptr_glPointParameterfvSGIS #-}
-ptr_glPointParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glPointParameterfvSGIS = unsafePerformIO $ getCommand "glPointParameterfvSGIS"
-
--- glPointParameteri -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
-glPointParameteri
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glPointParameteri v1 v2 = liftIO $ dyn55 ptr_glPointParameteri v1 v2
-
-{-# NOINLINE ptr_glPointParameteri #-}
-ptr_glPointParameteri :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPointParameteri = unsafePerformIO $ getCommand "glPointParameteri"
-
--- glPointParameteriNV ---------------------------------------------------------
-
--- | This command is an alias for 'glPointParameteri'.
-glPointParameteriNV
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glPointParameteriNV v1 v2 = liftIO $ dyn55 ptr_glPointParameteriNV v1 v2
-
-{-# NOINLINE ptr_glPointParameteriNV #-}
-ptr_glPointParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glPointParameteriNV = unsafePerformIO $ getCommand "glPointParameteriNV"
-
--- glPointParameteriv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
-glPointParameteriv
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glPointParameteriv v1 v2 = liftIO $ dyn136 ptr_glPointParameteriv v1 v2
-
-{-# NOINLINE ptr_glPointParameteriv #-}
-ptr_glPointParameteriv :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glPointParameteriv = unsafePerformIO $ getCommand "glPointParameteriv"
-
--- glPointParameterivNV --------------------------------------------------------
-
--- | This command is an alias for 'glPointParameteriv'.
-glPointParameterivNV
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glPointParameterivNV v1 v2 = liftIO $ dyn136 ptr_glPointParameterivNV v1 v2
-
-{-# NOINLINE ptr_glPointParameterivNV #-}
-ptr_glPointParameterivNV :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glPointParameterivNV = unsafePerformIO $ getCommand "glPointParameterivNV"
-
--- glPointParameterx -----------------------------------------------------------
-
-glPointParameterx
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glPointParameterx v1 v2 = liftIO $ dyn1 ptr_glPointParameterx v1 v2
-
-{-# NOINLINE ptr_glPointParameterx #-}
-ptr_glPointParameterx :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glPointParameterx = unsafePerformIO $ getCommand "glPointParameterx"
-
--- glPointParameterxOES --------------------------------------------------------
-
-glPointParameterxOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glPointParameterxOES v1 v2 = liftIO $ dyn1 ptr_glPointParameterxOES v1 v2
-
-{-# NOINLINE ptr_glPointParameterxOES #-}
-ptr_glPointParameterxOES :: FunPtr (GLenum -> GLfixed -> IO ())
-ptr_glPointParameterxOES = unsafePerformIO $ getCommand "glPointParameterxOES"
-
--- glPointParameterxv ----------------------------------------------------------
-
-glPointParameterxv
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glPointParameterxv v1 v2 = liftIO $ dyn95 ptr_glPointParameterxv v1 v2
-
-{-# NOINLINE ptr_glPointParameterxv #-}
-ptr_glPointParameterxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glPointParameterxv = unsafePerformIO $ getCommand "glPointParameterxv"
-
--- glPointParameterxvOES -------------------------------------------------------
-
-glPointParameterxvOES
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glPointParameterxvOES v1 v2 = liftIO $ dyn95 ptr_glPointParameterxvOES v1 v2
-
-{-# NOINLINE ptr_glPointParameterxvOES #-}
-ptr_glPointParameterxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
-ptr_glPointParameterxvOES = unsafePerformIO $ getCommand "glPointParameterxvOES"
-
--- glPointSize -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointSize.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointSize.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointSize.xhtml OpenGL 4.x>.
-glPointSize
-  :: MonadIO m
-  => GLfloat -- ^ @size@ of type @CheckedFloat32@.
-  -> m ()
-glPointSize v1 = liftIO $ dyn79 ptr_glPointSize v1
-
-{-# NOINLINE ptr_glPointSize #-}
-ptr_glPointSize :: FunPtr (GLfloat -> IO ())
-ptr_glPointSize = unsafePerformIO $ getCommand "glPointSize"
-
--- glPointSizePointerOES -------------------------------------------------------
-
-glPointSizePointerOES
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glPointSizePointerOES v1 v2 v3 = liftIO $ dyn46 ptr_glPointSizePointerOES v1 v2 v3
-
-{-# NOINLINE ptr_glPointSizePointerOES #-}
-ptr_glPointSizePointerOES :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glPointSizePointerOES = unsafePerformIO $ getCommand "glPointSizePointerOES"
-
--- glPointSizex ----------------------------------------------------------------
-
-glPointSizex
-  :: MonadIO m
-  => GLfixed -- ^ @size@.
-  -> m ()
-glPointSizex v1 = liftIO $ dyn81 ptr_glPointSizex v1
-
-{-# NOINLINE ptr_glPointSizex #-}
-ptr_glPointSizex :: FunPtr (GLfixed -> IO ())
-ptr_glPointSizex = unsafePerformIO $ getCommand "glPointSizex"
-
--- glPointSizexOES -------------------------------------------------------------
-
-glPointSizexOES
-  :: MonadIO m
-  => GLfixed -- ^ @size@.
-  -> m ()
-glPointSizexOES v1 = liftIO $ dyn81 ptr_glPointSizexOES v1
-
-{-# NOINLINE ptr_glPointSizexOES #-}
-ptr_glPointSizexOES :: FunPtr (GLfixed -> IO ())
-ptr_glPointSizexOES = unsafePerformIO $ getCommand "glPointSizexOES"
-
--- glPollAsyncSGIX -------------------------------------------------------------
-
-glPollAsyncSGIX
-  :: MonadIO m
-  => Ptr GLuint -- ^ @markerp@ pointing to @1@ element of type @GLuint@.
-  -> m GLint
-glPollAsyncSGIX v1 = liftIO $ dyn277 ptr_glPollAsyncSGIX v1
-
-{-# NOINLINE ptr_glPollAsyncSGIX #-}
-ptr_glPollAsyncSGIX :: FunPtr (Ptr GLuint -> IO GLint)
-ptr_glPollAsyncSGIX = unsafePerformIO $ getCommand "glPollAsyncSGIX"
-
--- glPollInstrumentsSGIX -------------------------------------------------------
-
-glPollInstrumentsSGIX
-  :: MonadIO m
-  => Ptr GLint -- ^ @marker_p@ pointing to @1@ element of type @GLint@.
-  -> m GLint
-glPollInstrumentsSGIX v1 = liftIO $ dyn613 ptr_glPollInstrumentsSGIX v1
-
-{-# NOINLINE ptr_glPollInstrumentsSGIX #-}
-ptr_glPollInstrumentsSGIX :: FunPtr (Ptr GLint -> IO GLint)
-ptr_glPollInstrumentsSGIX = unsafePerformIO $ getCommand "glPollInstrumentsSGIX"
-
--- glPolygonMode ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonMode.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonMode.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonMode.xhtml OpenGL 4.x>.
-glPolygonMode
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @mode@ of type [PolygonMode](Graphics-GL-Groups.html#PolygonMode).
-  -> m ()
-glPolygonMode v1 v2 = liftIO $ dyn51 ptr_glPolygonMode v1 v2
-
-{-# NOINLINE ptr_glPolygonMode #-}
-ptr_glPolygonMode :: FunPtr (GLenum -> GLenum -> IO ())
-ptr_glPolygonMode = unsafePerformIO $ getCommand "glPolygonMode"
-
--- glPolygonModeNV -------------------------------------------------------------
-
--- | This command is an alias for 'glPolygonMode'.
-glPolygonModeNV
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @mode@ of type [PolygonMode](Graphics-GL-Groups.html#PolygonMode).
-  -> m ()
-glPolygonModeNV v1 v2 = liftIO $ dyn51 ptr_glPolygonModeNV v1 v2
-
-{-# NOINLINE ptr_glPolygonModeNV #-}
-ptr_glPolygonModeNV :: FunPtr (GLenum -> GLenum -> IO ())
-ptr_glPolygonModeNV = unsafePerformIO $ getCommand "glPolygonModeNV"
-
--- glPolygonOffset -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonOffset.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonOffset.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonOffset.xhtml OpenGL 4.x>.
-glPolygonOffset
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> GLfloat -- ^ @units@.
-  -> m ()
-glPolygonOffset v1 v2 = liftIO $ dyn222 ptr_glPolygonOffset v1 v2
-
-{-# NOINLINE ptr_glPolygonOffset #-}
-ptr_glPolygonOffset :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glPolygonOffset = unsafePerformIO $ getCommand "glPolygonOffset"
-
--- glPolygonOffsetClampEXT -----------------------------------------------------
-
-glPolygonOffsetClampEXT
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> GLfloat -- ^ @units@.
-  -> GLfloat -- ^ @clamp@.
-  -> m ()
-glPolygonOffsetClampEXT v1 v2 v3 = liftIO $ dyn40 ptr_glPolygonOffsetClampEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPolygonOffsetClampEXT #-}
-ptr_glPolygonOffsetClampEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glPolygonOffsetClampEXT = unsafePerformIO $ getCommand "glPolygonOffsetClampEXT"
-
--- glPolygonOffsetEXT ----------------------------------------------------------
-
-glPolygonOffsetEXT
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> GLfloat -- ^ @bias@.
-  -> m ()
-glPolygonOffsetEXT v1 v2 = liftIO $ dyn222 ptr_glPolygonOffsetEXT v1 v2
-
-{-# NOINLINE ptr_glPolygonOffsetEXT #-}
-ptr_glPolygonOffsetEXT :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glPolygonOffsetEXT = unsafePerformIO $ getCommand "glPolygonOffsetEXT"
-
--- glPolygonOffsetx ------------------------------------------------------------
-
-glPolygonOffsetx
-  :: MonadIO m
-  => GLfixed -- ^ @factor@.
-  -> GLfixed -- ^ @units@.
-  -> m ()
-glPolygonOffsetx v1 v2 = liftIO $ dyn224 ptr_glPolygonOffsetx v1 v2
-
-{-# NOINLINE ptr_glPolygonOffsetx #-}
-ptr_glPolygonOffsetx :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glPolygonOffsetx = unsafePerformIO $ getCommand "glPolygonOffsetx"
-
--- glPolygonOffsetxOES ---------------------------------------------------------
-
-glPolygonOffsetxOES
-  :: MonadIO m
-  => GLfixed -- ^ @factor@.
-  -> GLfixed -- ^ @units@.
-  -> m ()
-glPolygonOffsetxOES v1 v2 = liftIO $ dyn224 ptr_glPolygonOffsetxOES v1 v2
-
-{-# NOINLINE ptr_glPolygonOffsetxOES #-}
-ptr_glPolygonOffsetxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glPolygonOffsetxOES = unsafePerformIO $ getCommand "glPolygonOffsetxOES"
-
--- glPolygonStipple ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonStipple.xml OpenGL 2.x>.
-glPolygonStipple
-  :: MonadIO m
-  => Ptr GLubyte -- ^ @mask@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
-  -> m ()
-glPolygonStipple v1 = liftIO $ dyn101 ptr_glPolygonStipple v1
-
-{-# NOINLINE ptr_glPolygonStipple #-}
-ptr_glPolygonStipple :: FunPtr (Ptr GLubyte -> IO ())
-ptr_glPolygonStipple = unsafePerformIO $ getCommand "glPolygonStipple"
-
--- glPopAttrib -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>.
-glPopAttrib
-  :: MonadIO m
-  => m ()
-glPopAttrib = liftIO $ dyn10 ptr_glPopAttrib
-
-{-# NOINLINE ptr_glPopAttrib #-}
-ptr_glPopAttrib :: FunPtr (IO ())
-ptr_glPopAttrib = unsafePerformIO $ getCommand "glPopAttrib"
-
--- glPopClientAttrib -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>.
-glPopClientAttrib
-  :: MonadIO m
-  => m ()
-glPopClientAttrib = liftIO $ dyn10 ptr_glPopClientAttrib
-
-{-# NOINLINE ptr_glPopClientAttrib #-}
-ptr_glPopClientAttrib :: FunPtr (IO ())
-ptr_glPopClientAttrib = unsafePerformIO $ getCommand "glPopClientAttrib"
-
--- glPopDebugGroup -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPopDebugGroup.xhtml OpenGL 4.x>.
-glPopDebugGroup
-  :: MonadIO m
-  => m ()
-glPopDebugGroup = liftIO $ dyn10 ptr_glPopDebugGroup
-
-{-# NOINLINE ptr_glPopDebugGroup #-}
-ptr_glPopDebugGroup :: FunPtr (IO ())
-ptr_glPopDebugGroup = unsafePerformIO $ getCommand "glPopDebugGroup"
-
--- glPopDebugGroupKHR ----------------------------------------------------------
-
--- | This command is an alias for 'glPopDebugGroup'.
-glPopDebugGroupKHR
-  :: MonadIO m
-  => m ()
-glPopDebugGroupKHR = liftIO $ dyn10 ptr_glPopDebugGroupKHR
-
-{-# NOINLINE ptr_glPopDebugGroupKHR #-}
-ptr_glPopDebugGroupKHR :: FunPtr (IO ())
-ptr_glPopDebugGroupKHR = unsafePerformIO $ getCommand "glPopDebugGroupKHR"
-
--- glPopGroupMarkerEXT ---------------------------------------------------------
-
-glPopGroupMarkerEXT
-  :: MonadIO m
-  => m ()
-glPopGroupMarkerEXT = liftIO $ dyn10 ptr_glPopGroupMarkerEXT
-
-{-# NOINLINE ptr_glPopGroupMarkerEXT #-}
-ptr_glPopGroupMarkerEXT :: FunPtr (IO ())
-ptr_glPopGroupMarkerEXT = unsafePerformIO $ getCommand "glPopGroupMarkerEXT"
-
--- glPopMatrix -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>.
-glPopMatrix
-  :: MonadIO m
-  => m ()
-glPopMatrix = liftIO $ dyn10 ptr_glPopMatrix
-
-{-# NOINLINE ptr_glPopMatrix #-}
-ptr_glPopMatrix :: FunPtr (IO ())
-ptr_glPopMatrix = unsafePerformIO $ getCommand "glPopMatrix"
-
--- glPopName -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>.
-glPopName
-  :: MonadIO m
-  => m ()
-glPopName = liftIO $ dyn10 ptr_glPopName
-
-{-# NOINLINE ptr_glPopName #-}
-ptr_glPopName :: FunPtr (IO ())
-ptr_glPopName = unsafePerformIO $ getCommand "glPopName"
-
--- glPresentFrameDualFillNV ----------------------------------------------------
-
-glPresentFrameDualFillNV
-  :: MonadIO m
-  => GLuint -- ^ @video_slot@.
-  -> GLuint64EXT -- ^ @minPresentTime@.
-  -> GLuint -- ^ @beginPresentTimeId@.
-  -> GLuint -- ^ @presentDurationId@.
-  -> GLenum -- ^ @type@.
-  -> GLenum -- ^ @target0@.
-  -> GLuint -- ^ @fill0@.
-  -> GLenum -- ^ @target1@.
-  -> GLuint -- ^ @fill1@.
-  -> GLenum -- ^ @target2@.
-  -> GLuint -- ^ @fill2@.
-  -> GLenum -- ^ @target3@.
-  -> GLuint -- ^ @fill3@.
-  -> m ()
-glPresentFrameDualFillNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn614 ptr_glPresentFrameDualFillNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
-
-{-# NOINLINE ptr_glPresentFrameDualFillNV #-}
-ptr_glPresentFrameDualFillNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
-ptr_glPresentFrameDualFillNV = unsafePerformIO $ getCommand "glPresentFrameDualFillNV"
-
--- glPresentFrameKeyedNV -------------------------------------------------------
-
-glPresentFrameKeyedNV
-  :: MonadIO m
-  => GLuint -- ^ @video_slot@.
-  -> GLuint64EXT -- ^ @minPresentTime@.
-  -> GLuint -- ^ @beginPresentTimeId@.
-  -> GLuint -- ^ @presentDurationId@.
-  -> GLenum -- ^ @type@.
-  -> GLenum -- ^ @target0@.
-  -> GLuint -- ^ @fill0@.
-  -> GLuint -- ^ @key0@.
-  -> GLenum -- ^ @target1@.
-  -> GLuint -- ^ @fill1@.
-  -> GLuint -- ^ @key1@.
-  -> m ()
-glPresentFrameKeyedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn615 ptr_glPresentFrameKeyedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glPresentFrameKeyedNV #-}
-ptr_glPresentFrameKeyedNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
-ptr_glPresentFrameKeyedNV = unsafePerformIO $ getCommand "glPresentFrameKeyedNV"
-
--- glPrimitiveBoundingBox ------------------------------------------------------
-
-glPrimitiveBoundingBox
-  :: MonadIO m
-  => GLfloat -- ^ @minX@.
-  -> GLfloat -- ^ @minY@.
-  -> GLfloat -- ^ @minZ@.
-  -> GLfloat -- ^ @minW@.
-  -> GLfloat -- ^ @maxX@.
-  -> GLfloat -- ^ @maxY@.
-  -> GLfloat -- ^ @maxZ@.
-  -> GLfloat -- ^ @maxW@.
-  -> m ()
-glPrimitiveBoundingBox v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glPrimitiveBoundingBox v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPrimitiveBoundingBox #-}
-ptr_glPrimitiveBoundingBox :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glPrimitiveBoundingBox = unsafePerformIO $ getCommand "glPrimitiveBoundingBox"
-
--- glPrimitiveBoundingBoxARB ---------------------------------------------------
-
--- | This command is an alias for 'glPrimitiveBoundingBox'.
-glPrimitiveBoundingBoxARB
-  :: MonadIO m
-  => GLfloat -- ^ @minX@.
-  -> GLfloat -- ^ @minY@.
-  -> GLfloat -- ^ @minZ@.
-  -> GLfloat -- ^ @minW@.
-  -> GLfloat -- ^ @maxX@.
-  -> GLfloat -- ^ @maxY@.
-  -> GLfloat -- ^ @maxZ@.
-  -> GLfloat -- ^ @maxW@.
-  -> m ()
-glPrimitiveBoundingBoxARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glPrimitiveBoundingBoxARB v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPrimitiveBoundingBoxARB #-}
-ptr_glPrimitiveBoundingBoxARB :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glPrimitiveBoundingBoxARB = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxARB"
-
--- glPrimitiveBoundingBoxEXT ---------------------------------------------------
-
--- | This command is an alias for 'glPrimitiveBoundingBox'.
-glPrimitiveBoundingBoxEXT
-  :: MonadIO m
-  => GLfloat -- ^ @minX@.
-  -> GLfloat -- ^ @minY@.
-  -> GLfloat -- ^ @minZ@.
-  -> GLfloat -- ^ @minW@.
-  -> GLfloat -- ^ @maxX@.
-  -> GLfloat -- ^ @maxY@.
-  -> GLfloat -- ^ @maxZ@.
-  -> GLfloat -- ^ @maxW@.
-  -> m ()
-glPrimitiveBoundingBoxEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glPrimitiveBoundingBoxEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPrimitiveBoundingBoxEXT #-}
-ptr_glPrimitiveBoundingBoxEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glPrimitiveBoundingBoxEXT = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxEXT"
-
--- glPrimitiveBoundingBoxOES ---------------------------------------------------
-
--- | This command is an alias for 'glPrimitiveBoundingBox'.
-glPrimitiveBoundingBoxOES
-  :: MonadIO m
-  => GLfloat -- ^ @minX@.
-  -> GLfloat -- ^ @minY@.
-  -> GLfloat -- ^ @minZ@.
-  -> GLfloat -- ^ @minW@.
-  -> GLfloat -- ^ @maxX@.
-  -> GLfloat -- ^ @maxY@.
-  -> GLfloat -- ^ @maxZ@.
-  -> GLfloat -- ^ @maxW@.
-  -> m ()
-glPrimitiveBoundingBoxOES v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glPrimitiveBoundingBoxOES v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPrimitiveBoundingBoxOES #-}
-ptr_glPrimitiveBoundingBoxOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glPrimitiveBoundingBoxOES = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxOES"
-
--- glPrimitiveRestartIndex -----------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glPrimitiveRestartIndex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPrimitiveRestartIndex.xhtml OpenGL 4.x>.
-glPrimitiveRestartIndex
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> m ()
-glPrimitiveRestartIndex v1 = liftIO $ dyn2 ptr_glPrimitiveRestartIndex v1
-
-{-# NOINLINE ptr_glPrimitiveRestartIndex #-}
-ptr_glPrimitiveRestartIndex :: FunPtr (GLuint -> IO ())
-ptr_glPrimitiveRestartIndex = unsafePerformIO $ getCommand "glPrimitiveRestartIndex"
-
--- glPrimitiveRestartIndexNV ---------------------------------------------------
-
-glPrimitiveRestartIndexNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> m ()
-glPrimitiveRestartIndexNV v1 = liftIO $ dyn2 ptr_glPrimitiveRestartIndexNV v1
-
-{-# NOINLINE ptr_glPrimitiveRestartIndexNV #-}
-ptr_glPrimitiveRestartIndexNV :: FunPtr (GLuint -> IO ())
-ptr_glPrimitiveRestartIndexNV = unsafePerformIO $ getCommand "glPrimitiveRestartIndexNV"
-
--- glPrimitiveRestartNV --------------------------------------------------------
-
-glPrimitiveRestartNV
-  :: MonadIO m
-  => m ()
-glPrimitiveRestartNV = liftIO $ dyn10 ptr_glPrimitiveRestartNV
-
-{-# NOINLINE ptr_glPrimitiveRestartNV #-}
-ptr_glPrimitiveRestartNV :: FunPtr (IO ())
-ptr_glPrimitiveRestartNV = unsafePerformIO $ getCommand "glPrimitiveRestartNV"
-
--- glPrioritizeTextures --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPrioritizeTextures.xml OpenGL 2.x>.
-glPrioritizeTextures
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
-  -> Ptr GLfloat -- ^ @priorities@ pointing to @n@ elements of type @GLfloat@.
-  -> m ()
-glPrioritizeTextures v1 v2 v3 = liftIO $ dyn617 ptr_glPrioritizeTextures v1 v2 v3
-
-{-# NOINLINE ptr_glPrioritizeTextures #-}
-ptr_glPrioritizeTextures :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
-ptr_glPrioritizeTextures = unsafePerformIO $ getCommand "glPrioritizeTextures"
-
--- glPrioritizeTexturesEXT -----------------------------------------------------
-
--- | This command is an alias for 'glPrioritizeTextures'.
-glPrioritizeTexturesEXT
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
-  -> Ptr GLclampf -- ^ @priorities@ pointing to @n@ elements of type @ClampedFloat32@.
-  -> m ()
-glPrioritizeTexturesEXT v1 v2 v3 = liftIO $ dyn618 ptr_glPrioritizeTexturesEXT v1 v2 v3
-
-{-# NOINLINE ptr_glPrioritizeTexturesEXT #-}
-ptr_glPrioritizeTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
-ptr_glPrioritizeTexturesEXT = unsafePerformIO $ getCommand "glPrioritizeTexturesEXT"
-
--- glPrioritizeTexturesxOES ----------------------------------------------------
-
-glPrioritizeTexturesxOES
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @GLuint@.
-  -> Ptr GLfixed -- ^ @priorities@ pointing to @n@ elements of type @ClampedFixed@.
-  -> m ()
-glPrioritizeTexturesxOES v1 v2 v3 = liftIO $ dyn619 ptr_glPrioritizeTexturesxOES v1 v2 v3
-
-{-# NOINLINE ptr_glPrioritizeTexturesxOES #-}
-ptr_glPrioritizeTexturesxOES :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
-ptr_glPrioritizeTexturesxOES = unsafePerformIO $ getCommand "glPrioritizeTexturesxOES"
-
--- glProgramBinary -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramBinary.xhtml OpenGL 4.x>.
-glProgramBinary
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @binaryFormat@.
-  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
-  -> GLsizei -- ^ @length@.
-  -> m ()
-glProgramBinary v1 v2 v3 v4 = liftIO $ dyn620 ptr_glProgramBinary v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramBinary #-}
-ptr_glProgramBinary :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
-ptr_glProgramBinary = unsafePerformIO $ getCommand "glProgramBinary"
+  glNormal3hNV,
+  glNormal3hvNV,
+  glNormal3i,
+  glNormal3iv,
+  glNormal3s,
+  glNormal3sv,
+  glNormal3x,
+  glNormal3xOES,
+  glNormal3xvOES,
+  glNormalFormatNV,
+  glNormalP3ui,
+  glNormalP3uiv,
+  glNormalPointer,
+  glNormalPointerEXT,
+  glNormalPointerListIBM,
+  glNormalPointervINTEL,
+  glNormalStream3bATI,
+  glNormalStream3bvATI,
+  glNormalStream3dATI,
+  glNormalStream3dvATI,
+  glNormalStream3fATI,
+  glNormalStream3fvATI,
+  glNormalStream3iATI,
+  glNormalStream3ivATI,
+  glNormalStream3sATI,
+  glNormalStream3svATI,
+  glObjectLabel,
+  glObjectLabelKHR,
+  glObjectPtrLabel,
+  glObjectPtrLabelKHR,
+  glObjectPurgeableAPPLE,
+  glObjectUnpurgeableAPPLE,
+  glOrtho,
+  glOrthof,
+  glOrthofOES,
+  glOrthox,
+  glOrthoxOES,
+  glPNTrianglesfATI,
+  glPNTrianglesiATI,
+  glPassTexCoordATI,
+  glPassThrough,
+  glPassThroughxOES,
+  glPatchParameterfv,
+  glPatchParameteri,
+  glPatchParameteriEXT,
+  glPatchParameteriOES,
+  glPathColorGenNV,
+  glPathCommandsNV,
+  glPathCoordsNV,
+  glPathCoverDepthFuncNV,
+  glPathDashArrayNV,
+  glPathFogGenNV,
+  glPathGlyphIndexArrayNV,
+  glPathGlyphIndexRangeNV,
+  glPathGlyphRangeNV,
+  glPathGlyphsNV,
+  glPathMemoryGlyphIndexArrayNV,
+  glPathParameterfNV,
+  glPathParameterfvNV,
+  glPathParameteriNV,
+  glPathParameterivNV,
+  glPathStencilDepthOffsetNV,
+  glPathStencilFuncNV,
+  glPathStringNV,
+  glPathSubCommandsNV,
+  glPathSubCoordsNV,
+  glPathTexGenNV,
+  glPauseTransformFeedback,
+  glPauseTransformFeedbackNV,
+  glPixelDataRangeNV,
+  glPixelMapfv,
+  glPixelMapuiv,
+  glPixelMapusv,
+  glPixelMapx,
+  glPixelStoref,
+  glPixelStorei,
+  glPixelStorex,
+  glPixelTexGenParameterfSGIS,
+  glPixelTexGenParameterfvSGIS,
+  glPixelTexGenParameteriSGIS,
+  glPixelTexGenParameterivSGIS,
+  glPixelTexGenSGIX,
+  glPixelTransferf,
+  glPixelTransferi,
+  glPixelTransferxOES,
+  glPixelTransformParameterfEXT,
+  glPixelTransformParameterfvEXT,
+  glPixelTransformParameteriEXT,
+  glPixelTransformParameterivEXT,
+  glPixelZoom,
+  glPixelZoomxOES,
+  glPointAlongPathNV,
+  glPointParameterf,
+  glPointParameterfARB,
+  glPointParameterfEXT,
+  glPointParameterfSGIS,
+  glPointParameterfv,
+  glPointParameterfvARB,
+  glPointParameterfvEXT,
+  glPointParameterfvSGIS
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glNormal3hNV ----------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glNormal3hvNV'.
+glNormal3hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @nx@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @ny@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @nz@ of type @Half16NV@.
+  -> m ()
+glNormal3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glNormal3hNV v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3hNV #-}
+ptr_glNormal3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glNormal3hNV = unsafePerformIO $ getCommand "glNormal3hNV"
+
+-- glNormal3hvNV ---------------------------------------------------------------
+
+glNormal3hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glNormal3hvNV v1 = liftIO $ dyn102 ptr_glNormal3hvNV v1
+
+{-# NOINLINE ptr_glNormal3hvNV #-}
+ptr_glNormal3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glNormal3hvNV = unsafePerformIO $ getCommand "glNormal3hvNV"
+
+-- glNormal3i ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3iv'.
+glNormal3i
+  :: MonadIO m
+  => GLint -- ^ @nx@.
+  -> GLint -- ^ @ny@.
+  -> GLint -- ^ @nz@.
+  -> m ()
+glNormal3i v1 v2 v3 = liftIO $ dyn43 ptr_glNormal3i v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3i #-}
+ptr_glNormal3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glNormal3i = unsafePerformIO $ getCommand "glNormal3i"
+
+-- glNormal3iv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
+glNormal3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glNormal3iv v1 = liftIO $ dyn44 ptr_glNormal3iv v1
+
+{-# NOINLINE ptr_glNormal3iv #-}
+ptr_glNormal3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glNormal3iv = unsafePerformIO $ getCommand "glNormal3iv"
+
+-- glNormal3s ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3sv'.
+glNormal3s
+  :: MonadIO m
+  => GLshort -- ^ @nx@.
+  -> GLshort -- ^ @ny@.
+  -> GLshort -- ^ @nz@.
+  -> m ()
+glNormal3s v1 v2 v3 = liftIO $ dyn45 ptr_glNormal3s v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3s #-}
+ptr_glNormal3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glNormal3s = unsafePerformIO $ getCommand "glNormal3s"
+
+-- glNormal3sv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>.
+glNormal3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glNormal3sv v1 = liftIO $ dyn46 ptr_glNormal3sv v1
+
+{-# NOINLINE ptr_glNormal3sv #-}
+ptr_glNormal3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glNormal3sv = unsafePerformIO $ getCommand "glNormal3sv"
+
+-- glNormal3x ------------------------------------------------------------------
+
+glNormal3x
+  :: MonadIO m
+  => GLfixed -- ^ @nx@.
+  -> GLfixed -- ^ @ny@.
+  -> GLfixed -- ^ @nz@.
+  -> m ()
+glNormal3x v1 v2 v3 = liftIO $ dyn109 ptr_glNormal3x v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3x #-}
+ptr_glNormal3x :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glNormal3x = unsafePerformIO $ getCommand "glNormal3x"
+
+-- glNormal3xOES ---------------------------------------------------------------
+
+glNormal3xOES
+  :: MonadIO m
+  => GLfixed -- ^ @nx@.
+  -> GLfixed -- ^ @ny@.
+  -> GLfixed -- ^ @nz@.
+  -> m ()
+glNormal3xOES v1 v2 v3 = liftIO $ dyn109 ptr_glNormal3xOES v1 v2 v3
+
+{-# NOINLINE ptr_glNormal3xOES #-}
+ptr_glNormal3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glNormal3xOES = unsafePerformIO $ getCommand "glNormal3xOES"
+
+-- glNormal3xvOES --------------------------------------------------------------
+
+glNormal3xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
+  -> m ()
+glNormal3xvOES v1 = liftIO $ dyn110 ptr_glNormal3xvOES v1
+
+{-# NOINLINE ptr_glNormal3xvOES #-}
+ptr_glNormal3xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glNormal3xvOES = unsafePerformIO $ getCommand "glNormal3xvOES"
+
+-- glNormalFormatNV ------------------------------------------------------------
+
+glNormalFormatNV
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glNormalFormatNV v1 v2 = liftIO $ dyn242 ptr_glNormalFormatNV v1 v2
+
+{-# NOINLINE ptr_glNormalFormatNV #-}
+ptr_glNormalFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
+ptr_glNormalFormatNV = unsafePerformIO $ getCommand "glNormalFormatNV"
+
+-- glNormalP3ui ----------------------------------------------------------------
+
+glNormalP3ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glNormalP3ui v1 v2 = liftIO $ dyn17 ptr_glNormalP3ui v1 v2
+
+{-# NOINLINE ptr_glNormalP3ui #-}
+ptr_glNormalP3ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glNormalP3ui = unsafePerformIO $ getCommand "glNormalP3ui"
+
+-- glNormalP3uiv ---------------------------------------------------------------
+
+glNormalP3uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glNormalP3uiv v1 v2 = liftIO $ dyn128 ptr_glNormalP3uiv v1 v2
+
+{-# NOINLINE ptr_glNormalP3uiv #-}
+ptr_glNormalP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glNormalP3uiv = unsafePerformIO $ getCommand "glNormalP3uiv"
+
+-- glNormalPointer -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormalPointer.xml OpenGL 2.x>.
+glNormalPointer
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glNormalPointer v1 v2 v3 = liftIO $ dyn47 ptr_glNormalPointer v1 v2 v3
+
+{-# NOINLINE ptr_glNormalPointer #-}
+ptr_glNormalPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glNormalPointer = unsafePerformIO $ getCommand "glNormalPointer"
+
+-- glNormalPointerEXT ----------------------------------------------------------
+
+glNormalPointerEXT
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride,count)@ elements of type @a@.
+  -> m ()
+glNormalPointerEXT v1 v2 v3 v4 = liftIO $ dyn484 ptr_glNormalPointerEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalPointerEXT #-}
+ptr_glNormalPointerEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
+ptr_glNormalPointerEXT = unsafePerformIO $ getCommand "glNormalPointerEXT"
+
+-- glNormalPointerListIBM ------------------------------------------------------
+
+glNormalPointerListIBM
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
+  -> GLint -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glNormalPointerListIBM v1 v2 v3 v4 = liftIO $ dyn284 ptr_glNormalPointerListIBM v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalPointerListIBM #-}
+ptr_glNormalPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+ptr_glNormalPointerListIBM = unsafePerformIO $ getCommand "glNormalPointerListIBM"
+
+-- glNormalPointervINTEL -------------------------------------------------------
+
+glNormalPointervINTEL
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
+  -> m ()
+glNormalPointervINTEL v1 v2 = liftIO $ dyn272 ptr_glNormalPointervINTEL v1 v2
+
+{-# NOINLINE ptr_glNormalPointervINTEL #-}
+ptr_glNormalPointervINTEL :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
+ptr_glNormalPointervINTEL = unsafePerformIO $ getCommand "glNormalPointervINTEL"
+
+-- glNormalStream3bATI ---------------------------------------------------------
+
+glNormalStream3bATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLbyte -- ^ @nx@.
+  -> GLbyte -- ^ @ny@.
+  -> GLbyte -- ^ @nz@.
+  -> m ()
+glNormalStream3bATI v1 v2 v3 v4 = liftIO $ dyn569 ptr_glNormalStream3bATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalStream3bATI #-}
+ptr_glNormalStream3bATI :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glNormalStream3bATI = unsafePerformIO $ getCommand "glNormalStream3bATI"
+
+-- glNormalStream3bvATI --------------------------------------------------------
+
+glNormalStream3bvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glNormalStream3bvATI v1 v2 = liftIO $ dyn557 ptr_glNormalStream3bvATI v1 v2
+
+{-# NOINLINE ptr_glNormalStream3bvATI #-}
+ptr_glNormalStream3bvATI :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
+ptr_glNormalStream3bvATI = unsafePerformIO $ getCommand "glNormalStream3bvATI"
+
+-- glNormalStream3dATI ---------------------------------------------------------
+
+glNormalStream3dATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLdouble -- ^ @nx@.
+  -> GLdouble -- ^ @ny@.
+  -> GLdouble -- ^ @nz@.
+  -> m ()
+glNormalStream3dATI v1 v2 v3 v4 = liftIO $ dyn539 ptr_glNormalStream3dATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalStream3dATI #-}
+ptr_glNormalStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glNormalStream3dATI = unsafePerformIO $ getCommand "glNormalStream3dATI"
+
+-- glNormalStream3dvATI --------------------------------------------------------
+
+glNormalStream3dvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glNormalStream3dvATI v1 v2 = liftIO $ dyn96 ptr_glNormalStream3dvATI v1 v2
+
+{-# NOINLINE ptr_glNormalStream3dvATI #-}
+ptr_glNormalStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glNormalStream3dvATI = unsafePerformIO $ getCommand "glNormalStream3dvATI"
+
+-- glNormalStream3fATI ---------------------------------------------------------
+
+glNormalStream3fATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> m ()
+glNormalStream3fATI v1 v2 v3 v4 = liftIO $ dyn540 ptr_glNormalStream3fATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalStream3fATI #-}
+ptr_glNormalStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glNormalStream3fATI = unsafePerformIO $ getCommand "glNormalStream3fATI"
+
+-- glNormalStream3fvATI --------------------------------------------------------
+
+glNormalStream3fvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glNormalStream3fvATI v1 v2 = liftIO $ dyn97 ptr_glNormalStream3fvATI v1 v2
+
+{-# NOINLINE ptr_glNormalStream3fvATI #-}
+ptr_glNormalStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glNormalStream3fvATI = unsafePerformIO $ getCommand "glNormalStream3fvATI"
+
+-- glNormalStream3iATI ---------------------------------------------------------
+
+glNormalStream3iATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLint -- ^ @nx@.
+  -> GLint -- ^ @ny@.
+  -> GLint -- ^ @nz@.
+  -> m ()
+glNormalStream3iATI v1 v2 v3 v4 = liftIO $ dyn571 ptr_glNormalStream3iATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalStream3iATI #-}
+ptr_glNormalStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
+ptr_glNormalStream3iATI = unsafePerformIO $ getCommand "glNormalStream3iATI"
+
+-- glNormalStream3ivATI --------------------------------------------------------
+
+glNormalStream3ivATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glNormalStream3ivATI v1 v2 = liftIO $ dyn139 ptr_glNormalStream3ivATI v1 v2
+
+{-# NOINLINE ptr_glNormalStream3ivATI #-}
+ptr_glNormalStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glNormalStream3ivATI = unsafePerformIO $ getCommand "glNormalStream3ivATI"
+
+-- glNormalStream3sATI ---------------------------------------------------------
+
+glNormalStream3sATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLshort -- ^ @nx@.
+  -> GLshort -- ^ @ny@.
+  -> GLshort -- ^ @nz@.
+  -> m ()
+glNormalStream3sATI v1 v2 v3 v4 = liftIO $ dyn572 ptr_glNormalStream3sATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNormalStream3sATI #-}
+ptr_glNormalStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glNormalStream3sATI = unsafePerformIO $ getCommand "glNormalStream3sATI"
+
+-- glNormalStream3svATI --------------------------------------------------------
+
+glNormalStream3svATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glNormalStream3svATI v1 v2 = liftIO $ dyn562 ptr_glNormalStream3svATI v1 v2
+
+{-# NOINLINE ptr_glNormalStream3svATI #-}
+ptr_glNormalStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glNormalStream3svATI = unsafePerformIO $ getCommand "glNormalStream3svATI"
+
+-- glObjectLabel ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectLabel.xhtml OpenGL 4.x>.
+glObjectLabel
+  :: MonadIO m
+  => GLenum -- ^ @identifier@.
+  -> GLuint -- ^ @name@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
+  -> m ()
+glObjectLabel v1 v2 v3 v4 = liftIO $ dyn502 ptr_glObjectLabel v1 v2 v3 v4
+
+{-# NOINLINE ptr_glObjectLabel #-}
+ptr_glObjectLabel :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glObjectLabel = unsafePerformIO $ getCommand "glObjectLabel"
+
+-- glObjectLabelKHR ------------------------------------------------------------
+
+-- | This command is an alias for 'glObjectLabel'.
+glObjectLabelKHR
+  :: MonadIO m
+  => GLenum -- ^ @identifier@.
+  -> GLuint -- ^ @name@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @label@.
+  -> m ()
+glObjectLabelKHR v1 v2 v3 v4 = liftIO $ dyn502 ptr_glObjectLabelKHR v1 v2 v3 v4
+
+{-# NOINLINE ptr_glObjectLabelKHR #-}
+ptr_glObjectLabelKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glObjectLabelKHR = unsafePerformIO $ getCommand "glObjectLabelKHR"
+
+-- glObjectPtrLabel ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectPtrLabel.xhtml OpenGL 4.x>.
+glObjectPtrLabel
+  :: MonadIO m
+  => Ptr a -- ^ @ptr@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
+  -> m ()
+glObjectPtrLabel v1 v2 v3 = liftIO $ dyn619 ptr_glObjectPtrLabel v1 v2 v3
+
+{-# NOINLINE ptr_glObjectPtrLabel #-}
+ptr_glObjectPtrLabel :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glObjectPtrLabel = unsafePerformIO $ getCommand "glObjectPtrLabel"
+
+-- glObjectPtrLabelKHR ---------------------------------------------------------
+
+-- | This command is an alias for 'glObjectPtrLabel'.
+glObjectPtrLabelKHR
+  :: MonadIO m
+  => Ptr a -- ^ @ptr@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @label@.
+  -> m ()
+glObjectPtrLabelKHR v1 v2 v3 = liftIO $ dyn619 ptr_glObjectPtrLabelKHR v1 v2 v3
+
+{-# NOINLINE ptr_glObjectPtrLabelKHR #-}
+ptr_glObjectPtrLabelKHR :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glObjectPtrLabelKHR = unsafePerformIO $ getCommand "glObjectPtrLabelKHR"
+
+-- glObjectPurgeableAPPLE ------------------------------------------------------
+
+glObjectPurgeableAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @objectType@.
+  -> GLuint -- ^ @name@.
+  -> GLenum -- ^ @option@.
+  -> m GLenum
+glObjectPurgeableAPPLE v1 v2 v3 = liftIO $ dyn620 ptr_glObjectPurgeableAPPLE v1 v2 v3
+
+{-# NOINLINE ptr_glObjectPurgeableAPPLE #-}
+ptr_glObjectPurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
+ptr_glObjectPurgeableAPPLE = unsafePerformIO $ getCommand "glObjectPurgeableAPPLE"
+
+-- glObjectUnpurgeableAPPLE ----------------------------------------------------
+
+glObjectUnpurgeableAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @objectType@.
+  -> GLuint -- ^ @name@.
+  -> GLenum -- ^ @option@.
+  -> m GLenum
+glObjectUnpurgeableAPPLE v1 v2 v3 = liftIO $ dyn620 ptr_glObjectUnpurgeableAPPLE v1 v2 v3
+
+{-# NOINLINE ptr_glObjectUnpurgeableAPPLE #-}
+ptr_glObjectUnpurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
+ptr_glObjectUnpurgeableAPPLE = unsafePerformIO $ getCommand "glObjectUnpurgeableAPPLE"
+
+-- glOrtho ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glOrtho.xml OpenGL 2.x>.
+glOrtho
+  :: MonadIO m
+  => GLdouble -- ^ @left@.
+  -> GLdouble -- ^ @right@.
+  -> GLdouble -- ^ @bottom@.
+  -> GLdouble -- ^ @top@.
+  -> GLdouble -- ^ @zNear@.
+  -> GLdouble -- ^ @zFar@.
+  -> m ()
+glOrtho v1 v2 v3 v4 v5 v6 = liftIO $ dyn302 ptr_glOrtho v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glOrtho #-}
+ptr_glOrtho :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glOrtho = unsafePerformIO $ getCommand "glOrtho"
+
+-- glOrthof --------------------------------------------------------------------
+
+glOrthof
+  :: MonadIO m
+  => GLfloat -- ^ @l@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glOrthof v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glOrthof v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glOrthof #-}
+ptr_glOrthof :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glOrthof = unsafePerformIO $ getCommand "glOrthof"
+
+-- glOrthofOES -----------------------------------------------------------------
+
+glOrthofOES
+  :: MonadIO m
+  => GLfloat -- ^ @l@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glOrthofOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn99 ptr_glOrthofOES v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glOrthofOES #-}
+ptr_glOrthofOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glOrthofOES = unsafePerformIO $ getCommand "glOrthofOES"
+
+-- glOrthox --------------------------------------------------------------------
+
+glOrthox
+  :: MonadIO m
+  => GLfixed -- ^ @l@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @b@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @n@.
+  -> GLfixed -- ^ @f@.
+  -> m ()
+glOrthox v1 v2 v3 v4 v5 v6 = liftIO $ dyn303 ptr_glOrthox v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glOrthox #-}
+ptr_glOrthox :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glOrthox = unsafePerformIO $ getCommand "glOrthox"
+
+-- glOrthoxOES -----------------------------------------------------------------
+
+glOrthoxOES
+  :: MonadIO m
+  => GLfixed -- ^ @l@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @b@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @n@.
+  -> GLfixed -- ^ @f@.
+  -> m ()
+glOrthoxOES v1 v2 v3 v4 v5 v6 = liftIO $ dyn303 ptr_glOrthoxOES v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glOrthoxOES #-}
+ptr_glOrthoxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glOrthoxOES = unsafePerformIO $ getCommand "glOrthoxOES"
+
+-- glPNTrianglesfATI -----------------------------------------------------------
+
+glPNTrianglesfATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glPNTrianglesfATI v1 v2 = liftIO $ dyn0 ptr_glPNTrianglesfATI v1 v2
+
+{-# NOINLINE ptr_glPNTrianglesfATI #-}
+ptr_glPNTrianglesfATI :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPNTrianglesfATI = unsafePerformIO $ getCommand "glPNTrianglesfATI"
+
+-- glPNTrianglesiATI -----------------------------------------------------------
+
+glPNTrianglesiATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glPNTrianglesiATI v1 v2 = liftIO $ dyn56 ptr_glPNTrianglesiATI v1 v2
+
+{-# NOINLINE ptr_glPNTrianglesiATI #-}
+ptr_glPNTrianglesiATI :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPNTrianglesiATI = unsafePerformIO $ getCommand "glPNTrianglesiATI"
+
+-- glPassTexCoordATI -----------------------------------------------------------
+
+glPassTexCoordATI
+  :: MonadIO m
+  => GLuint -- ^ @dst@.
+  -> GLuint -- ^ @coord@.
+  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
+  -> m ()
+glPassTexCoordATI v1 v2 v3 = liftIO $ dyn621 ptr_glPassTexCoordATI v1 v2 v3
+
+{-# NOINLINE ptr_glPassTexCoordATI #-}
+ptr_glPassTexCoordATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
+ptr_glPassTexCoordATI = unsafePerformIO $ getCommand "glPassTexCoordATI"
+
+-- glPassThrough ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPassThrough.xml OpenGL 2.x>.
+glPassThrough
+  :: MonadIO m
+  => GLfloat -- ^ @token@ of type @FeedbackElement@.
+  -> m ()
+glPassThrough v1 = liftIO $ dyn82 ptr_glPassThrough v1
+
+{-# NOINLINE ptr_glPassThrough #-}
+ptr_glPassThrough :: FunPtr (GLfloat -> IO ())
+ptr_glPassThrough = unsafePerformIO $ getCommand "glPassThrough"
+
+-- glPassThroughxOES -----------------------------------------------------------
+
+glPassThroughxOES
+  :: MonadIO m
+  => GLfixed -- ^ @token@.
+  -> m ()
+glPassThroughxOES v1 = liftIO $ dyn84 ptr_glPassThroughxOES v1
+
+{-# NOINLINE ptr_glPassThroughxOES #-}
+ptr_glPassThroughxOES :: FunPtr (GLfixed -> IO ())
+ptr_glPassThroughxOES = unsafePerformIO $ getCommand "glPassThroughxOES"
+
+-- glPatchParameterfv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>.
+glPatchParameterfv
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @values@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glPatchParameterfv v1 v2 = liftIO $ dyn97 ptr_glPatchParameterfv v1 v2
+
+{-# NOINLINE ptr_glPatchParameterfv #-}
+ptr_glPatchParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPatchParameterfv = unsafePerformIO $ getCommand "glPatchParameterfv"
+
+-- glPatchParameteri -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>.
+glPatchParameteri
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glPatchParameteri v1 v2 = liftIO $ dyn56 ptr_glPatchParameteri v1 v2
+
+{-# NOINLINE ptr_glPatchParameteri #-}
+ptr_glPatchParameteri :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPatchParameteri = unsafePerformIO $ getCommand "glPatchParameteri"
+
+-- glPatchParameteriEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glPatchParameteri'.
+glPatchParameteriEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glPatchParameteriEXT v1 v2 = liftIO $ dyn56 ptr_glPatchParameteriEXT v1 v2
+
+{-# NOINLINE ptr_glPatchParameteriEXT #-}
+ptr_glPatchParameteriEXT :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPatchParameteriEXT = unsafePerformIO $ getCommand "glPatchParameteriEXT"
+
+-- glPatchParameteriOES --------------------------------------------------------
+
+-- | This command is an alias for 'glPatchParameteri'.
+glPatchParameteriOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glPatchParameteriOES v1 v2 = liftIO $ dyn56 ptr_glPatchParameteriOES v1 v2
+
+{-# NOINLINE ptr_glPatchParameteriOES #-}
+ptr_glPatchParameteriOES :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPatchParameteriOES = unsafePerformIO $ getCommand "glPatchParameteriOES"
+
+-- glPathColorGenNV ------------------------------------------------------------
+
+glPathColorGenNV
+  :: MonadIO m
+  => GLenum -- ^ @color@ of type @PathColor@.
+  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
+  -> GLenum -- ^ @colorFormat@ of type @PathColorFormat@.
+  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,colorFormat)@ elements of type @GLfloat@.
+  -> m ()
+glPathColorGenNV v1 v2 v3 v4 = liftIO $ dyn327 ptr_glPathColorGenNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPathColorGenNV #-}
+ptr_glPathColorGenNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glPathColorGenNV = unsafePerformIO $ getCommand "glPathColorGenNV"
+
+-- glPathCommandsNV ------------------------------------------------------------
+
+glPathCommandsNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @numCommands@.
+  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
+  -> GLsizei -- ^ @numCoords@.
+  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
+  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
+  -> m ()
+glPathCommandsNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn622 ptr_glPathCommandsNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glPathCommandsNV #-}
+ptr_glPathCommandsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
+ptr_glPathCommandsNV = unsafePerformIO $ getCommand "glPathCommandsNV"
+
+-- glPathCoordsNV --------------------------------------------------------------
+
+glPathCoordsNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @numCoords@.
+  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
+  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
+  -> m ()
+glPathCoordsNV v1 v2 v3 v4 = liftIO $ dyn623 ptr_glPathCoordsNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPathCoordsNV #-}
+ptr_glPathCoordsNV :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
+ptr_glPathCoordsNV = unsafePerformIO $ getCommand "glPathCoordsNV"
+
+-- glPathCoverDepthFuncNV ------------------------------------------------------
+
+glPathCoverDepthFuncNV
+  :: MonadIO m
+  => GLenum -- ^ @func@ of type [DepthFunction](Graphics-GL-Groups.html#DepthFunction).
+  -> m ()
+glPathCoverDepthFuncNV v1 = liftIO $ dyn5 ptr_glPathCoverDepthFuncNV v1
+
+{-# NOINLINE ptr_glPathCoverDepthFuncNV #-}
+ptr_glPathCoverDepthFuncNV :: FunPtr (GLenum -> IO ())
+ptr_glPathCoverDepthFuncNV = unsafePerformIO $ getCommand "glPathCoverDepthFuncNV"
+
+-- glPathDashArrayNV -----------------------------------------------------------
+
+glPathDashArrayNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @dashCount@.
+  -> Ptr GLfloat -- ^ @dashArray@ pointing to @dashCount@ elements of type @GLfloat@.
+  -> m ()
+glPathDashArrayNV v1 v2 v3 = liftIO $ dyn221 ptr_glPathDashArrayNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathDashArrayNV #-}
+ptr_glPathDashArrayNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glPathDashArrayNV = unsafePerformIO $ getCommand "glPathDashArrayNV"
+
+-- glPathFogGenNV --------------------------------------------------------------
+
+glPathFogGenNV
+  :: MonadIO m
+  => GLenum -- ^ @genMode@ of type @PathGenMode@.
+  -> m ()
+glPathFogGenNV v1 = liftIO $ dyn5 ptr_glPathFogGenNV v1
+
+{-# NOINLINE ptr_glPathFogGenNV #-}
+ptr_glPathFogGenNV :: FunPtr (GLenum -> IO ())
+ptr_glPathFogGenNV = unsafePerformIO $ getCommand "glPathFogGenNV"
+
+-- glPathGlyphIndexArrayNV -----------------------------------------------------
+
+glPathGlyphIndexArrayNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@.
+  -> GLenum -- ^ @fontTarget@.
+  -> Ptr a -- ^ @fontName@.
+  -> GLbitfield -- ^ @fontStyle@.
+  -> GLuint -- ^ @firstGlyphIndex@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@.
+  -> GLfloat -- ^ @emScale@.
+  -> m GLenum
+glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn624 ptr_glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPathGlyphIndexArrayNV #-}
+ptr_glPathGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
+ptr_glPathGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathGlyphIndexArrayNV"
+
+-- glPathGlyphIndexRangeNV -----------------------------------------------------
+
+glPathGlyphIndexRangeNV
+  :: MonadIO m
+  => GLenum -- ^ @fontTarget@.
+  -> Ptr a -- ^ @fontName@.
+  -> GLbitfield -- ^ @fontStyle@.
+  -> GLuint -- ^ @pathParameterTemplate@.
+  -> GLfloat -- ^ @emScale@.
+  -> Ptr GLuint -- ^ @baseAndCount@.
+  -> m GLenum
+glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn625 ptr_glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glPathGlyphIndexRangeNV #-}
+ptr_glPathGlyphIndexRangeNV :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
+ptr_glPathGlyphIndexRangeNV = unsafePerformIO $ getCommand "glPathGlyphIndexRangeNV"
+
+-- glPathGlyphRangeNV ----------------------------------------------------------
+
+glPathGlyphRangeNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@ of type @Path@.
+  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
+  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
+  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
+  -> GLuint -- ^ @firstGlyph@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
+  -> GLfloat -- ^ @emScale@.
+  -> m ()
+glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn626 ptr_glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glPathGlyphRangeNV #-}
+ptr_glPathGlyphRangeNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
+ptr_glPathGlyphRangeNV = unsafePerformIO $ getCommand "glPathGlyphRangeNV"
+
+-- glPathGlyphsNV --------------------------------------------------------------
+
+glPathGlyphsNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@ of type @Path@.
+  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
+  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
+  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLenum -- ^ @type@ of type @PathElementType@.
+  -> Ptr b -- ^ @charcodes@ pointing to @COMPSIZE(numGlyphs,type,charcodes)@ elements of type @b@.
+  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
+  -> GLfloat -- ^ @emScale@.
+  -> m ()
+glPathGlyphsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn627 ptr_glPathGlyphsNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glPathGlyphsNV #-}
+ptr_glPathGlyphsNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
+ptr_glPathGlyphsNV = unsafePerformIO $ getCommand "glPathGlyphsNV"
+
+-- glPathMemoryGlyphIndexArrayNV -----------------------------------------------
+
+glPathMemoryGlyphIndexArrayNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@.
+  -> GLenum -- ^ @fontTarget@.
+  -> GLsizeiptr -- ^ @fontSize@.
+  -> Ptr a -- ^ @fontData@.
+  -> GLsizei -- ^ @faceIndex@.
+  -> GLuint -- ^ @firstGlyphIndex@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@.
+  -> GLfloat -- ^ @emScale@.
+  -> m GLenum
+glPathMemoryGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn628 ptr_glPathMemoryGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glPathMemoryGlyphIndexArrayNV #-}
+ptr_glPathMemoryGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
+ptr_glPathMemoryGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathMemoryGlyphIndexArrayNV"
+
+-- glPathParameterfNV ----------------------------------------------------------
+
+glPathParameterfNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @pname@ of type @PathParameter@.
+  -> GLfloat -- ^ @value@.
+  -> m ()
+glPathParameterfNV v1 v2 v3 = liftIO $ dyn505 ptr_glPathParameterfNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathParameterfNV #-}
+ptr_glPathParameterfNV :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+ptr_glPathParameterfNV = unsafePerformIO $ getCommand "glPathParameterfNV"
+
+-- glPathParameterfvNV ---------------------------------------------------------
+
+glPathParameterfvNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @pname@ of type @PathParameter@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glPathParameterfvNV v1 v2 v3 = liftIO $ dyn357 ptr_glPathParameterfvNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathParameterfvNV #-}
+ptr_glPathParameterfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glPathParameterfvNV = unsafePerformIO $ getCommand "glPathParameterfvNV"
+
+-- glPathParameteriNV ----------------------------------------------------------
+
+glPathParameteriNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @pname@ of type @PathParameter@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glPathParameteriNV v1 v2 v3 = liftIO $ dyn481 ptr_glPathParameteriNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathParameteriNV #-}
+ptr_glPathParameteriNV :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glPathParameteriNV = unsafePerformIO $ getCommand "glPathParameteriNV"
+
+-- glPathParameterivNV ---------------------------------------------------------
+
+glPathParameterivNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @pname@ of type @PathParameter@.
+  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glPathParameterivNV v1 v2 v3 = liftIO $ dyn341 ptr_glPathParameterivNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathParameterivNV #-}
+ptr_glPathParameterivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glPathParameterivNV = unsafePerformIO $ getCommand "glPathParameterivNV"
+
+-- glPathStencilDepthOffsetNV --------------------------------------------------
+
+glPathStencilDepthOffsetNV
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> GLfloat -- ^ @units@.
+  -> m ()
+glPathStencilDepthOffsetNV v1 v2 = liftIO $ dyn225 ptr_glPathStencilDepthOffsetNV v1 v2
+
+{-# NOINLINE ptr_glPathStencilDepthOffsetNV #-}
+ptr_glPathStencilDepthOffsetNV :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glPathStencilDepthOffsetNV = unsafePerformIO $ getCommand "glPathStencilDepthOffsetNV"
+
+-- glPathStencilFuncNV ---------------------------------------------------------
+
+glPathStencilFuncNV
+  :: MonadIO m
+  => GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
+  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glPathStencilFuncNV v1 v2 v3 = liftIO $ dyn629 ptr_glPathStencilFuncNV v1 v2 v3
+
+{-# NOINLINE ptr_glPathStencilFuncNV #-}
+ptr_glPathStencilFuncNV :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
+ptr_glPathStencilFuncNV = unsafePerformIO $ getCommand "glPathStencilFuncNV"
+
+-- glPathStringNV --------------------------------------------------------------
+
+glPathStringNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @format@ of type @PathStringFormat@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr a -- ^ @pathString@ pointing to @length@ elements of type @a@.
+  -> m ()
+glPathStringNV v1 v2 v3 v4 = liftIO $ dyn630 ptr_glPathStringNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPathStringNV #-}
+ptr_glPathStringNV :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glPathStringNV = unsafePerformIO $ getCommand "glPathStringNV"
+
+-- glPathSubCommandsNV ---------------------------------------------------------
+
+glPathSubCommandsNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @commandStart@.
+  -> GLsizei -- ^ @commandsToDelete@.
+  -> GLsizei -- ^ @numCommands@.
+  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
+  -> GLsizei -- ^ @numCoords@.
+  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
+  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
+  -> m ()
+glPathSubCommandsNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn631 ptr_glPathSubCommandsNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPathSubCommandsNV #-}
+ptr_glPathSubCommandsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
+ptr_glPathSubCommandsNV = unsafePerformIO $ getCommand "glPathSubCommandsNV"
+
+-- glPathSubCoordsNV -----------------------------------------------------------
+
+glPathSubCoordsNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @coordStart@.
+  -> GLsizei -- ^ @numCoords@.
+  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
+  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
+  -> m ()
+glPathSubCoordsNV v1 v2 v3 v4 v5 = liftIO $ dyn632 ptr_glPathSubCoordsNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glPathSubCoordsNV #-}
+ptr_glPathSubCoordsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
+ptr_glPathSubCoordsNV = unsafePerformIO $ getCommand "glPathSubCoordsNV"
+
+-- glPathTexGenNV --------------------------------------------------------------
+
+glPathTexGenNV
+  :: MonadIO m
+  => GLenum -- ^ @texCoordSet@ of type @PathColor@.
+  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
+  -> GLint -- ^ @components@.
+  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,components)@ elements of type @GLfloat@.
+  -> m ()
+glPathTexGenNV v1 v2 v3 v4 = liftIO $ dyn633 ptr_glPathTexGenNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPathTexGenNV #-}
+ptr_glPathTexGenNV :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+ptr_glPathTexGenNV = unsafePerformIO $ getCommand "glPathTexGenNV"
+
+-- glPauseTransformFeedback ----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPauseTransformFeedback.xhtml OpenGL 4.x>.
+glPauseTransformFeedback
+  :: MonadIO m
+  => m ()
+glPauseTransformFeedback = liftIO $ dyn11 ptr_glPauseTransformFeedback
+
+{-# NOINLINE ptr_glPauseTransformFeedback #-}
+ptr_glPauseTransformFeedback :: FunPtr (IO ())
+ptr_glPauseTransformFeedback = unsafePerformIO $ getCommand "glPauseTransformFeedback"
+
+-- glPauseTransformFeedbackNV --------------------------------------------------
+
+-- | This command is an alias for 'glPauseTransformFeedback'.
+glPauseTransformFeedbackNV
+  :: MonadIO m
+  => m ()
+glPauseTransformFeedbackNV = liftIO $ dyn11 ptr_glPauseTransformFeedbackNV
+
+{-# NOINLINE ptr_glPauseTransformFeedbackNV #-}
+ptr_glPauseTransformFeedbackNV :: FunPtr (IO ())
+ptr_glPauseTransformFeedbackNV = unsafePerformIO $ getCommand "glPauseTransformFeedbackNV"
+
+-- glPixelDataRangeNV ----------------------------------------------------------
+
+glPixelDataRangeNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @PixelDataRangeTargetNV@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
+  -> m ()
+glPixelDataRangeNV v1 v2 v3 = liftIO $ dyn47 ptr_glPixelDataRangeNV v1 v2 v3
+
+{-# NOINLINE ptr_glPixelDataRangeNV #-}
+ptr_glPixelDataRangeNV :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glPixelDataRangeNV = unsafePerformIO $ getCommand "glPixelDataRangeNV"
+
+-- glPixelMapfv ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
+glPixelMapfv
+  :: MonadIO m
+  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
+  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
+  -> Ptr GLfloat -- ^ @values@ pointing to @mapsize@ elements of type @GLfloat@.
+  -> m ()
+glPixelMapfv v1 v2 v3 = liftIO $ dyn228 ptr_glPixelMapfv v1 v2 v3
+
+{-# NOINLINE ptr_glPixelMapfv #-}
+ptr_glPixelMapfv :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glPixelMapfv = unsafePerformIO $ getCommand "glPixelMapfv"
+
+-- glPixelMapuiv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
+glPixelMapuiv
+  :: MonadIO m
+  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
+  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
+  -> Ptr GLuint -- ^ @values@ pointing to @mapsize@ elements of type @GLuint@.
+  -> m ()
+glPixelMapuiv v1 v2 v3 = liftIO $ dyn200 ptr_glPixelMapuiv v1 v2 v3
+
+{-# NOINLINE ptr_glPixelMapuiv #-}
+ptr_glPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glPixelMapuiv = unsafePerformIO $ getCommand "glPixelMapuiv"
+
+-- glPixelMapusv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>.
+glPixelMapusv
+  :: MonadIO m
+  => GLenum -- ^ @map@ of type [PixelMap](Graphics-GL-Groups.html#PixelMap).
+  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
+  -> Ptr GLushort -- ^ @values@ pointing to @mapsize@ elements of type @GLushort@.
+  -> m ()
+glPixelMapusv v1 v2 v3 = liftIO $ dyn464 ptr_glPixelMapusv v1 v2 v3
+
+{-# NOINLINE ptr_glPixelMapusv #-}
+ptr_glPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
+ptr_glPixelMapusv = unsafePerformIO $ getCommand "glPixelMapusv"
+
+-- glPixelMapx -----------------------------------------------------------------
+
+glPixelMapx
+  :: MonadIO m
+  => GLenum -- ^ @map@.
+  -> GLint -- ^ @size@.
+  -> Ptr GLfixed -- ^ @values@ pointing to @size@ elements of type @GLfixed@.
+  -> m ()
+glPixelMapx v1 v2 v3 = liftIO $ dyn399 ptr_glPixelMapx v1 v2 v3
+
+{-# NOINLINE ptr_glPixelMapx #-}
+ptr_glPixelMapx :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
+ptr_glPixelMapx = unsafePerformIO $ getCommand "glPixelMapx"
+
+-- glPixelStoref ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>.
+glPixelStoref
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelStoreParameter](Graphics-GL-Groups.html#PixelStoreParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPixelStoref v1 v2 = liftIO $ dyn0 ptr_glPixelStoref v1 v2
+
+{-# NOINLINE ptr_glPixelStoref #-}
+ptr_glPixelStoref :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPixelStoref = unsafePerformIO $ getCommand "glPixelStoref"
+
+-- glPixelStorei ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>.
+glPixelStorei
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelStoreParameter](Graphics-GL-Groups.html#PixelStoreParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glPixelStorei v1 v2 = liftIO $ dyn56 ptr_glPixelStorei v1 v2
+
+{-# NOINLINE ptr_glPixelStorei #-}
+ptr_glPixelStorei :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPixelStorei = unsafePerformIO $ getCommand "glPixelStorei"
+
+-- glPixelStorex ---------------------------------------------------------------
+
+glPixelStorex
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glPixelStorex v1 v2 = liftIO $ dyn1 ptr_glPixelStorex v1 v2
+
+{-# NOINLINE ptr_glPixelStorex #-}
+ptr_glPixelStorex :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glPixelStorex = unsafePerformIO $ getCommand "glPixelStorex"
+
+-- glPixelTexGenParameterfSGIS -------------------------------------------------
+
+glPixelTexGenParameterfSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPixelTexGenParameterfSGIS v1 v2 = liftIO $ dyn0 ptr_glPixelTexGenParameterfSGIS v1 v2
+
+{-# NOINLINE ptr_glPixelTexGenParameterfSGIS #-}
+ptr_glPixelTexGenParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPixelTexGenParameterfSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfSGIS"
+
+-- glPixelTexGenParameterfvSGIS ------------------------------------------------
+
+glPixelTexGenParameterfvSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glPixelTexGenParameterfvSGIS v1 v2 = liftIO $ dyn97 ptr_glPixelTexGenParameterfvSGIS v1 v2
+
+{-# NOINLINE ptr_glPixelTexGenParameterfvSGIS #-}
+ptr_glPixelTexGenParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPixelTexGenParameterfvSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfvSGIS"
+
+-- glPixelTexGenParameteriSGIS -------------------------------------------------
+
+glPixelTexGenParameteriSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glPixelTexGenParameteriSGIS v1 v2 = liftIO $ dyn56 ptr_glPixelTexGenParameteriSGIS v1 v2
+
+{-# NOINLINE ptr_glPixelTexGenParameteriSGIS #-}
+ptr_glPixelTexGenParameteriSGIS :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPixelTexGenParameteriSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameteriSGIS"
+
+-- glPixelTexGenParameterivSGIS ------------------------------------------------
+
+glPixelTexGenParameterivSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTexGenParameterNameSGIS](Graphics-GL-Groups.html#PixelTexGenParameterNameSGIS).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glPixelTexGenParameterivSGIS v1 v2 = liftIO $ dyn139 ptr_glPixelTexGenParameterivSGIS v1 v2
+
+{-# NOINLINE ptr_glPixelTexGenParameterivSGIS #-}
+ptr_glPixelTexGenParameterivSGIS :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glPixelTexGenParameterivSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterivSGIS"
+
+-- glPixelTexGenSGIX -----------------------------------------------------------
+
+glPixelTexGenSGIX
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type @PixelTexGenModeSGIX@.
+  -> m ()
+glPixelTexGenSGIX v1 = liftIO $ dyn5 ptr_glPixelTexGenSGIX v1
+
+{-# NOINLINE ptr_glPixelTexGenSGIX #-}
+ptr_glPixelTexGenSGIX :: FunPtr (GLenum -> IO ())
+ptr_glPixelTexGenSGIX = unsafePerformIO $ getCommand "glPixelTexGenSGIX"
+
+-- glPixelTransferf ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>.
+glPixelTransferf
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTransferParameter](Graphics-GL-Groups.html#PixelTransferParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPixelTransferf v1 v2 = liftIO $ dyn0 ptr_glPixelTransferf v1 v2
+
+{-# NOINLINE ptr_glPixelTransferf #-}
+ptr_glPixelTransferf :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPixelTransferf = unsafePerformIO $ getCommand "glPixelTransferf"
+
+-- glPixelTransferi ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>.
+glPixelTransferi
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type [PixelTransferParameter](Graphics-GL-Groups.html#PixelTransferParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glPixelTransferi v1 v2 = liftIO $ dyn56 ptr_glPixelTransferi v1 v2
+
+{-# NOINLINE ptr_glPixelTransferi #-}
+ptr_glPixelTransferi :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPixelTransferi = unsafePerformIO $ getCommand "glPixelTransferi"
+
+-- glPixelTransferxOES ---------------------------------------------------------
+
+glPixelTransferxOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glPixelTransferxOES v1 v2 = liftIO $ dyn1 ptr_glPixelTransferxOES v1 v2
+
+{-# NOINLINE ptr_glPixelTransferxOES #-}
+ptr_glPixelTransferxOES :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glPixelTransferxOES = unsafePerformIO $ getCommand "glPixelTransferxOES"
+
+-- glPixelTransformParameterfEXT -----------------------------------------------
+
+glPixelTransformParameterfEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
+  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glPixelTransformParameterfEXT v1 v2 v3 = liftIO $ dyn164 ptr_glPixelTransformParameterfEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPixelTransformParameterfEXT #-}
+ptr_glPixelTransformParameterfEXT :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glPixelTransformParameterfEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfEXT"
+
+-- glPixelTransformParameterfvEXT ----------------------------------------------
+
+glPixelTransformParameterfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
+  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glPixelTransformParameterfvEXT v1 v2 v3 = liftIO $ dyn135 ptr_glPixelTransformParameterfvEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPixelTransformParameterfvEXT #-}
+ptr_glPixelTransformParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glPixelTransformParameterfvEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfvEXT"
+
+-- glPixelTransformParameteriEXT -----------------------------------------------
+
+glPixelTransformParameteriEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
+  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glPixelTransformParameteriEXT v1 v2 v3 = liftIO $ dyn63 ptr_glPixelTransformParameteriEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPixelTransformParameteriEXT #-}
+ptr_glPixelTransformParameteriEXT :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glPixelTransformParameteriEXT = unsafePerformIO $ getCommand "glPixelTransformParameteriEXT"
+
+-- glPixelTransformParameterivEXT ----------------------------------------------
+
+glPixelTransformParameterivEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
+  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
+  -> Ptr GLint -- ^ @params@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glPixelTransformParameterivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glPixelTransformParameterivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPixelTransformParameterivEXT #-}
+ptr_glPixelTransformParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glPixelTransformParameterivEXT = unsafePerformIO $ getCommand "glPixelTransformParameterivEXT"
+
+-- glPixelZoom -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelZoom.xml OpenGL 2.x>.
+glPixelZoom
+  :: MonadIO m
+  => GLfloat -- ^ @xfactor@.
+  -> GLfloat -- ^ @yfactor@.
+  -> m ()
+glPixelZoom v1 v2 = liftIO $ dyn225 ptr_glPixelZoom v1 v2
+
+{-# NOINLINE ptr_glPixelZoom #-}
+ptr_glPixelZoom :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glPixelZoom = unsafePerformIO $ getCommand "glPixelZoom"
+
+-- glPixelZoomxOES -------------------------------------------------------------
+
+glPixelZoomxOES
+  :: MonadIO m
+  => GLfixed -- ^ @xfactor@.
+  -> GLfixed -- ^ @yfactor@.
+  -> m ()
+glPixelZoomxOES v1 v2 = liftIO $ dyn227 ptr_glPixelZoomxOES v1 v2
+
+{-# NOINLINE ptr_glPixelZoomxOES #-}
+ptr_glPixelZoomxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glPixelZoomxOES = unsafePerformIO $ getCommand "glPixelZoomxOES"
+
+-- glPointAlongPathNV ----------------------------------------------------------
+
+glPointAlongPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @startSegment@.
+  -> GLsizei -- ^ @numSegments@.
+  -> GLfloat -- ^ @distance@.
+  -> Ptr GLfloat -- ^ @x@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @y@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @tangentX@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @tangentY@ pointing to @1@ element of type @GLfloat@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn634 ptr_glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPointAlongPathNV #-}
+ptr_glPointAlongPathNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
+ptr_glPointAlongPathNV = unsafePerformIO $ getCommand "glPointAlongPathNV"
+
+-- glPointParameterf -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
+glPointParameterf
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPointParameterf v1 v2 = liftIO $ dyn0 ptr_glPointParameterf v1 v2
+
+{-# NOINLINE ptr_glPointParameterf #-}
+ptr_glPointParameterf :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPointParameterf = unsafePerformIO $ getCommand "glPointParameterf"
+
+-- glPointParameterfARB --------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterf'.
+glPointParameterfARB
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfARB v1 v2 = liftIO $ dyn0 ptr_glPointParameterfARB v1 v2
+
+{-# NOINLINE ptr_glPointParameterfARB #-}
+ptr_glPointParameterfARB :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPointParameterfARB = unsafePerformIO $ getCommand "glPointParameterfARB"
+
+-- glPointParameterfEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterf'.
+glPointParameterfEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfEXT v1 v2 = liftIO $ dyn0 ptr_glPointParameterfEXT v1 v2
+
+{-# NOINLINE ptr_glPointParameterfEXT #-}
+ptr_glPointParameterfEXT :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPointParameterfEXT = unsafePerformIO $ getCommand "glPointParameterfEXT"
+
+-- glPointParameterfSGIS -------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterf'.
+glPointParameterfSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfSGIS v1 v2 = liftIO $ dyn0 ptr_glPointParameterfSGIS v1 v2
+
+{-# NOINLINE ptr_glPointParameterfSGIS #-}
+ptr_glPointParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glPointParameterfSGIS = unsafePerformIO $ getCommand "glPointParameterfSGIS"
+
+-- glPointParameterfv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
+glPointParameterfv
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfv v1 v2 = liftIO $ dyn97 ptr_glPointParameterfv v1 v2
+
+{-# NOINLINE ptr_glPointParameterfv #-}
+ptr_glPointParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPointParameterfv = unsafePerformIO $ getCommand "glPointParameterfv"
+
+-- glPointParameterfvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterfv'.
+glPointParameterfvARB
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfvARB v1 v2 = liftIO $ dyn97 ptr_glPointParameterfvARB v1 v2
+
+{-# NOINLINE ptr_glPointParameterfvARB #-}
+ptr_glPointParameterfvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPointParameterfvARB = unsafePerformIO $ getCommand "glPointParameterfvARB"
+
+-- glPointParameterfvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterfv'.
+glPointParameterfvEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfvEXT v1 v2 = liftIO $ dyn97 ptr_glPointParameterfvEXT v1 v2
+
+{-# NOINLINE ptr_glPointParameterfvEXT #-}
+ptr_glPointParameterfvEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPointParameterfvEXT = unsafePerformIO $ getCommand "glPointParameterfvEXT"
+
+-- glPointParameterfvSGIS ------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameterfv'.
+glPointParameterfvSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glPointParameterfvSGIS v1 v2 = liftIO $ dyn97 ptr_glPointParameterfvSGIS v1 v2
+
+{-# NOINLINE ptr_glPointParameterfvSGIS #-}
+ptr_glPointParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glPointParameterfvSGIS = unsafePerformIO $ getCommand "glPointParameterfvSGIS"
 
diff --git a/src/Graphics/GL/Functions/F20.hs b/src/Graphics/GL/Functions/F20.hs
--- a/src/Graphics/GL/Functions/F20.hs
+++ b/src/Graphics/GL/Functions/F20.hs
@@ -15,1666 +15,1608 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F20 (
-  glProgramBinaryOES,
-  glProgramBufferParametersIivNV,
-  glProgramBufferParametersIuivNV,
-  glProgramBufferParametersfvNV,
-  glProgramEnvParameter4dARB,
-  glProgramEnvParameter4dvARB,
-  glProgramEnvParameter4fARB,
-  glProgramEnvParameter4fvARB,
-  glProgramEnvParameterI4iNV,
-  glProgramEnvParameterI4ivNV,
-  glProgramEnvParameterI4uiNV,
-  glProgramEnvParameterI4uivNV,
-  glProgramEnvParameters4fvEXT,
-  glProgramEnvParametersI4ivNV,
-  glProgramEnvParametersI4uivNV,
-  glProgramLocalParameter4dARB,
-  glProgramLocalParameter4dvARB,
-  glProgramLocalParameter4fARB,
-  glProgramLocalParameter4fvARB,
-  glProgramLocalParameterI4iNV,
-  glProgramLocalParameterI4ivNV,
-  glProgramLocalParameterI4uiNV,
-  glProgramLocalParameterI4uivNV,
-  glProgramLocalParameters4fvEXT,
-  glProgramLocalParametersI4ivNV,
-  glProgramLocalParametersI4uivNV,
-  glProgramNamedParameter4dNV,
-  glProgramNamedParameter4dvNV,
-  glProgramNamedParameter4fNV,
-  glProgramNamedParameter4fvNV,
-  glProgramParameter4dNV,
-  glProgramParameter4dvNV,
-  glProgramParameter4fNV,
-  glProgramParameter4fvNV,
-  glProgramParameteri,
-  glProgramParameteriARB,
-  glProgramParameteriEXT,
-  glProgramParameters4dvNV,
-  glProgramParameters4fvNV,
-  glProgramPathFragmentInputGenNV,
-  glProgramStringARB,
-  glProgramSubroutineParametersuivNV,
-  glProgramUniform1d,
-  glProgramUniform1dEXT,
-  glProgramUniform1dv,
-  glProgramUniform1dvEXT,
-  glProgramUniform1f,
-  glProgramUniform1fEXT,
-  glProgramUniform1fv,
-  glProgramUniform1fvEXT,
-  glProgramUniform1i,
-  glProgramUniform1i64ARB,
-  glProgramUniform1i64NV,
-  glProgramUniform1i64vARB,
-  glProgramUniform1i64vNV,
-  glProgramUniform1iEXT,
-  glProgramUniform1iv,
-  glProgramUniform1ivEXT,
-  glProgramUniform1ui,
-  glProgramUniform1ui64ARB,
-  glProgramUniform1ui64NV,
-  glProgramUniform1ui64vARB,
-  glProgramUniform1ui64vNV,
-  glProgramUniform1uiEXT,
-  glProgramUniform1uiv,
-  glProgramUniform1uivEXT,
-  glProgramUniform2d,
-  glProgramUniform2dEXT,
-  glProgramUniform2dv,
-  glProgramUniform2dvEXT,
-  glProgramUniform2f,
-  glProgramUniform2fEXT,
-  glProgramUniform2fv,
-  glProgramUniform2fvEXT,
-  glProgramUniform2i,
-  glProgramUniform2i64ARB,
-  glProgramUniform2i64NV,
-  glProgramUniform2i64vARB,
-  glProgramUniform2i64vNV,
-  glProgramUniform2iEXT,
-  glProgramUniform2iv,
-  glProgramUniform2ivEXT,
-  glProgramUniform2ui,
-  glProgramUniform2ui64ARB,
-  glProgramUniform2ui64NV,
-  glProgramUniform2ui64vARB,
-  glProgramUniform2ui64vNV,
-  glProgramUniform2uiEXT,
-  glProgramUniform2uiv,
-  glProgramUniform2uivEXT,
-  glProgramUniform3d,
-  glProgramUniform3dEXT,
-  glProgramUniform3dv,
-  glProgramUniform3dvEXT,
-  glProgramUniform3f,
-  glProgramUniform3fEXT,
-  glProgramUniform3fv,
-  glProgramUniform3fvEXT,
-  glProgramUniform3i,
-  glProgramUniform3i64ARB
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glProgramBinaryOES ----------------------------------------------------------
-
--- | This command is an alias for 'glProgramBinary'.
-glProgramBinaryOES
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @binaryFormat@.
-  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
-  -> GLint -- ^ @length@.
-  -> m ()
-glProgramBinaryOES v1 v2 v3 v4 = liftIO $ dyn621 ptr_glProgramBinaryOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramBinaryOES #-}
-ptr_glProgramBinaryOES :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
-ptr_glProgramBinaryOES = unsafePerformIO $ getCommand "glProgramBinaryOES"
-
--- glProgramBufferParametersIivNV ----------------------------------------------
-
-glProgramBufferParametersIivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @bindingIndex@.
-  -> GLuint -- ^ @wordIndex@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @params@ pointing to @count@ elements of type @GLint@.
-  -> m ()
-glProgramBufferParametersIivNV v1 v2 v3 v4 v5 = liftIO $ dyn622 ptr_glProgramBufferParametersIivNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramBufferParametersIivNV #-}
-ptr_glProgramBufferParametersIivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramBufferParametersIivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIivNV"
-
--- glProgramBufferParametersIuivNV ---------------------------------------------
-
-glProgramBufferParametersIuivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @bindingIndex@.
-  -> GLuint -- ^ @wordIndex@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glProgramBufferParametersIuivNV v1 v2 v3 v4 v5 = liftIO $ dyn623 ptr_glProgramBufferParametersIuivNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramBufferParametersIuivNV #-}
-ptr_glProgramBufferParametersIuivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramBufferParametersIuivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIuivNV"
-
--- glProgramBufferParametersfvNV -----------------------------------------------
-
-glProgramBufferParametersfvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @bindingIndex@.
-  -> GLuint -- ^ @wordIndex@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @count@ elements of type @GLfloat@.
-  -> m ()
-glProgramBufferParametersfvNV v1 v2 v3 v4 v5 = liftIO $ dyn624 ptr_glProgramBufferParametersfvNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramBufferParametersfvNV #-}
-ptr_glProgramBufferParametersfvNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramBufferParametersfvNV = unsafePerformIO $ getCommand "glProgramBufferParametersfvNV"
-
--- glProgramEnvParameter4dARB --------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramEnvParameter4dvARB'.
-glProgramEnvParameter4dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glProgramEnvParameter4dARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn625 ptr_glProgramEnvParameter4dARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramEnvParameter4dARB #-}
-ptr_glProgramEnvParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramEnvParameter4dARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dARB"
-
--- glProgramEnvParameter4dvARB -------------------------------------------------
-
-glProgramEnvParameter4dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glProgramEnvParameter4dvARB v1 v2 v3 = liftIO $ dyn331 ptr_glProgramEnvParameter4dvARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramEnvParameter4dvARB #-}
-ptr_glProgramEnvParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
-ptr_glProgramEnvParameter4dvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dvARB"
-
--- glProgramEnvParameter4fARB --------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramEnvParameter4fvARB'.
-glProgramEnvParameter4fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glProgramEnvParameter4fARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn626 ptr_glProgramEnvParameter4fARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramEnvParameter4fARB #-}
-ptr_glProgramEnvParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramEnvParameter4fARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fARB"
-
--- glProgramEnvParameter4fvARB -------------------------------------------------
-
-glProgramEnvParameter4fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glProgramEnvParameter4fvARB v1 v2 v3 = liftIO $ dyn267 ptr_glProgramEnvParameter4fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramEnvParameter4fvARB #-}
-ptr_glProgramEnvParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glProgramEnvParameter4fvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fvARB"
-
--- glProgramEnvParameterI4iNV --------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramEnvParameterI4ivNV'.
-glProgramEnvParameterI4iNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glProgramEnvParameterI4iNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn627 ptr_glProgramEnvParameterI4iNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramEnvParameterI4iNV #-}
-ptr_glProgramEnvParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramEnvParameterI4iNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4iNV"
-
--- glProgramEnvParameterI4ivNV -------------------------------------------------
-
-glProgramEnvParameterI4ivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glProgramEnvParameterI4ivNV v1 v2 v3 = liftIO $ dyn344 ptr_glProgramEnvParameterI4ivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramEnvParameterI4ivNV #-}
-ptr_glProgramEnvParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
-ptr_glProgramEnvParameterI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4ivNV"
-
--- glProgramEnvParameterI4uiNV -------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramEnvParameterI4uivNV'.
-glProgramEnvParameterI4uiNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn6 ptr_glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramEnvParameterI4uiNV #-}
-ptr_glProgramEnvParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramEnvParameterI4uiNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uiNV"
-
--- glProgramEnvParameterI4uivNV ------------------------------------------------
-
-glProgramEnvParameterI4uivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glProgramEnvParameterI4uivNV v1 v2 v3 = liftIO $ dyn214 ptr_glProgramEnvParameterI4uivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramEnvParameterI4uivNV #-}
-ptr_glProgramEnvParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glProgramEnvParameterI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uivNV"
-
--- glProgramEnvParameters4fvEXT ------------------------------------------------
-
-glProgramEnvParameters4fvEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramEnvParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn284 ptr_glProgramEnvParameters4fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramEnvParameters4fvEXT #-}
-ptr_glProgramEnvParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramEnvParameters4fvEXT = unsafePerformIO $ getCommand "glProgramEnvParameters4fvEXT"
-
--- glProgramEnvParametersI4ivNV ------------------------------------------------
-
-glProgramEnvParametersI4ivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glProgramEnvParametersI4ivNV v1 v2 v3 v4 = liftIO $ dyn628 ptr_glProgramEnvParametersI4ivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramEnvParametersI4ivNV #-}
-ptr_glProgramEnvParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramEnvParametersI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4ivNV"
-
--- glProgramEnvParametersI4uivNV -----------------------------------------------
-
-glProgramEnvParametersI4uivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glProgramEnvParametersI4uivNV v1 v2 v3 v4 = liftIO $ dyn22 ptr_glProgramEnvParametersI4uivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramEnvParametersI4uivNV #-}
-ptr_glProgramEnvParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramEnvParametersI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4uivNV"
-
--- glProgramLocalParameter4dARB ------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramLocalParameter4dvARB'.
-glProgramLocalParameter4dARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glProgramLocalParameter4dARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn625 ptr_glProgramLocalParameter4dARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramLocalParameter4dARB #-}
-ptr_glProgramLocalParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramLocalParameter4dARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dARB"
-
--- glProgramLocalParameter4dvARB -----------------------------------------------
-
-glProgramLocalParameter4dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glProgramLocalParameter4dvARB v1 v2 v3 = liftIO $ dyn331 ptr_glProgramLocalParameter4dvARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramLocalParameter4dvARB #-}
-ptr_glProgramLocalParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
-ptr_glProgramLocalParameter4dvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dvARB"
-
--- glProgramLocalParameter4fARB ------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramLocalParameter4fvARB'.
-glProgramLocalParameter4fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glProgramLocalParameter4fARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn626 ptr_glProgramLocalParameter4fARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramLocalParameter4fARB #-}
-ptr_glProgramLocalParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramLocalParameter4fARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fARB"
-
--- glProgramLocalParameter4fvARB -----------------------------------------------
-
-glProgramLocalParameter4fvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glProgramLocalParameter4fvARB v1 v2 v3 = liftIO $ dyn267 ptr_glProgramLocalParameter4fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramLocalParameter4fvARB #-}
-ptr_glProgramLocalParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glProgramLocalParameter4fvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fvARB"
-
--- glProgramLocalParameterI4iNV ------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramLocalParameterI4ivNV'.
-glProgramLocalParameterI4iNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glProgramLocalParameterI4iNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn627 ptr_glProgramLocalParameterI4iNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramLocalParameterI4iNV #-}
-ptr_glProgramLocalParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramLocalParameterI4iNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4iNV"
-
--- glProgramLocalParameterI4ivNV -----------------------------------------------
-
-glProgramLocalParameterI4ivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glProgramLocalParameterI4ivNV v1 v2 v3 = liftIO $ dyn344 ptr_glProgramLocalParameterI4ivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramLocalParameterI4ivNV #-}
-ptr_glProgramLocalParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
-ptr_glProgramLocalParameterI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4ivNV"
-
--- glProgramLocalParameterI4uiNV -----------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramLocalParameterI4uivNV'.
-glProgramLocalParameterI4uiNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glProgramLocalParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn6 ptr_glProgramLocalParameterI4uiNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramLocalParameterI4uiNV #-}
-ptr_glProgramLocalParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramLocalParameterI4uiNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uiNV"
-
--- glProgramLocalParameterI4uivNV ----------------------------------------------
-
-glProgramLocalParameterI4uivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glProgramLocalParameterI4uivNV v1 v2 v3 = liftIO $ dyn214 ptr_glProgramLocalParameterI4uivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramLocalParameterI4uivNV #-}
-ptr_glProgramLocalParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glProgramLocalParameterI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uivNV"
-
--- glProgramLocalParameters4fvEXT ----------------------------------------------
-
-glProgramLocalParameters4fvEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramLocalParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn284 ptr_glProgramLocalParameters4fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramLocalParameters4fvEXT #-}
-ptr_glProgramLocalParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glProgramLocalParameters4fvEXT"
-
--- glProgramLocalParametersI4ivNV ----------------------------------------------
-
-glProgramLocalParametersI4ivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glProgramLocalParametersI4ivNV v1 v2 v3 v4 = liftIO $ dyn628 ptr_glProgramLocalParametersI4ivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramLocalParametersI4ivNV #-}
-ptr_glProgramLocalParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramLocalParametersI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4ivNV"
-
--- glProgramLocalParametersI4uivNV ---------------------------------------------
-
-glProgramLocalParametersI4uivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glProgramLocalParametersI4uivNV v1 v2 v3 v4 = liftIO $ dyn22 ptr_glProgramLocalParametersI4uivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramLocalParametersI4uivNV #-}
-ptr_glProgramLocalParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramLocalParametersI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4uivNV"
-
--- glProgramNamedParameter4dNV -------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramNamedParameter4dvNV'.
-glProgramNamedParameter4dNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glProgramNamedParameter4dNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn629 ptr_glProgramNamedParameter4dNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glProgramNamedParameter4dNV #-}
-ptr_glProgramNamedParameter4dNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramNamedParameter4dNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dNV"
-
--- glProgramNamedParameter4dvNV ------------------------------------------------
-
-glProgramNamedParameter4dvNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glProgramNamedParameter4dvNV v1 v2 v3 v4 = liftIO $ dyn395 ptr_glProgramNamedParameter4dvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramNamedParameter4dvNV #-}
-ptr_glProgramNamedParameter4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
-ptr_glProgramNamedParameter4dvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dvNV"
-
--- glProgramNamedParameter4fNV -------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramNamedParameter4fvNV'.
-glProgramNamedParameter4fNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glProgramNamedParameter4fNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn630 ptr_glProgramNamedParameter4fNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glProgramNamedParameter4fNV #-}
-ptr_glProgramNamedParameter4fNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramNamedParameter4fNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fNV"
-
--- glProgramNamedParameter4fvNV ------------------------------------------------
-
-glProgramNamedParameter4fvNV
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glProgramNamedParameter4fvNV v1 v2 v3 v4 = liftIO $ dyn396 ptr_glProgramNamedParameter4fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramNamedParameter4fvNV #-}
-ptr_glProgramNamedParameter4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-ptr_glProgramNamedParameter4fvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fvNV"
-
--- glProgramParameter4dNV ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramParameter4dvNV'.
-glProgramParameter4dNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glProgramParameter4dNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn625 ptr_glProgramParameter4dNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramParameter4dNV #-}
-ptr_glProgramParameter4dNV :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramParameter4dNV = unsafePerformIO $ getCommand "glProgramParameter4dNV"
-
--- glProgramParameter4dvNV -----------------------------------------------------
-
-glProgramParameter4dvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glProgramParameter4dvNV v1 v2 v3 = liftIO $ dyn331 ptr_glProgramParameter4dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramParameter4dvNV #-}
-ptr_glProgramParameter4dvNV :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
-ptr_glProgramParameter4dvNV = unsafePerformIO $ getCommand "glProgramParameter4dvNV"
-
--- glProgramParameter4fNV ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramParameter4fvNV'.
-glProgramParameter4fNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glProgramParameter4fNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn626 ptr_glProgramParameter4fNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramParameter4fNV #-}
-ptr_glProgramParameter4fNV :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramParameter4fNV = unsafePerformIO $ getCommand "glProgramParameter4fNV"
-
--- glProgramParameter4fvNV -----------------------------------------------------
-
-glProgramParameter4fvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glProgramParameter4fvNV v1 v2 v3 = liftIO $ dyn267 ptr_glProgramParameter4fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramParameter4fvNV #-}
-ptr_glProgramParameter4fvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glProgramParameter4fvNV = unsafePerformIO $ getCommand "glProgramParameter4fvNV"
-
--- glProgramParameteri ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramParameter.xhtml OpenGL 4.x>.
-glProgramParameteri
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glProgramParameteri v1 v2 v3 = liftIO $ dyn490 ptr_glProgramParameteri v1 v2 v3
-
-{-# NOINLINE ptr_glProgramParameteri #-}
-ptr_glProgramParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glProgramParameteri = unsafePerformIO $ getCommand "glProgramParameteri"
-
--- glProgramParameteriARB ------------------------------------------------------
-
--- | This command is an alias for 'glProgramParameteri'.
-glProgramParameteriARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glProgramParameteriARB v1 v2 v3 = liftIO $ dyn490 ptr_glProgramParameteriARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramParameteriARB #-}
-ptr_glProgramParameteriARB :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glProgramParameteriARB = unsafePerformIO $ getCommand "glProgramParameteriARB"
-
--- glProgramParameteriEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramParameteri'.
-glProgramParameteriEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
-  -> GLint -- ^ @value@.
-  -> m ()
-glProgramParameteriEXT v1 v2 v3 = liftIO $ dyn490 ptr_glProgramParameteriEXT v1 v2 v3
-
-{-# NOINLINE ptr_glProgramParameteriEXT #-}
-ptr_glProgramParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glProgramParameteriEXT = unsafePerformIO $ getCommand "glProgramParameteriEXT"
-
--- glProgramParameters4dvNV ----------------------------------------------------
-
-glProgramParameters4dvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glProgramParameters4dvNV v1 v2 v3 v4 = liftIO $ dyn631 ptr_glProgramParameters4dvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramParameters4dvNV #-}
-ptr_glProgramParameters4dvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramParameters4dvNV = unsafePerformIO $ getCommand "glProgramParameters4dvNV"
-
--- glProgramParameters4fvNV ----------------------------------------------------
-
-glProgramParameters4fvNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramParameters4fvNV v1 v2 v3 v4 = liftIO $ dyn284 ptr_glProgramParameters4fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramParameters4fvNV #-}
-ptr_glProgramParameters4fvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramParameters4fvNV = unsafePerformIO $ getCommand "glProgramParameters4fvNV"
-
--- glProgramPathFragmentInputGenNV ---------------------------------------------
-
-glProgramPathFragmentInputGenNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLenum -- ^ @genMode@.
-  -> GLint -- ^ @components@.
-  -> Ptr GLfloat -- ^ @coeffs@.
-  -> m ()
-glProgramPathFragmentInputGenNV v1 v2 v3 v4 v5 = liftIO $ dyn632 ptr_glProgramPathFragmentInputGenNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramPathFragmentInputGenNV #-}
-ptr_glProgramPathFragmentInputGenNV :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
-ptr_glProgramPathFragmentInputGenNV = unsafePerformIO $ getCommand "glProgramPathFragmentInputGenNV"
-
--- glProgramStringARB ----------------------------------------------------------
-
-glProgramStringARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLenum -- ^ @format@ of type @ProgramFormatARB@.
-  -> GLsizei -- ^ @len@.
-  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
-  -> m ()
-glProgramStringARB v1 v2 v3 v4 = liftIO $ dyn633 ptr_glProgramStringARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramStringARB #-}
-ptr_glProgramStringARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glProgramStringARB = unsafePerformIO $ getCommand "glProgramStringARB"
-
--- glProgramSubroutineParametersuivNV ------------------------------------------
-
-glProgramSubroutineParametersuivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glProgramSubroutineParametersuivNV v1 v2 v3 = liftIO $ dyn197 ptr_glProgramSubroutineParametersuivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramSubroutineParametersuivNV #-}
-ptr_glProgramSubroutineParametersuivNV :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramSubroutineParametersuivNV = unsafePerformIO $ getCommand "glProgramSubroutineParametersuivNV"
-
--- glProgramUniform1d ----------------------------------------------------------
-
-glProgramUniform1d
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @v0@.
-  -> m ()
-glProgramUniform1d v1 v2 v3 = liftIO $ dyn634 ptr_glProgramUniform1d v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1d #-}
-ptr_glProgramUniform1d :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
-ptr_glProgramUniform1d = unsafePerformIO $ getCommand "glProgramUniform1d"
-
--- glProgramUniform1dEXT -------------------------------------------------------
-
-glProgramUniform1dEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glProgramUniform1dEXT v1 v2 v3 = liftIO $ dyn634 ptr_glProgramUniform1dEXT v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1dEXT #-}
-ptr_glProgramUniform1dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
-ptr_glProgramUniform1dEXT = unsafePerformIO $ getCommand "glProgramUniform1dEXT"
-
--- glProgramUniform1dv ---------------------------------------------------------
-
-glProgramUniform1dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform1dv v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform1dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1dv #-}
-ptr_glProgramUniform1dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform1dv = unsafePerformIO $ getCommand "glProgramUniform1dv"
-
--- glProgramUniform1dvEXT ------------------------------------------------------
-
-glProgramUniform1dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform1dvEXT v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform1dvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1dvEXT #-}
-ptr_glProgramUniform1dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform1dvEXT = unsafePerformIO $ getCommand "glProgramUniform1dvEXT"
-
--- glProgramUniform1f ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1f
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> m ()
-glProgramUniform1f v1 v2 v3 = liftIO $ dyn635 ptr_glProgramUniform1f v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1f #-}
-ptr_glProgramUniform1f :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
-ptr_glProgramUniform1f = unsafePerformIO $ getCommand "glProgramUniform1f"
-
--- glProgramUniform1fEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1f'.
-glProgramUniform1fEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> m ()
-glProgramUniform1fEXT v1 v2 v3 = liftIO $ dyn635 ptr_glProgramUniform1fEXT v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1fEXT #-}
-ptr_glProgramUniform1fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
-ptr_glProgramUniform1fEXT = unsafePerformIO $ getCommand "glProgramUniform1fEXT"
-
--- glProgramUniform1fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform1fv v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform1fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1fv #-}
-ptr_glProgramUniform1fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform1fv = unsafePerformIO $ getCommand "glProgramUniform1fv"
-
--- glProgramUniform1fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1fv'.
-glProgramUniform1fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform1fvEXT v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform1fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1fvEXT #-}
-ptr_glProgramUniform1fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform1fvEXT = unsafePerformIO $ getCommand "glProgramUniform1fvEXT"
-
--- glProgramUniform1i ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1i
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> m ()
-glProgramUniform1i v1 v2 v3 = liftIO $ dyn636 ptr_glProgramUniform1i v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1i #-}
-ptr_glProgramUniform1i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform1i = unsafePerformIO $ getCommand "glProgramUniform1i"
-
--- glProgramUniform1i64ARB -----------------------------------------------------
-
-glProgramUniform1i64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> m ()
-glProgramUniform1i64ARB v1 v2 v3 = liftIO $ dyn637 ptr_glProgramUniform1i64ARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1i64ARB #-}
-ptr_glProgramUniform1i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> IO ())
-ptr_glProgramUniform1i64ARB = unsafePerformIO $ getCommand "glProgramUniform1i64ARB"
-
--- glProgramUniform1i64NV ------------------------------------------------------
-
-glProgramUniform1i64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> m ()
-glProgramUniform1i64NV v1 v2 v3 = liftIO $ dyn638 ptr_glProgramUniform1i64NV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1i64NV #-}
-ptr_glProgramUniform1i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
-ptr_glProgramUniform1i64NV = unsafePerformIO $ getCommand "glProgramUniform1i64NV"
-
--- glProgramUniform1i64vARB ----------------------------------------------------
-
-glProgramUniform1i64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count@ elements of type @GLint64@.
-  -> m ()
-glProgramUniform1i64vARB v1 v2 v3 v4 = liftIO $ dyn460 ptr_glProgramUniform1i64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1i64vARB #-}
-ptr_glProgramUniform1i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glProgramUniform1i64vARB = unsafePerformIO $ getCommand "glProgramUniform1i64vARB"
-
--- glProgramUniform1i64vNV -----------------------------------------------------
-
-glProgramUniform1i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count@ elements of type @GLint64EXT@.
-  -> m ()
-glProgramUniform1i64vNV v1 v2 v3 v4 = liftIO $ dyn639 ptr_glProgramUniform1i64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1i64vNV #-}
-ptr_glProgramUniform1i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glProgramUniform1i64vNV = unsafePerformIO $ getCommand "glProgramUniform1i64vNV"
-
--- glProgramUniform1iEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1i'.
-glProgramUniform1iEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> m ()
-glProgramUniform1iEXT v1 v2 v3 = liftIO $ dyn636 ptr_glProgramUniform1iEXT v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1iEXT #-}
-ptr_glProgramUniform1iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform1iEXT = unsafePerformIO $ getCommand "glProgramUniform1iEXT"
-
--- glProgramUniform1iv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1iv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count@ elements of type @GLint@.
-  -> m ()
-glProgramUniform1iv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform1iv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1iv #-}
-ptr_glProgramUniform1iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform1iv = unsafePerformIO $ getCommand "glProgramUniform1iv"
-
--- glProgramUniform1ivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1iv'.
-glProgramUniform1ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count@ elements of type @GLint@.
-  -> m ()
-glProgramUniform1ivEXT v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform1ivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1ivEXT #-}
-ptr_glProgramUniform1ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform1ivEXT = unsafePerformIO $ getCommand "glProgramUniform1ivEXT"
-
--- glProgramUniform1ui ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1ui
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> m ()
-glProgramUniform1ui v1 v2 v3 = liftIO $ dyn640 ptr_glProgramUniform1ui v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1ui #-}
-ptr_glProgramUniform1ui :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
-ptr_glProgramUniform1ui = unsafePerformIO $ getCommand "glProgramUniform1ui"
-
--- glProgramUniform1ui64ARB ----------------------------------------------------
-
-glProgramUniform1ui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> m ()
-glProgramUniform1ui64ARB v1 v2 v3 = liftIO $ dyn641 ptr_glProgramUniform1ui64ARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1ui64ARB #-}
-ptr_glProgramUniform1ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-ptr_glProgramUniform1ui64ARB = unsafePerformIO $ getCommand "glProgramUniform1ui64ARB"
-
--- glProgramUniform1ui64NV -----------------------------------------------------
-
-glProgramUniform1ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> m ()
-glProgramUniform1ui64NV v1 v2 v3 = liftIO $ dyn642 ptr_glProgramUniform1ui64NV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1ui64NV #-}
-ptr_glProgramUniform1ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
-ptr_glProgramUniform1ui64NV = unsafePerformIO $ getCommand "glProgramUniform1ui64NV"
-
--- glProgramUniform1ui64vARB ---------------------------------------------------
-
-glProgramUniform1ui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniform1ui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniform1ui64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1ui64vARB #-}
-ptr_glProgramUniform1ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniform1ui64vARB = unsafePerformIO $ getCommand "glProgramUniform1ui64vARB"
-
--- glProgramUniform1ui64vNV ----------------------------------------------------
-
-glProgramUniform1ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniform1ui64vNV v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramUniform1ui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1ui64vNV #-}
-ptr_glProgramUniform1ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniform1ui64vNV = unsafePerformIO $ getCommand "glProgramUniform1ui64vNV"
-
--- glProgramUniform1uiEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1ui'.
-glProgramUniform1uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> m ()
-glProgramUniform1uiEXT v1 v2 v3 = liftIO $ dyn640 ptr_glProgramUniform1uiEXT v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniform1uiEXT #-}
-ptr_glProgramUniform1uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
-ptr_glProgramUniform1uiEXT = unsafePerformIO $ getCommand "glProgramUniform1uiEXT"
-
--- glProgramUniform1uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1uiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform1uiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform1uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1uiv #-}
-ptr_glProgramUniform1uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform1uiv = unsafePerformIO $ getCommand "glProgramUniform1uiv"
-
--- glProgramUniform1uivEXT -----------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform1uiv'.
-glProgramUniform1uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform1uivEXT v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform1uivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1uivEXT #-}
-ptr_glProgramUniform1uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform1uivEXT = unsafePerformIO $ getCommand "glProgramUniform1uivEXT"
-
--- glProgramUniform2d ----------------------------------------------------------
-
-glProgramUniform2d
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @v0@.
-  -> GLdouble -- ^ @v1@.
-  -> m ()
-glProgramUniform2d v1 v2 v3 v4 = liftIO $ dyn644 ptr_glProgramUniform2d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2d #-}
-ptr_glProgramUniform2d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform2d = unsafePerformIO $ getCommand "glProgramUniform2d"
-
--- glProgramUniform2dEXT -------------------------------------------------------
-
-glProgramUniform2dEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glProgramUniform2dEXT v1 v2 v3 v4 = liftIO $ dyn644 ptr_glProgramUniform2dEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2dEXT #-}
-ptr_glProgramUniform2dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform2dEXT = unsafePerformIO $ getCommand "glProgramUniform2dEXT"
-
--- glProgramUniform2dv ---------------------------------------------------------
-
-glProgramUniform2dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform2dv v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform2dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2dv #-}
-ptr_glProgramUniform2dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform2dv = unsafePerformIO $ getCommand "glProgramUniform2dv"
-
--- glProgramUniform2dvEXT ------------------------------------------------------
-
-glProgramUniform2dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform2dvEXT v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform2dvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2dvEXT #-}
-ptr_glProgramUniform2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform2dvEXT = unsafePerformIO $ getCommand "glProgramUniform2dvEXT"
-
--- glProgramUniform2f ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2f
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> m ()
-glProgramUniform2f v1 v2 v3 v4 = liftIO $ dyn645 ptr_glProgramUniform2f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2f #-}
-ptr_glProgramUniform2f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform2f = unsafePerformIO $ getCommand "glProgramUniform2f"
-
--- glProgramUniform2fEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2f'.
-glProgramUniform2fEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> m ()
-glProgramUniform2fEXT v1 v2 v3 v4 = liftIO $ dyn645 ptr_glProgramUniform2fEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2fEXT #-}
-ptr_glProgramUniform2fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform2fEXT = unsafePerformIO $ getCommand "glProgramUniform2fEXT"
-
--- glProgramUniform2fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform2fv v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform2fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2fv #-}
-ptr_glProgramUniform2fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform2fv = unsafePerformIO $ getCommand "glProgramUniform2fv"
-
--- glProgramUniform2fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2fv'.
-glProgramUniform2fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform2fvEXT v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform2fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2fvEXT #-}
-ptr_glProgramUniform2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform2fvEXT = unsafePerformIO $ getCommand "glProgramUniform2fvEXT"
-
--- glProgramUniform2i ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2i
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> m ()
-glProgramUniform2i v1 v2 v3 v4 = liftIO $ dyn646 ptr_glProgramUniform2i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2i #-}
-ptr_glProgramUniform2i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform2i = unsafePerformIO $ getCommand "glProgramUniform2i"
-
--- glProgramUniform2i64ARB -----------------------------------------------------
-
-glProgramUniform2i64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> m ()
-glProgramUniform2i64ARB v1 v2 v3 v4 = liftIO $ dyn647 ptr_glProgramUniform2i64ARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2i64ARB #-}
-ptr_glProgramUniform2i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> IO ())
-ptr_glProgramUniform2i64ARB = unsafePerformIO $ getCommand "glProgramUniform2i64ARB"
-
--- glProgramUniform2i64NV ------------------------------------------------------
-
-glProgramUniform2i64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> m ()
-glProgramUniform2i64NV v1 v2 v3 v4 = liftIO $ dyn648 ptr_glProgramUniform2i64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2i64NV #-}
-ptr_glProgramUniform2i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glProgramUniform2i64NV = unsafePerformIO $ getCommand "glProgramUniform2i64NV"
-
--- glProgramUniform2i64vARB ----------------------------------------------------
-
-glProgramUniform2i64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*2@ elements of type @GLint64@.
-  -> m ()
-glProgramUniform2i64vARB v1 v2 v3 v4 = liftIO $ dyn460 ptr_glProgramUniform2i64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2i64vARB #-}
-ptr_glProgramUniform2i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glProgramUniform2i64vARB = unsafePerformIO $ getCommand "glProgramUniform2i64vARB"
-
--- glProgramUniform2i64vNV -----------------------------------------------------
-
-glProgramUniform2i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
-  -> m ()
-glProgramUniform2i64vNV v1 v2 v3 v4 = liftIO $ dyn639 ptr_glProgramUniform2i64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2i64vNV #-}
-ptr_glProgramUniform2i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glProgramUniform2i64vNV = unsafePerformIO $ getCommand "glProgramUniform2i64vNV"
-
--- glProgramUniform2iEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2i'.
-glProgramUniform2iEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> m ()
-glProgramUniform2iEXT v1 v2 v3 v4 = liftIO $ dyn646 ptr_glProgramUniform2iEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2iEXT #-}
-ptr_glProgramUniform2iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform2iEXT = unsafePerformIO $ getCommand "glProgramUniform2iEXT"
-
--- glProgramUniform2iv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2iv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
-  -> m ()
-glProgramUniform2iv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform2iv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2iv #-}
-ptr_glProgramUniform2iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform2iv = unsafePerformIO $ getCommand "glProgramUniform2iv"
-
--- glProgramUniform2ivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2iv'.
-glProgramUniform2ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
-  -> m ()
-glProgramUniform2ivEXT v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform2ivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ivEXT #-}
-ptr_glProgramUniform2ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform2ivEXT = unsafePerformIO $ getCommand "glProgramUniform2ivEXT"
-
--- glProgramUniform2ui ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2ui
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> m ()
-glProgramUniform2ui v1 v2 v3 v4 = liftIO $ dyn649 ptr_glProgramUniform2ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ui #-}
-ptr_glProgramUniform2ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform2ui = unsafePerformIO $ getCommand "glProgramUniform2ui"
-
--- glProgramUniform2ui64ARB ----------------------------------------------------
-
-glProgramUniform2ui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> m ()
-glProgramUniform2ui64ARB v1 v2 v3 v4 = liftIO $ dyn650 ptr_glProgramUniform2ui64ARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ui64ARB #-}
-ptr_glProgramUniform2ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ())
-ptr_glProgramUniform2ui64ARB = unsafePerformIO $ getCommand "glProgramUniform2ui64ARB"
-
--- glProgramUniform2ui64NV -----------------------------------------------------
-
-glProgramUniform2ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> m ()
-glProgramUniform2ui64NV v1 v2 v3 v4 = liftIO $ dyn651 ptr_glProgramUniform2ui64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ui64NV #-}
-ptr_glProgramUniform2ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glProgramUniform2ui64NV = unsafePerformIO $ getCommand "glProgramUniform2ui64NV"
-
--- glProgramUniform2ui64vARB ---------------------------------------------------
-
-glProgramUniform2ui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*2@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniform2ui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniform2ui64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ui64vARB #-}
-ptr_glProgramUniform2ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniform2ui64vARB = unsafePerformIO $ getCommand "glProgramUniform2ui64vARB"
-
--- glProgramUniform2ui64vNV ----------------------------------------------------
-
-glProgramUniform2ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniform2ui64vNV v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramUniform2ui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2ui64vNV #-}
-ptr_glProgramUniform2ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniform2ui64vNV = unsafePerformIO $ getCommand "glProgramUniform2ui64vNV"
-
--- glProgramUniform2uiEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2ui'.
-glProgramUniform2uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> m ()
-glProgramUniform2uiEXT v1 v2 v3 v4 = liftIO $ dyn649 ptr_glProgramUniform2uiEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2uiEXT #-}
-ptr_glProgramUniform2uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform2uiEXT = unsafePerformIO $ getCommand "glProgramUniform2uiEXT"
-
--- glProgramUniform2uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform2uiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform2uiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform2uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2uiv #-}
-ptr_glProgramUniform2uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform2uiv = unsafePerformIO $ getCommand "glProgramUniform2uiv"
-
--- glProgramUniform2uivEXT -----------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform2uiv'.
-glProgramUniform2uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform2uivEXT v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform2uivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform2uivEXT #-}
-ptr_glProgramUniform2uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform2uivEXT = unsafePerformIO $ getCommand "glProgramUniform2uivEXT"
-
--- glProgramUniform3d ----------------------------------------------------------
-
-glProgramUniform3d
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @v0@.
-  -> GLdouble -- ^ @v1@.
-  -> GLdouble -- ^ @v2@.
-  -> m ()
-glProgramUniform3d v1 v2 v3 v4 v5 = liftIO $ dyn652 ptr_glProgramUniform3d v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3d #-}
-ptr_glProgramUniform3d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform3d = unsafePerformIO $ getCommand "glProgramUniform3d"
-
--- glProgramUniform3dEXT -------------------------------------------------------
-
-glProgramUniform3dEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glProgramUniform3dEXT v1 v2 v3 v4 v5 = liftIO $ dyn652 ptr_glProgramUniform3dEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3dEXT #-}
-ptr_glProgramUniform3dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform3dEXT = unsafePerformIO $ getCommand "glProgramUniform3dEXT"
-
--- glProgramUniform3dv ---------------------------------------------------------
-
-glProgramUniform3dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform3dv v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform3dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3dv #-}
-ptr_glProgramUniform3dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform3dv = unsafePerformIO $ getCommand "glProgramUniform3dv"
-
--- glProgramUniform3dvEXT ------------------------------------------------------
-
-glProgramUniform3dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform3dvEXT v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform3dvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3dvEXT #-}
-ptr_glProgramUniform3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform3dvEXT = unsafePerformIO $ getCommand "glProgramUniform3dvEXT"
-
--- glProgramUniform3f ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3f
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> m ()
-glProgramUniform3f v1 v2 v3 v4 v5 = liftIO $ dyn653 ptr_glProgramUniform3f v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3f #-}
-ptr_glProgramUniform3f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform3f = unsafePerformIO $ getCommand "glProgramUniform3f"
-
--- glProgramUniform3fEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3f'.
-glProgramUniform3fEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> m ()
-glProgramUniform3fEXT v1 v2 v3 v4 v5 = liftIO $ dyn653 ptr_glProgramUniform3fEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3fEXT #-}
-ptr_glProgramUniform3fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform3fEXT = unsafePerformIO $ getCommand "glProgramUniform3fEXT"
-
--- glProgramUniform3fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform3fv v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform3fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3fv #-}
-ptr_glProgramUniform3fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform3fv = unsafePerformIO $ getCommand "glProgramUniform3fv"
-
--- glProgramUniform3fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3fv'.
-glProgramUniform3fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform3fvEXT v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform3fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3fvEXT #-}
-ptr_glProgramUniform3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform3fvEXT = unsafePerformIO $ getCommand "glProgramUniform3fvEXT"
-
--- glProgramUniform3i ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3i
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glProgramUniform3i v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glProgramUniform3i v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3i #-}
-ptr_glProgramUniform3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform3i = unsafePerformIO $ getCommand "glProgramUniform3i"
-
--- glProgramUniform3i64ARB -----------------------------------------------------
-
-glProgramUniform3i64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> GLint64 -- ^ @z@.
-  -> m ()
-glProgramUniform3i64ARB v1 v2 v3 v4 v5 = liftIO $ dyn655 ptr_glProgramUniform3i64ARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3i64ARB #-}
-ptr_glProgramUniform3i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
-ptr_glProgramUniform3i64ARB = unsafePerformIO $ getCommand "glProgramUniform3i64ARB"
+  glPointParameteri,
+  glPointParameteriNV,
+  glPointParameteriv,
+  glPointParameterivNV,
+  glPointParameterx,
+  glPointParameterxOES,
+  glPointParameterxv,
+  glPointParameterxvOES,
+  glPointSize,
+  glPointSizePointerOES,
+  glPointSizex,
+  glPointSizexOES,
+  glPollAsyncSGIX,
+  glPollInstrumentsSGIX,
+  glPolygonMode,
+  glPolygonModeNV,
+  glPolygonOffset,
+  glPolygonOffsetClampEXT,
+  glPolygonOffsetEXT,
+  glPolygonOffsetx,
+  glPolygonOffsetxOES,
+  glPolygonStipple,
+  glPopAttrib,
+  glPopClientAttrib,
+  glPopDebugGroup,
+  glPopDebugGroupKHR,
+  glPopGroupMarkerEXT,
+  glPopMatrix,
+  glPopName,
+  glPresentFrameDualFillNV,
+  glPresentFrameKeyedNV,
+  glPrimitiveBoundingBox,
+  glPrimitiveBoundingBoxARB,
+  glPrimitiveBoundingBoxEXT,
+  glPrimitiveBoundingBoxOES,
+  glPrimitiveRestartIndex,
+  glPrimitiveRestartIndexNV,
+  glPrimitiveRestartNV,
+  glPrioritizeTextures,
+  glPrioritizeTexturesEXT,
+  glPrioritizeTexturesxOES,
+  glProgramBinary,
+  glProgramBinaryOES,
+  glProgramBufferParametersIivNV,
+  glProgramBufferParametersIuivNV,
+  glProgramBufferParametersfvNV,
+  glProgramEnvParameter4dARB,
+  glProgramEnvParameter4dvARB,
+  glProgramEnvParameter4fARB,
+  glProgramEnvParameter4fvARB,
+  glProgramEnvParameterI4iNV,
+  glProgramEnvParameterI4ivNV,
+  glProgramEnvParameterI4uiNV,
+  glProgramEnvParameterI4uivNV,
+  glProgramEnvParameters4fvEXT,
+  glProgramEnvParametersI4ivNV,
+  glProgramEnvParametersI4uivNV,
+  glProgramLocalParameter4dARB,
+  glProgramLocalParameter4dvARB,
+  glProgramLocalParameter4fARB,
+  glProgramLocalParameter4fvARB,
+  glProgramLocalParameterI4iNV,
+  glProgramLocalParameterI4ivNV,
+  glProgramLocalParameterI4uiNV,
+  glProgramLocalParameterI4uivNV,
+  glProgramLocalParameters4fvEXT,
+  glProgramLocalParametersI4ivNV,
+  glProgramLocalParametersI4uivNV,
+  glProgramNamedParameter4dNV,
+  glProgramNamedParameter4dvNV,
+  glProgramNamedParameter4fNV,
+  glProgramNamedParameter4fvNV,
+  glProgramParameter4dNV,
+  glProgramParameter4dvNV,
+  glProgramParameter4fNV,
+  glProgramParameter4fvNV,
+  glProgramParameteri,
+  glProgramParameteriARB,
+  glProgramParameteriEXT,
+  glProgramParameters4dvNV,
+  glProgramParameters4fvNV,
+  glProgramPathFragmentInputGenNV,
+  glProgramStringARB,
+  glProgramSubroutineParametersuivNV,
+  glProgramUniform1d,
+  glProgramUniform1dEXT,
+  glProgramUniform1dv,
+  glProgramUniform1dvEXT,
+  glProgramUniform1f,
+  glProgramUniform1fEXT,
+  glProgramUniform1fv,
+  glProgramUniform1fvEXT,
+  glProgramUniform1i,
+  glProgramUniform1i64ARB,
+  glProgramUniform1i64NV,
+  glProgramUniform1i64vARB,
+  glProgramUniform1i64vNV,
+  glProgramUniform1iEXT,
+  glProgramUniform1iv,
+  glProgramUniform1ivEXT
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glPointParameteri -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
+glPointParameteri
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glPointParameteri v1 v2 = liftIO $ dyn56 ptr_glPointParameteri v1 v2
+
+{-# NOINLINE ptr_glPointParameteri #-}
+ptr_glPointParameteri :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPointParameteri = unsafePerformIO $ getCommand "glPointParameteri"
+
+-- glPointParameteriNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameteri'.
+glPointParameteriNV
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glPointParameteriNV v1 v2 = liftIO $ dyn56 ptr_glPointParameteriNV v1 v2
+
+{-# NOINLINE ptr_glPointParameteriNV #-}
+ptr_glPointParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glPointParameteriNV = unsafePerformIO $ getCommand "glPointParameteriNV"
+
+-- glPointParameteriv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
+glPointParameteriv
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glPointParameteriv v1 v2 = liftIO $ dyn139 ptr_glPointParameteriv v1 v2
+
+{-# NOINLINE ptr_glPointParameteriv #-}
+ptr_glPointParameteriv :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glPointParameteriv = unsafePerformIO $ getCommand "glPointParameteriv"
+
+-- glPointParameterivNV --------------------------------------------------------
+
+-- | This command is an alias for 'glPointParameteriv'.
+glPointParameterivNV
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @PointParameterNameARB@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glPointParameterivNV v1 v2 = liftIO $ dyn139 ptr_glPointParameterivNV v1 v2
+
+{-# NOINLINE ptr_glPointParameterivNV #-}
+ptr_glPointParameterivNV :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glPointParameterivNV = unsafePerformIO $ getCommand "glPointParameterivNV"
+
+-- glPointParameterx -----------------------------------------------------------
+
+glPointParameterx
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glPointParameterx v1 v2 = liftIO $ dyn1 ptr_glPointParameterx v1 v2
+
+{-# NOINLINE ptr_glPointParameterx #-}
+ptr_glPointParameterx :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glPointParameterx = unsafePerformIO $ getCommand "glPointParameterx"
+
+-- glPointParameterxOES --------------------------------------------------------
+
+glPointParameterxOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glPointParameterxOES v1 v2 = liftIO $ dyn1 ptr_glPointParameterxOES v1 v2
+
+{-# NOINLINE ptr_glPointParameterxOES #-}
+ptr_glPointParameterxOES :: FunPtr (GLenum -> GLfixed -> IO ())
+ptr_glPointParameterxOES = unsafePerformIO $ getCommand "glPointParameterxOES"
+
+-- glPointParameterxv ----------------------------------------------------------
+
+glPointParameterxv
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glPointParameterxv v1 v2 = liftIO $ dyn98 ptr_glPointParameterxv v1 v2
+
+{-# NOINLINE ptr_glPointParameterxv #-}
+ptr_glPointParameterxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glPointParameterxv = unsafePerformIO $ getCommand "glPointParameterxv"
+
+-- glPointParameterxvOES -------------------------------------------------------
+
+glPointParameterxvOES
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glPointParameterxvOES v1 v2 = liftIO $ dyn98 ptr_glPointParameterxvOES v1 v2
+
+{-# NOINLINE ptr_glPointParameterxvOES #-}
+ptr_glPointParameterxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
+ptr_glPointParameterxvOES = unsafePerformIO $ getCommand "glPointParameterxvOES"
+
+-- glPointSize -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointSize.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointSize.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointSize.xhtml OpenGL 4.x>.
+glPointSize
+  :: MonadIO m
+  => GLfloat -- ^ @size@ of type @CheckedFloat32@.
+  -> m ()
+glPointSize v1 = liftIO $ dyn82 ptr_glPointSize v1
+
+{-# NOINLINE ptr_glPointSize #-}
+ptr_glPointSize :: FunPtr (GLfloat -> IO ())
+ptr_glPointSize = unsafePerformIO $ getCommand "glPointSize"
+
+-- glPointSizePointerOES -------------------------------------------------------
+
+glPointSizePointerOES
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glPointSizePointerOES v1 v2 v3 = liftIO $ dyn47 ptr_glPointSizePointerOES v1 v2 v3
+
+{-# NOINLINE ptr_glPointSizePointerOES #-}
+ptr_glPointSizePointerOES :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glPointSizePointerOES = unsafePerformIO $ getCommand "glPointSizePointerOES"
+
+-- glPointSizex ----------------------------------------------------------------
+
+glPointSizex
+  :: MonadIO m
+  => GLfixed -- ^ @size@.
+  -> m ()
+glPointSizex v1 = liftIO $ dyn84 ptr_glPointSizex v1
+
+{-# NOINLINE ptr_glPointSizex #-}
+ptr_glPointSizex :: FunPtr (GLfixed -> IO ())
+ptr_glPointSizex = unsafePerformIO $ getCommand "glPointSizex"
+
+-- glPointSizexOES -------------------------------------------------------------
+
+glPointSizexOES
+  :: MonadIO m
+  => GLfixed -- ^ @size@.
+  -> m ()
+glPointSizexOES v1 = liftIO $ dyn84 ptr_glPointSizexOES v1
+
+{-# NOINLINE ptr_glPointSizexOES #-}
+ptr_glPointSizexOES :: FunPtr (GLfixed -> IO ())
+ptr_glPointSizexOES = unsafePerformIO $ getCommand "glPointSizexOES"
+
+-- glPollAsyncSGIX -------------------------------------------------------------
+
+glPollAsyncSGIX
+  :: MonadIO m
+  => Ptr GLuint -- ^ @markerp@ pointing to @1@ element of type @GLuint@.
+  -> m GLint
+glPollAsyncSGIX v1 = liftIO $ dyn281 ptr_glPollAsyncSGIX v1
+
+{-# NOINLINE ptr_glPollAsyncSGIX #-}
+ptr_glPollAsyncSGIX :: FunPtr (Ptr GLuint -> IO GLint)
+ptr_glPollAsyncSGIX = unsafePerformIO $ getCommand "glPollAsyncSGIX"
+
+-- glPollInstrumentsSGIX -------------------------------------------------------
+
+glPollInstrumentsSGIX
+  :: MonadIO m
+  => Ptr GLint -- ^ @marker_p@ pointing to @1@ element of type @GLint@.
+  -> m GLint
+glPollInstrumentsSGIX v1 = liftIO $ dyn635 ptr_glPollInstrumentsSGIX v1
+
+{-# NOINLINE ptr_glPollInstrumentsSGIX #-}
+ptr_glPollInstrumentsSGIX :: FunPtr (Ptr GLint -> IO GLint)
+ptr_glPollInstrumentsSGIX = unsafePerformIO $ getCommand "glPollInstrumentsSGIX"
+
+-- glPolygonMode ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonMode.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonMode.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonMode.xhtml OpenGL 4.x>.
+glPolygonMode
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @mode@ of type [PolygonMode](Graphics-GL-Groups.html#PolygonMode).
+  -> m ()
+glPolygonMode v1 v2 = liftIO $ dyn52 ptr_glPolygonMode v1 v2
+
+{-# NOINLINE ptr_glPolygonMode #-}
+ptr_glPolygonMode :: FunPtr (GLenum -> GLenum -> IO ())
+ptr_glPolygonMode = unsafePerformIO $ getCommand "glPolygonMode"
+
+-- glPolygonModeNV -------------------------------------------------------------
+
+-- | This command is an alias for 'glPolygonMode'.
+glPolygonModeNV
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @mode@ of type [PolygonMode](Graphics-GL-Groups.html#PolygonMode).
+  -> m ()
+glPolygonModeNV v1 v2 = liftIO $ dyn52 ptr_glPolygonModeNV v1 v2
+
+{-# NOINLINE ptr_glPolygonModeNV #-}
+ptr_glPolygonModeNV :: FunPtr (GLenum -> GLenum -> IO ())
+ptr_glPolygonModeNV = unsafePerformIO $ getCommand "glPolygonModeNV"
+
+-- glPolygonOffset -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonOffset.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonOffset.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonOffset.xhtml OpenGL 4.x>.
+glPolygonOffset
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> GLfloat -- ^ @units@.
+  -> m ()
+glPolygonOffset v1 v2 = liftIO $ dyn225 ptr_glPolygonOffset v1 v2
+
+{-# NOINLINE ptr_glPolygonOffset #-}
+ptr_glPolygonOffset :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glPolygonOffset = unsafePerformIO $ getCommand "glPolygonOffset"
+
+-- glPolygonOffsetClampEXT -----------------------------------------------------
+
+glPolygonOffsetClampEXT
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> GLfloat -- ^ @units@.
+  -> GLfloat -- ^ @clamp@.
+  -> m ()
+glPolygonOffsetClampEXT v1 v2 v3 = liftIO $ dyn41 ptr_glPolygonOffsetClampEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPolygonOffsetClampEXT #-}
+ptr_glPolygonOffsetClampEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glPolygonOffsetClampEXT = unsafePerformIO $ getCommand "glPolygonOffsetClampEXT"
+
+-- glPolygonOffsetEXT ----------------------------------------------------------
+
+glPolygonOffsetEXT
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> GLfloat -- ^ @bias@.
+  -> m ()
+glPolygonOffsetEXT v1 v2 = liftIO $ dyn225 ptr_glPolygonOffsetEXT v1 v2
+
+{-# NOINLINE ptr_glPolygonOffsetEXT #-}
+ptr_glPolygonOffsetEXT :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glPolygonOffsetEXT = unsafePerformIO $ getCommand "glPolygonOffsetEXT"
+
+-- glPolygonOffsetx ------------------------------------------------------------
+
+glPolygonOffsetx
+  :: MonadIO m
+  => GLfixed -- ^ @factor@.
+  -> GLfixed -- ^ @units@.
+  -> m ()
+glPolygonOffsetx v1 v2 = liftIO $ dyn227 ptr_glPolygonOffsetx v1 v2
+
+{-# NOINLINE ptr_glPolygonOffsetx #-}
+ptr_glPolygonOffsetx :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glPolygonOffsetx = unsafePerformIO $ getCommand "glPolygonOffsetx"
+
+-- glPolygonOffsetxOES ---------------------------------------------------------
+
+glPolygonOffsetxOES
+  :: MonadIO m
+  => GLfixed -- ^ @factor@.
+  -> GLfixed -- ^ @units@.
+  -> m ()
+glPolygonOffsetxOES v1 v2 = liftIO $ dyn227 ptr_glPolygonOffsetxOES v1 v2
+
+{-# NOINLINE ptr_glPolygonOffsetxOES #-}
+ptr_glPolygonOffsetxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glPolygonOffsetxOES = unsafePerformIO $ getCommand "glPolygonOffsetxOES"
+
+-- glPolygonStipple ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonStipple.xml OpenGL 2.x>.
+glPolygonStipple
+  :: MonadIO m
+  => Ptr GLubyte -- ^ @mask@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
+  -> m ()
+glPolygonStipple v1 = liftIO $ dyn104 ptr_glPolygonStipple v1
+
+{-# NOINLINE ptr_glPolygonStipple #-}
+ptr_glPolygonStipple :: FunPtr (Ptr GLubyte -> IO ())
+ptr_glPolygonStipple = unsafePerformIO $ getCommand "glPolygonStipple"
+
+-- glPopAttrib -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>.
+glPopAttrib
+  :: MonadIO m
+  => m ()
+glPopAttrib = liftIO $ dyn11 ptr_glPopAttrib
+
+{-# NOINLINE ptr_glPopAttrib #-}
+ptr_glPopAttrib :: FunPtr (IO ())
+ptr_glPopAttrib = unsafePerformIO $ getCommand "glPopAttrib"
+
+-- glPopClientAttrib -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>.
+glPopClientAttrib
+  :: MonadIO m
+  => m ()
+glPopClientAttrib = liftIO $ dyn11 ptr_glPopClientAttrib
+
+{-# NOINLINE ptr_glPopClientAttrib #-}
+ptr_glPopClientAttrib :: FunPtr (IO ())
+ptr_glPopClientAttrib = unsafePerformIO $ getCommand "glPopClientAttrib"
+
+-- glPopDebugGroup -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPopDebugGroup.xhtml OpenGL 4.x>.
+glPopDebugGroup
+  :: MonadIO m
+  => m ()
+glPopDebugGroup = liftIO $ dyn11 ptr_glPopDebugGroup
+
+{-# NOINLINE ptr_glPopDebugGroup #-}
+ptr_glPopDebugGroup :: FunPtr (IO ())
+ptr_glPopDebugGroup = unsafePerformIO $ getCommand "glPopDebugGroup"
+
+-- glPopDebugGroupKHR ----------------------------------------------------------
+
+-- | This command is an alias for 'glPopDebugGroup'.
+glPopDebugGroupKHR
+  :: MonadIO m
+  => m ()
+glPopDebugGroupKHR = liftIO $ dyn11 ptr_glPopDebugGroupKHR
+
+{-# NOINLINE ptr_glPopDebugGroupKHR #-}
+ptr_glPopDebugGroupKHR :: FunPtr (IO ())
+ptr_glPopDebugGroupKHR = unsafePerformIO $ getCommand "glPopDebugGroupKHR"
+
+-- glPopGroupMarkerEXT ---------------------------------------------------------
+
+glPopGroupMarkerEXT
+  :: MonadIO m
+  => m ()
+glPopGroupMarkerEXT = liftIO $ dyn11 ptr_glPopGroupMarkerEXT
+
+{-# NOINLINE ptr_glPopGroupMarkerEXT #-}
+ptr_glPopGroupMarkerEXT :: FunPtr (IO ())
+ptr_glPopGroupMarkerEXT = unsafePerformIO $ getCommand "glPopGroupMarkerEXT"
+
+-- glPopMatrix -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>.
+glPopMatrix
+  :: MonadIO m
+  => m ()
+glPopMatrix = liftIO $ dyn11 ptr_glPopMatrix
+
+{-# NOINLINE ptr_glPopMatrix #-}
+ptr_glPopMatrix :: FunPtr (IO ())
+ptr_glPopMatrix = unsafePerformIO $ getCommand "glPopMatrix"
+
+-- glPopName -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>.
+glPopName
+  :: MonadIO m
+  => m ()
+glPopName = liftIO $ dyn11 ptr_glPopName
+
+{-# NOINLINE ptr_glPopName #-}
+ptr_glPopName :: FunPtr (IO ())
+ptr_glPopName = unsafePerformIO $ getCommand "glPopName"
+
+-- glPresentFrameDualFillNV ----------------------------------------------------
+
+glPresentFrameDualFillNV
+  :: MonadIO m
+  => GLuint -- ^ @video_slot@.
+  -> GLuint64EXT -- ^ @minPresentTime@.
+  -> GLuint -- ^ @beginPresentTimeId@.
+  -> GLuint -- ^ @presentDurationId@.
+  -> GLenum -- ^ @type@.
+  -> GLenum -- ^ @target0@.
+  -> GLuint -- ^ @fill0@.
+  -> GLenum -- ^ @target1@.
+  -> GLuint -- ^ @fill1@.
+  -> GLenum -- ^ @target2@.
+  -> GLuint -- ^ @fill2@.
+  -> GLenum -- ^ @target3@.
+  -> GLuint -- ^ @fill3@.
+  -> m ()
+glPresentFrameDualFillNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn636 ptr_glPresentFrameDualFillNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
+
+{-# NOINLINE ptr_glPresentFrameDualFillNV #-}
+ptr_glPresentFrameDualFillNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
+ptr_glPresentFrameDualFillNV = unsafePerformIO $ getCommand "glPresentFrameDualFillNV"
+
+-- glPresentFrameKeyedNV -------------------------------------------------------
+
+glPresentFrameKeyedNV
+  :: MonadIO m
+  => GLuint -- ^ @video_slot@.
+  -> GLuint64EXT -- ^ @minPresentTime@.
+  -> GLuint -- ^ @beginPresentTimeId@.
+  -> GLuint -- ^ @presentDurationId@.
+  -> GLenum -- ^ @type@.
+  -> GLenum -- ^ @target0@.
+  -> GLuint -- ^ @fill0@.
+  -> GLuint -- ^ @key0@.
+  -> GLenum -- ^ @target1@.
+  -> GLuint -- ^ @fill1@.
+  -> GLuint -- ^ @key1@.
+  -> m ()
+glPresentFrameKeyedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn637 ptr_glPresentFrameKeyedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glPresentFrameKeyedNV #-}
+ptr_glPresentFrameKeyedNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
+ptr_glPresentFrameKeyedNV = unsafePerformIO $ getCommand "glPresentFrameKeyedNV"
+
+-- glPrimitiveBoundingBox ------------------------------------------------------
+
+glPrimitiveBoundingBox
+  :: MonadIO m
+  => GLfloat -- ^ @minX@.
+  -> GLfloat -- ^ @minY@.
+  -> GLfloat -- ^ @minZ@.
+  -> GLfloat -- ^ @minW@.
+  -> GLfloat -- ^ @maxX@.
+  -> GLfloat -- ^ @maxY@.
+  -> GLfloat -- ^ @maxZ@.
+  -> GLfloat -- ^ @maxW@.
+  -> m ()
+glPrimitiveBoundingBox v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glPrimitiveBoundingBox v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPrimitiveBoundingBox #-}
+ptr_glPrimitiveBoundingBox :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glPrimitiveBoundingBox = unsafePerformIO $ getCommand "glPrimitiveBoundingBox"
+
+-- glPrimitiveBoundingBoxARB ---------------------------------------------------
+
+-- | This command is an alias for 'glPrimitiveBoundingBox'.
+glPrimitiveBoundingBoxARB
+  :: MonadIO m
+  => GLfloat -- ^ @minX@.
+  -> GLfloat -- ^ @minY@.
+  -> GLfloat -- ^ @minZ@.
+  -> GLfloat -- ^ @minW@.
+  -> GLfloat -- ^ @maxX@.
+  -> GLfloat -- ^ @maxY@.
+  -> GLfloat -- ^ @maxZ@.
+  -> GLfloat -- ^ @maxW@.
+  -> m ()
+glPrimitiveBoundingBoxARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glPrimitiveBoundingBoxARB v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPrimitiveBoundingBoxARB #-}
+ptr_glPrimitiveBoundingBoxARB :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glPrimitiveBoundingBoxARB = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxARB"
+
+-- glPrimitiveBoundingBoxEXT ---------------------------------------------------
+
+-- | This command is an alias for 'glPrimitiveBoundingBox'.
+glPrimitiveBoundingBoxEXT
+  :: MonadIO m
+  => GLfloat -- ^ @minX@.
+  -> GLfloat -- ^ @minY@.
+  -> GLfloat -- ^ @minZ@.
+  -> GLfloat -- ^ @minW@.
+  -> GLfloat -- ^ @maxX@.
+  -> GLfloat -- ^ @maxY@.
+  -> GLfloat -- ^ @maxZ@.
+  -> GLfloat -- ^ @maxW@.
+  -> m ()
+glPrimitiveBoundingBoxEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glPrimitiveBoundingBoxEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPrimitiveBoundingBoxEXT #-}
+ptr_glPrimitiveBoundingBoxEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glPrimitiveBoundingBoxEXT = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxEXT"
+
+-- glPrimitiveBoundingBoxOES ---------------------------------------------------
+
+-- | This command is an alias for 'glPrimitiveBoundingBox'.
+glPrimitiveBoundingBoxOES
+  :: MonadIO m
+  => GLfloat -- ^ @minX@.
+  -> GLfloat -- ^ @minY@.
+  -> GLfloat -- ^ @minZ@.
+  -> GLfloat -- ^ @minW@.
+  -> GLfloat -- ^ @maxX@.
+  -> GLfloat -- ^ @maxY@.
+  -> GLfloat -- ^ @maxZ@.
+  -> GLfloat -- ^ @maxW@.
+  -> m ()
+glPrimitiveBoundingBoxOES v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glPrimitiveBoundingBoxOES v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPrimitiveBoundingBoxOES #-}
+ptr_glPrimitiveBoundingBoxOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glPrimitiveBoundingBoxOES = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxOES"
+
+-- glPrimitiveRestartIndex -----------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glPrimitiveRestartIndex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPrimitiveRestartIndex.xhtml OpenGL 4.x>.
+glPrimitiveRestartIndex
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> m ()
+glPrimitiveRestartIndex v1 = liftIO $ dyn3 ptr_glPrimitiveRestartIndex v1
+
+{-# NOINLINE ptr_glPrimitiveRestartIndex #-}
+ptr_glPrimitiveRestartIndex :: FunPtr (GLuint -> IO ())
+ptr_glPrimitiveRestartIndex = unsafePerformIO $ getCommand "glPrimitiveRestartIndex"
+
+-- glPrimitiveRestartIndexNV ---------------------------------------------------
+
+glPrimitiveRestartIndexNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> m ()
+glPrimitiveRestartIndexNV v1 = liftIO $ dyn3 ptr_glPrimitiveRestartIndexNV v1
+
+{-# NOINLINE ptr_glPrimitiveRestartIndexNV #-}
+ptr_glPrimitiveRestartIndexNV :: FunPtr (GLuint -> IO ())
+ptr_glPrimitiveRestartIndexNV = unsafePerformIO $ getCommand "glPrimitiveRestartIndexNV"
+
+-- glPrimitiveRestartNV --------------------------------------------------------
+
+glPrimitiveRestartNV
+  :: MonadIO m
+  => m ()
+glPrimitiveRestartNV = liftIO $ dyn11 ptr_glPrimitiveRestartNV
+
+{-# NOINLINE ptr_glPrimitiveRestartNV #-}
+ptr_glPrimitiveRestartNV :: FunPtr (IO ())
+ptr_glPrimitiveRestartNV = unsafePerformIO $ getCommand "glPrimitiveRestartNV"
+
+-- glPrioritizeTextures --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPrioritizeTextures.xml OpenGL 2.x>.
+glPrioritizeTextures
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
+  -> Ptr GLfloat -- ^ @priorities@ pointing to @n@ elements of type @GLfloat@.
+  -> m ()
+glPrioritizeTextures v1 v2 v3 = liftIO $ dyn639 ptr_glPrioritizeTextures v1 v2 v3
+
+{-# NOINLINE ptr_glPrioritizeTextures #-}
+ptr_glPrioritizeTextures :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
+ptr_glPrioritizeTextures = unsafePerformIO $ getCommand "glPrioritizeTextures"
+
+-- glPrioritizeTexturesEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glPrioritizeTextures'.
+glPrioritizeTexturesEXT
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
+  -> Ptr GLclampf -- ^ @priorities@ pointing to @n@ elements of type @ClampedFloat32@.
+  -> m ()
+glPrioritizeTexturesEXT v1 v2 v3 = liftIO $ dyn640 ptr_glPrioritizeTexturesEXT v1 v2 v3
+
+{-# NOINLINE ptr_glPrioritizeTexturesEXT #-}
+ptr_glPrioritizeTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
+ptr_glPrioritizeTexturesEXT = unsafePerformIO $ getCommand "glPrioritizeTexturesEXT"
+
+-- glPrioritizeTexturesxOES ----------------------------------------------------
+
+glPrioritizeTexturesxOES
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @GLuint@.
+  -> Ptr GLfixed -- ^ @priorities@ pointing to @n@ elements of type @ClampedFixed@.
+  -> m ()
+glPrioritizeTexturesxOES v1 v2 v3 = liftIO $ dyn641 ptr_glPrioritizeTexturesxOES v1 v2 v3
+
+{-# NOINLINE ptr_glPrioritizeTexturesxOES #-}
+ptr_glPrioritizeTexturesxOES :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
+ptr_glPrioritizeTexturesxOES = unsafePerformIO $ getCommand "glPrioritizeTexturesxOES"
+
+-- glProgramBinary -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramBinary.xhtml OpenGL 4.x>.
+glProgramBinary
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @binaryFormat@.
+  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
+  -> GLsizei -- ^ @length@.
+  -> m ()
+glProgramBinary v1 v2 v3 v4 = liftIO $ dyn642 ptr_glProgramBinary v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramBinary #-}
+ptr_glProgramBinary :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
+ptr_glProgramBinary = unsafePerformIO $ getCommand "glProgramBinary"
+
+-- glProgramBinaryOES ----------------------------------------------------------
+
+-- | This command is an alias for 'glProgramBinary'.
+glProgramBinaryOES
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @binaryFormat@.
+  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
+  -> GLint -- ^ @length@.
+  -> m ()
+glProgramBinaryOES v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramBinaryOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramBinaryOES #-}
+ptr_glProgramBinaryOES :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
+ptr_glProgramBinaryOES = unsafePerformIO $ getCommand "glProgramBinaryOES"
+
+-- glProgramBufferParametersIivNV ----------------------------------------------
+
+glProgramBufferParametersIivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @bindingIndex@.
+  -> GLuint -- ^ @wordIndex@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @params@ pointing to @count@ elements of type @GLint@.
+  -> m ()
+glProgramBufferParametersIivNV v1 v2 v3 v4 v5 = liftIO $ dyn644 ptr_glProgramBufferParametersIivNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramBufferParametersIivNV #-}
+ptr_glProgramBufferParametersIivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramBufferParametersIivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIivNV"
+
+-- glProgramBufferParametersIuivNV ---------------------------------------------
+
+glProgramBufferParametersIuivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @bindingIndex@.
+  -> GLuint -- ^ @wordIndex@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glProgramBufferParametersIuivNV v1 v2 v3 v4 v5 = liftIO $ dyn645 ptr_glProgramBufferParametersIuivNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramBufferParametersIuivNV #-}
+ptr_glProgramBufferParametersIuivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramBufferParametersIuivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIuivNV"
+
+-- glProgramBufferParametersfvNV -----------------------------------------------
+
+glProgramBufferParametersfvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @bindingIndex@.
+  -> GLuint -- ^ @wordIndex@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @count@ elements of type @GLfloat@.
+  -> m ()
+glProgramBufferParametersfvNV v1 v2 v3 v4 v5 = liftIO $ dyn646 ptr_glProgramBufferParametersfvNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramBufferParametersfvNV #-}
+ptr_glProgramBufferParametersfvNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramBufferParametersfvNV = unsafePerformIO $ getCommand "glProgramBufferParametersfvNV"
+
+-- glProgramEnvParameter4dARB --------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramEnvParameter4dvARB'.
+glProgramEnvParameter4dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glProgramEnvParameter4dARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn647 ptr_glProgramEnvParameter4dARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramEnvParameter4dARB #-}
+ptr_glProgramEnvParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramEnvParameter4dARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dARB"
+
+-- glProgramEnvParameter4dvARB -------------------------------------------------
+
+glProgramEnvParameter4dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glProgramEnvParameter4dvARB v1 v2 v3 = liftIO $ dyn337 ptr_glProgramEnvParameter4dvARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramEnvParameter4dvARB #-}
+ptr_glProgramEnvParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
+ptr_glProgramEnvParameter4dvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dvARB"
+
+-- glProgramEnvParameter4fARB --------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramEnvParameter4fvARB'.
+glProgramEnvParameter4fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glProgramEnvParameter4fARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn648 ptr_glProgramEnvParameter4fARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramEnvParameter4fARB #-}
+ptr_glProgramEnvParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramEnvParameter4fARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fARB"
+
+-- glProgramEnvParameter4fvARB -------------------------------------------------
+
+glProgramEnvParameter4fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glProgramEnvParameter4fvARB v1 v2 v3 = liftIO $ dyn271 ptr_glProgramEnvParameter4fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramEnvParameter4fvARB #-}
+ptr_glProgramEnvParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glProgramEnvParameter4fvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fvARB"
+
+-- glProgramEnvParameterI4iNV --------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramEnvParameterI4ivNV'.
+glProgramEnvParameterI4iNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glProgramEnvParameterI4iNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn649 ptr_glProgramEnvParameterI4iNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramEnvParameterI4iNV #-}
+ptr_glProgramEnvParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramEnvParameterI4iNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4iNV"
+
+-- glProgramEnvParameterI4ivNV -------------------------------------------------
+
+glProgramEnvParameterI4ivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glProgramEnvParameterI4ivNV v1 v2 v3 = liftIO $ dyn350 ptr_glProgramEnvParameterI4ivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramEnvParameterI4ivNV #-}
+ptr_glProgramEnvParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
+ptr_glProgramEnvParameterI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4ivNV"
+
+-- glProgramEnvParameterI4uiNV -------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramEnvParameterI4uivNV'.
+glProgramEnvParameterI4uiNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn7 ptr_glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramEnvParameterI4uiNV #-}
+ptr_glProgramEnvParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramEnvParameterI4uiNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uiNV"
+
+-- glProgramEnvParameterI4uivNV ------------------------------------------------
+
+glProgramEnvParameterI4uivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glProgramEnvParameterI4uivNV v1 v2 v3 = liftIO $ dyn217 ptr_glProgramEnvParameterI4uivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramEnvParameterI4uivNV #-}
+ptr_glProgramEnvParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glProgramEnvParameterI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uivNV"
+
+-- glProgramEnvParameters4fvEXT ------------------------------------------------
+
+glProgramEnvParameters4fvEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramEnvParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn290 ptr_glProgramEnvParameters4fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramEnvParameters4fvEXT #-}
+ptr_glProgramEnvParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramEnvParameters4fvEXT = unsafePerformIO $ getCommand "glProgramEnvParameters4fvEXT"
+
+-- glProgramEnvParametersI4ivNV ------------------------------------------------
+
+glProgramEnvParametersI4ivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glProgramEnvParametersI4ivNV v1 v2 v3 v4 = liftIO $ dyn650 ptr_glProgramEnvParametersI4ivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramEnvParametersI4ivNV #-}
+ptr_glProgramEnvParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramEnvParametersI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4ivNV"
+
+-- glProgramEnvParametersI4uivNV -----------------------------------------------
+
+glProgramEnvParametersI4uivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glProgramEnvParametersI4uivNV v1 v2 v3 v4 = liftIO $ dyn23 ptr_glProgramEnvParametersI4uivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramEnvParametersI4uivNV #-}
+ptr_glProgramEnvParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramEnvParametersI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4uivNV"
+
+-- glProgramLocalParameter4dARB ------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramLocalParameter4dvARB'.
+glProgramLocalParameter4dARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glProgramLocalParameter4dARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn647 ptr_glProgramLocalParameter4dARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramLocalParameter4dARB #-}
+ptr_glProgramLocalParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramLocalParameter4dARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dARB"
+
+-- glProgramLocalParameter4dvARB -----------------------------------------------
+
+glProgramLocalParameter4dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glProgramLocalParameter4dvARB v1 v2 v3 = liftIO $ dyn337 ptr_glProgramLocalParameter4dvARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramLocalParameter4dvARB #-}
+ptr_glProgramLocalParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
+ptr_glProgramLocalParameter4dvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dvARB"
+
+-- glProgramLocalParameter4fARB ------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramLocalParameter4fvARB'.
+glProgramLocalParameter4fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glProgramLocalParameter4fARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn648 ptr_glProgramLocalParameter4fARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramLocalParameter4fARB #-}
+ptr_glProgramLocalParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramLocalParameter4fARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fARB"
+
+-- glProgramLocalParameter4fvARB -----------------------------------------------
+
+glProgramLocalParameter4fvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glProgramLocalParameter4fvARB v1 v2 v3 = liftIO $ dyn271 ptr_glProgramLocalParameter4fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramLocalParameter4fvARB #-}
+ptr_glProgramLocalParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glProgramLocalParameter4fvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fvARB"
+
+-- glProgramLocalParameterI4iNV ------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramLocalParameterI4ivNV'.
+glProgramLocalParameterI4iNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glProgramLocalParameterI4iNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn649 ptr_glProgramLocalParameterI4iNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramLocalParameterI4iNV #-}
+ptr_glProgramLocalParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramLocalParameterI4iNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4iNV"
+
+-- glProgramLocalParameterI4ivNV -----------------------------------------------
+
+glProgramLocalParameterI4ivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glProgramLocalParameterI4ivNV v1 v2 v3 = liftIO $ dyn350 ptr_glProgramLocalParameterI4ivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramLocalParameterI4ivNV #-}
+ptr_glProgramLocalParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
+ptr_glProgramLocalParameterI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4ivNV"
+
+-- glProgramLocalParameterI4uiNV -----------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramLocalParameterI4uivNV'.
+glProgramLocalParameterI4uiNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glProgramLocalParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn7 ptr_glProgramLocalParameterI4uiNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramLocalParameterI4uiNV #-}
+ptr_glProgramLocalParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramLocalParameterI4uiNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uiNV"
+
+-- glProgramLocalParameterI4uivNV ----------------------------------------------
+
+glProgramLocalParameterI4uivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glProgramLocalParameterI4uivNV v1 v2 v3 = liftIO $ dyn217 ptr_glProgramLocalParameterI4uivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramLocalParameterI4uivNV #-}
+ptr_glProgramLocalParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glProgramLocalParameterI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uivNV"
+
+-- glProgramLocalParameters4fvEXT ----------------------------------------------
+
+glProgramLocalParameters4fvEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramLocalParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn290 ptr_glProgramLocalParameters4fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramLocalParameters4fvEXT #-}
+ptr_glProgramLocalParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glProgramLocalParameters4fvEXT"
+
+-- glProgramLocalParametersI4ivNV ----------------------------------------------
+
+glProgramLocalParametersI4ivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glProgramLocalParametersI4ivNV v1 v2 v3 v4 = liftIO $ dyn650 ptr_glProgramLocalParametersI4ivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramLocalParametersI4ivNV #-}
+ptr_glProgramLocalParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramLocalParametersI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4ivNV"
+
+-- glProgramLocalParametersI4uivNV ---------------------------------------------
+
+glProgramLocalParametersI4uivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glProgramLocalParametersI4uivNV v1 v2 v3 v4 = liftIO $ dyn23 ptr_glProgramLocalParametersI4uivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramLocalParametersI4uivNV #-}
+ptr_glProgramLocalParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramLocalParametersI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4uivNV"
+
+-- glProgramNamedParameter4dNV -------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramNamedParameter4dvNV'.
+glProgramNamedParameter4dNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glProgramNamedParameter4dNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn651 ptr_glProgramNamedParameter4dNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glProgramNamedParameter4dNV #-}
+ptr_glProgramNamedParameter4dNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramNamedParameter4dNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dNV"
+
+-- glProgramNamedParameter4dvNV ------------------------------------------------
+
+glProgramNamedParameter4dvNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glProgramNamedParameter4dvNV v1 v2 v3 v4 = liftIO $ dyn402 ptr_glProgramNamedParameter4dvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramNamedParameter4dvNV #-}
+ptr_glProgramNamedParameter4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
+ptr_glProgramNamedParameter4dvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dvNV"
+
+-- glProgramNamedParameter4fNV -------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramNamedParameter4fvNV'.
+glProgramNamedParameter4fNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glProgramNamedParameter4fNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn652 ptr_glProgramNamedParameter4fNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glProgramNamedParameter4fNV #-}
+ptr_glProgramNamedParameter4fNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramNamedParameter4fNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fNV"
+
+-- glProgramNamedParameter4fvNV ------------------------------------------------
+
+glProgramNamedParameter4fvNV
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr GLubyte -- ^ @name@ pointing to @1@ element of type @GLubyte@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glProgramNamedParameter4fvNV v1 v2 v3 v4 = liftIO $ dyn403 ptr_glProgramNamedParameter4fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramNamedParameter4fvNV #-}
+ptr_glProgramNamedParameter4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+ptr_glProgramNamedParameter4fvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fvNV"
+
+-- glProgramParameter4dNV ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramParameter4dvNV'.
+glProgramParameter4dNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glProgramParameter4dNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn647 ptr_glProgramParameter4dNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramParameter4dNV #-}
+ptr_glProgramParameter4dNV :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramParameter4dNV = unsafePerformIO $ getCommand "glProgramParameter4dNV"
+
+-- glProgramParameter4dvNV -----------------------------------------------------
+
+glProgramParameter4dvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glProgramParameter4dvNV v1 v2 v3 = liftIO $ dyn337 ptr_glProgramParameter4dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramParameter4dvNV #-}
+ptr_glProgramParameter4dvNV :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
+ptr_glProgramParameter4dvNV = unsafePerformIO $ getCommand "glProgramParameter4dvNV"
+
+-- glProgramParameter4fNV ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramParameter4fvNV'.
+glProgramParameter4fNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glProgramParameter4fNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn648 ptr_glProgramParameter4fNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramParameter4fNV #-}
+ptr_glProgramParameter4fNV :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramParameter4fNV = unsafePerformIO $ getCommand "glProgramParameter4fNV"
+
+-- glProgramParameter4fvNV -----------------------------------------------------
+
+glProgramParameter4fvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glProgramParameter4fvNV v1 v2 v3 = liftIO $ dyn271 ptr_glProgramParameter4fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramParameter4fvNV #-}
+ptr_glProgramParameter4fvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glProgramParameter4fvNV = unsafePerformIO $ getCommand "glProgramParameter4fvNV"
+
+-- glProgramParameteri ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramParameter.xhtml OpenGL 4.x>.
+glProgramParameteri
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glProgramParameteri v1 v2 v3 = liftIO $ dyn481 ptr_glProgramParameteri v1 v2 v3
+
+{-# NOINLINE ptr_glProgramParameteri #-}
+ptr_glProgramParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glProgramParameteri = unsafePerformIO $ getCommand "glProgramParameteri"
+
+-- glProgramParameteriARB ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramParameteri'.
+glProgramParameteriARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glProgramParameteriARB v1 v2 v3 = liftIO $ dyn481 ptr_glProgramParameteriARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramParameteriARB #-}
+ptr_glProgramParameteriARB :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glProgramParameteriARB = unsafePerformIO $ getCommand "glProgramParameteriARB"
+
+-- glProgramParameteriEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramParameteri'.
+glProgramParameteriEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
+  -> GLint -- ^ @value@.
+  -> m ()
+glProgramParameteriEXT v1 v2 v3 = liftIO $ dyn481 ptr_glProgramParameteriEXT v1 v2 v3
+
+{-# NOINLINE ptr_glProgramParameteriEXT #-}
+ptr_glProgramParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glProgramParameteriEXT = unsafePerformIO $ getCommand "glProgramParameteriEXT"
+
+-- glProgramParameters4dvNV ----------------------------------------------------
+
+glProgramParameters4dvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glProgramParameters4dvNV v1 v2 v3 v4 = liftIO $ dyn653 ptr_glProgramParameters4dvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramParameters4dvNV #-}
+ptr_glProgramParameters4dvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramParameters4dvNV = unsafePerformIO $ getCommand "glProgramParameters4dvNV"
+
+-- glProgramParameters4fvNV ----------------------------------------------------
+
+glProgramParameters4fvNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramParameters4fvNV v1 v2 v3 v4 = liftIO $ dyn290 ptr_glProgramParameters4fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramParameters4fvNV #-}
+ptr_glProgramParameters4fvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramParameters4fvNV = unsafePerformIO $ getCommand "glProgramParameters4fvNV"
+
+-- glProgramPathFragmentInputGenNV ---------------------------------------------
+
+glProgramPathFragmentInputGenNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLenum -- ^ @genMode@.
+  -> GLint -- ^ @components@.
+  -> Ptr GLfloat -- ^ @coeffs@.
+  -> m ()
+glProgramPathFragmentInputGenNV v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glProgramPathFragmentInputGenNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramPathFragmentInputGenNV #-}
+ptr_glProgramPathFragmentInputGenNV :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
+ptr_glProgramPathFragmentInputGenNV = unsafePerformIO $ getCommand "glProgramPathFragmentInputGenNV"
+
+-- glProgramStringARB ----------------------------------------------------------
+
+glProgramStringARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLenum -- ^ @format@ of type @ProgramFormatARB@.
+  -> GLsizei -- ^ @len@.
+  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
+  -> m ()
+glProgramStringARB v1 v2 v3 v4 = liftIO $ dyn655 ptr_glProgramStringARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramStringARB #-}
+ptr_glProgramStringARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glProgramStringARB = unsafePerformIO $ getCommand "glProgramStringARB"
+
+-- glProgramSubroutineParametersuivNV ------------------------------------------
+
+glProgramSubroutineParametersuivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glProgramSubroutineParametersuivNV v1 v2 v3 = liftIO $ dyn200 ptr_glProgramSubroutineParametersuivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramSubroutineParametersuivNV #-}
+ptr_glProgramSubroutineParametersuivNV :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramSubroutineParametersuivNV = unsafePerformIO $ getCommand "glProgramSubroutineParametersuivNV"
+
+-- glProgramUniform1d ----------------------------------------------------------
+
+glProgramUniform1d
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @v0@.
+  -> m ()
+glProgramUniform1d v1 v2 v3 = liftIO $ dyn656 ptr_glProgramUniform1d v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1d #-}
+ptr_glProgramUniform1d :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
+ptr_glProgramUniform1d = unsafePerformIO $ getCommand "glProgramUniform1d"
+
+-- glProgramUniform1dEXT -------------------------------------------------------
+
+glProgramUniform1dEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glProgramUniform1dEXT v1 v2 v3 = liftIO $ dyn656 ptr_glProgramUniform1dEXT v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1dEXT #-}
+ptr_glProgramUniform1dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
+ptr_glProgramUniform1dEXT = unsafePerformIO $ getCommand "glProgramUniform1dEXT"
+
+-- glProgramUniform1dv ---------------------------------------------------------
+
+glProgramUniform1dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform1dv v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform1dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1dv #-}
+ptr_glProgramUniform1dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform1dv = unsafePerformIO $ getCommand "glProgramUniform1dv"
+
+-- glProgramUniform1dvEXT ------------------------------------------------------
+
+glProgramUniform1dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform1dvEXT v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform1dvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1dvEXT #-}
+ptr_glProgramUniform1dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform1dvEXT = unsafePerformIO $ getCommand "glProgramUniform1dvEXT"
+
+-- glProgramUniform1f ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1f
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> m ()
+glProgramUniform1f v1 v2 v3 = liftIO $ dyn657 ptr_glProgramUniform1f v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1f #-}
+ptr_glProgramUniform1f :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
+ptr_glProgramUniform1f = unsafePerformIO $ getCommand "glProgramUniform1f"
+
+-- glProgramUniform1fEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1f'.
+glProgramUniform1fEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> m ()
+glProgramUniform1fEXT v1 v2 v3 = liftIO $ dyn657 ptr_glProgramUniform1fEXT v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1fEXT #-}
+ptr_glProgramUniform1fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
+ptr_glProgramUniform1fEXT = unsafePerformIO $ getCommand "glProgramUniform1fEXT"
+
+-- glProgramUniform1fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform1fv v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform1fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1fv #-}
+ptr_glProgramUniform1fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform1fv = unsafePerformIO $ getCommand "glProgramUniform1fv"
+
+-- glProgramUniform1fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1fv'.
+glProgramUniform1fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform1fvEXT v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform1fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1fvEXT #-}
+ptr_glProgramUniform1fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform1fvEXT = unsafePerformIO $ getCommand "glProgramUniform1fvEXT"
+
+-- glProgramUniform1i ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1i
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> m ()
+glProgramUniform1i v1 v2 v3 = liftIO $ dyn658 ptr_glProgramUniform1i v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1i #-}
+ptr_glProgramUniform1i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform1i = unsafePerformIO $ getCommand "glProgramUniform1i"
+
+-- glProgramUniform1i64ARB -----------------------------------------------------
+
+glProgramUniform1i64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> m ()
+glProgramUniform1i64ARB v1 v2 v3 = liftIO $ dyn659 ptr_glProgramUniform1i64ARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1i64ARB #-}
+ptr_glProgramUniform1i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> IO ())
+ptr_glProgramUniform1i64ARB = unsafePerformIO $ getCommand "glProgramUniform1i64ARB"
+
+-- glProgramUniform1i64NV ------------------------------------------------------
+
+glProgramUniform1i64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> m ()
+glProgramUniform1i64NV v1 v2 v3 = liftIO $ dyn660 ptr_glProgramUniform1i64NV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1i64NV #-}
+ptr_glProgramUniform1i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
+ptr_glProgramUniform1i64NV = unsafePerformIO $ getCommand "glProgramUniform1i64NV"
+
+-- glProgramUniform1i64vARB ----------------------------------------------------
+
+glProgramUniform1i64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count@ elements of type @GLint64@.
+  -> m ()
+glProgramUniform1i64vARB v1 v2 v3 v4 = liftIO $ dyn470 ptr_glProgramUniform1i64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1i64vARB #-}
+ptr_glProgramUniform1i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glProgramUniform1i64vARB = unsafePerformIO $ getCommand "glProgramUniform1i64vARB"
+
+-- glProgramUniform1i64vNV -----------------------------------------------------
+
+glProgramUniform1i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count@ elements of type @GLint64EXT@.
+  -> m ()
+glProgramUniform1i64vNV v1 v2 v3 v4 = liftIO $ dyn661 ptr_glProgramUniform1i64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1i64vNV #-}
+ptr_glProgramUniform1i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glProgramUniform1i64vNV = unsafePerformIO $ getCommand "glProgramUniform1i64vNV"
+
+-- glProgramUniform1iEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1i'.
+glProgramUniform1iEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> m ()
+glProgramUniform1iEXT v1 v2 v3 = liftIO $ dyn658 ptr_glProgramUniform1iEXT v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1iEXT #-}
+ptr_glProgramUniform1iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform1iEXT = unsafePerformIO $ getCommand "glProgramUniform1iEXT"
+
+-- glProgramUniform1iv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1iv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count@ elements of type @GLint@.
+  -> m ()
+glProgramUniform1iv v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform1iv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1iv #-}
+ptr_glProgramUniform1iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform1iv = unsafePerformIO $ getCommand "glProgramUniform1iv"
+
+-- glProgramUniform1ivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1iv'.
+glProgramUniform1ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count@ elements of type @GLint@.
+  -> m ()
+glProgramUniform1ivEXT v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform1ivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1ivEXT #-}
+ptr_glProgramUniform1ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform1ivEXT = unsafePerformIO $ getCommand "glProgramUniform1ivEXT"
 
diff --git a/src/Graphics/GL/Functions/F21.hs b/src/Graphics/GL/Functions/F21.hs
--- a/src/Graphics/GL/Functions/F21.hs
+++ b/src/Graphics/GL/Functions/F21.hs
@@ -15,1686 +15,1702 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F21 (
-  glProgramUniform3i64NV,
-  glProgramUniform3i64vARB,
-  glProgramUniform3i64vNV,
-  glProgramUniform3iEXT,
-  glProgramUniform3iv,
-  glProgramUniform3ivEXT,
-  glProgramUniform3ui,
-  glProgramUniform3ui64ARB,
-  glProgramUniform3ui64NV,
-  glProgramUniform3ui64vARB,
-  glProgramUniform3ui64vNV,
-  glProgramUniform3uiEXT,
-  glProgramUniform3uiv,
-  glProgramUniform3uivEXT,
-  glProgramUniform4d,
-  glProgramUniform4dEXT,
-  glProgramUniform4dv,
-  glProgramUniform4dvEXT,
-  glProgramUniform4f,
-  glProgramUniform4fEXT,
-  glProgramUniform4fv,
-  glProgramUniform4fvEXT,
-  glProgramUniform4i,
-  glProgramUniform4i64ARB,
-  glProgramUniform4i64NV,
-  glProgramUniform4i64vARB,
-  glProgramUniform4i64vNV,
-  glProgramUniform4iEXT,
-  glProgramUniform4iv,
-  glProgramUniform4ivEXT,
-  glProgramUniform4ui,
-  glProgramUniform4ui64ARB,
-  glProgramUniform4ui64NV,
-  glProgramUniform4ui64vARB,
-  glProgramUniform4ui64vNV,
-  glProgramUniform4uiEXT,
-  glProgramUniform4uiv,
-  glProgramUniform4uivEXT,
-  glProgramUniformHandleui64ARB,
-  glProgramUniformHandleui64IMG,
-  glProgramUniformHandleui64NV,
-  glProgramUniformHandleui64vARB,
-  glProgramUniformHandleui64vIMG,
-  glProgramUniformHandleui64vNV,
-  glProgramUniformMatrix2dv,
-  glProgramUniformMatrix2dvEXT,
-  glProgramUniformMatrix2fv,
-  glProgramUniformMatrix2fvEXT,
-  glProgramUniformMatrix2x3dv,
-  glProgramUniformMatrix2x3dvEXT,
-  glProgramUniformMatrix2x3fv,
-  glProgramUniformMatrix2x3fvEXT,
-  glProgramUniformMatrix2x4dv,
-  glProgramUniformMatrix2x4dvEXT,
-  glProgramUniformMatrix2x4fv,
-  glProgramUniformMatrix2x4fvEXT,
-  glProgramUniformMatrix3dv,
-  glProgramUniformMatrix3dvEXT,
-  glProgramUniformMatrix3fv,
-  glProgramUniformMatrix3fvEXT,
-  glProgramUniformMatrix3x2dv,
-  glProgramUniformMatrix3x2dvEXT,
-  glProgramUniformMatrix3x2fv,
-  glProgramUniformMatrix3x2fvEXT,
-  glProgramUniformMatrix3x4dv,
-  glProgramUniformMatrix3x4dvEXT,
-  glProgramUniformMatrix3x4fv,
-  glProgramUniformMatrix3x4fvEXT,
-  glProgramUniformMatrix4dv,
-  glProgramUniformMatrix4dvEXT,
-  glProgramUniformMatrix4fv,
-  glProgramUniformMatrix4fvEXT,
-  glProgramUniformMatrix4x2dv,
-  glProgramUniformMatrix4x2dvEXT,
-  glProgramUniformMatrix4x2fv,
-  glProgramUniformMatrix4x2fvEXT,
-  glProgramUniformMatrix4x3dv,
-  glProgramUniformMatrix4x3dvEXT,
-  glProgramUniformMatrix4x3fv,
-  glProgramUniformMatrix4x3fvEXT,
-  glProgramUniformui64NV,
-  glProgramUniformui64vNV,
-  glProgramVertexLimitNV,
-  glProvokingVertex,
-  glProvokingVertexEXT,
-  glPushAttrib,
-  glPushClientAttrib,
-  glPushClientAttribDefaultEXT,
-  glPushDebugGroup,
-  glPushDebugGroupKHR,
-  glPushGroupMarkerEXT,
-  glPushMatrix,
-  glPushName,
-  glQueryCounter,
-  glQueryCounterEXT,
-  glQueryMatrixxOES,
-  glQueryObjectParameteruiAMD,
-  glRasterPos2d,
-  glRasterPos2dv,
-  glRasterPos2f
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glProgramUniform3i64NV ------------------------------------------------------
-
-glProgramUniform3i64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> m ()
-glProgramUniform3i64NV v1 v2 v3 v4 v5 = liftIO $ dyn656 ptr_glProgramUniform3i64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3i64NV #-}
-ptr_glProgramUniform3i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glProgramUniform3i64NV = unsafePerformIO $ getCommand "glProgramUniform3i64NV"
-
--- glProgramUniform3i64vARB ----------------------------------------------------
-
-glProgramUniform3i64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
-  -> m ()
-glProgramUniform3i64vARB v1 v2 v3 v4 = liftIO $ dyn460 ptr_glProgramUniform3i64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3i64vARB #-}
-ptr_glProgramUniform3i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glProgramUniform3i64vARB = unsafePerformIO $ getCommand "glProgramUniform3i64vARB"
-
--- glProgramUniform3i64vNV -----------------------------------------------------
-
-glProgramUniform3i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
-  -> m ()
-glProgramUniform3i64vNV v1 v2 v3 v4 = liftIO $ dyn639 ptr_glProgramUniform3i64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3i64vNV #-}
-ptr_glProgramUniform3i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glProgramUniform3i64vNV = unsafePerformIO $ getCommand "glProgramUniform3i64vNV"
-
--- glProgramUniform3iEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3i'.
-glProgramUniform3iEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glProgramUniform3iEXT v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glProgramUniform3iEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3iEXT #-}
-ptr_glProgramUniform3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform3iEXT = unsafePerformIO $ getCommand "glProgramUniform3iEXT"
-
--- glProgramUniform3iv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3iv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
-  -> m ()
-glProgramUniform3iv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform3iv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3iv #-}
-ptr_glProgramUniform3iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform3iv = unsafePerformIO $ getCommand "glProgramUniform3iv"
-
--- glProgramUniform3ivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3iv'.
-glProgramUniform3ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
-  -> m ()
-glProgramUniform3ivEXT v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform3ivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3ivEXT #-}
-ptr_glProgramUniform3ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform3ivEXT = unsafePerformIO $ getCommand "glProgramUniform3ivEXT"
-
--- glProgramUniform3ui ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3ui
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> m ()
-glProgramUniform3ui v1 v2 v3 v4 v5 = liftIO $ dyn657 ptr_glProgramUniform3ui v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3ui #-}
-ptr_glProgramUniform3ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform3ui = unsafePerformIO $ getCommand "glProgramUniform3ui"
-
--- glProgramUniform3ui64ARB ----------------------------------------------------
-
-glProgramUniform3ui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> GLuint64 -- ^ @z@.
-  -> m ()
-glProgramUniform3ui64ARB v1 v2 v3 v4 v5 = liftIO $ dyn658 ptr_glProgramUniform3ui64ARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3ui64ARB #-}
-ptr_glProgramUniform3ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-ptr_glProgramUniform3ui64ARB = unsafePerformIO $ getCommand "glProgramUniform3ui64ARB"
-
--- glProgramUniform3ui64NV -----------------------------------------------------
-
-glProgramUniform3ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> m ()
-glProgramUniform3ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn659 ptr_glProgramUniform3ui64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3ui64NV #-}
-ptr_glProgramUniform3ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glProgramUniform3ui64NV = unsafePerformIO $ getCommand "glProgramUniform3ui64NV"
-
--- glProgramUniform3ui64vARB ---------------------------------------------------
-
-glProgramUniform3ui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*3@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniform3ui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniform3ui64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3ui64vARB #-}
-ptr_glProgramUniform3ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniform3ui64vARB = unsafePerformIO $ getCommand "glProgramUniform3ui64vARB"
-
--- glProgramUniform3ui64vNV ----------------------------------------------------
-
-glProgramUniform3ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniform3ui64vNV v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramUniform3ui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3ui64vNV #-}
-ptr_glProgramUniform3ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniform3ui64vNV = unsafePerformIO $ getCommand "glProgramUniform3ui64vNV"
-
--- glProgramUniform3uiEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3ui'.
-glProgramUniform3uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> m ()
-glProgramUniform3uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn657 ptr_glProgramUniform3uiEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3uiEXT #-}
-ptr_glProgramUniform3uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform3uiEXT = unsafePerformIO $ getCommand "glProgramUniform3uiEXT"
-
--- glProgramUniform3uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3uiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform3uiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform3uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3uiv #-}
-ptr_glProgramUniform3uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform3uiv = unsafePerformIO $ getCommand "glProgramUniform3uiv"
-
--- glProgramUniform3uivEXT -----------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3uiv'.
-glProgramUniform3uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform3uivEXT v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform3uivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3uivEXT #-}
-ptr_glProgramUniform3uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform3uivEXT = unsafePerformIO $ getCommand "glProgramUniform3uivEXT"
-
--- glProgramUniform4d ----------------------------------------------------------
-
-glProgramUniform4d
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @v0@.
-  -> GLdouble -- ^ @v1@.
-  -> GLdouble -- ^ @v2@.
-  -> GLdouble -- ^ @v3@.
-  -> m ()
-glProgramUniform4d v1 v2 v3 v4 v5 v6 = liftIO $ dyn660 ptr_glProgramUniform4d v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4d #-}
-ptr_glProgramUniform4d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform4d = unsafePerformIO $ getCommand "glProgramUniform4d"
-
--- glProgramUniform4dEXT -------------------------------------------------------
-
-glProgramUniform4dEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glProgramUniform4dEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn660 ptr_glProgramUniform4dEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4dEXT #-}
-ptr_glProgramUniform4dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glProgramUniform4dEXT = unsafePerformIO $ getCommand "glProgramUniform4dEXT"
-
--- glProgramUniform4dv ---------------------------------------------------------
-
-glProgramUniform4dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform4dv v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform4dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4dv #-}
-ptr_glProgramUniform4dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform4dv = unsafePerformIO $ getCommand "glProgramUniform4dv"
-
--- glProgramUniform4dvEXT ------------------------------------------------------
-
-glProgramUniform4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniform4dvEXT v1 v2 v3 v4 = liftIO $ dyn458 ptr_glProgramUniform4dvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4dvEXT #-}
-ptr_glProgramUniform4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glProgramUniform4dvEXT = unsafePerformIO $ getCommand "glProgramUniform4dvEXT"
-
--- glProgramUniform4f ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4f
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> GLfloat -- ^ @v3@.
-  -> m ()
-glProgramUniform4f v1 v2 v3 v4 v5 v6 = liftIO $ dyn661 ptr_glProgramUniform4f v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4f #-}
-ptr_glProgramUniform4f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform4f = unsafePerformIO $ getCommand "glProgramUniform4f"
-
--- glProgramUniform4fEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4f'.
-glProgramUniform4fEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> GLfloat -- ^ @v3@.
-  -> m ()
-glProgramUniform4fEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn661 ptr_glProgramUniform4fEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4fEXT #-}
-ptr_glProgramUniform4fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glProgramUniform4fEXT = unsafePerformIO $ getCommand "glProgramUniform4fEXT"
-
--- glProgramUniform4fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform4fv v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform4fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4fv #-}
-ptr_glProgramUniform4fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform4fv = unsafePerformIO $ getCommand "glProgramUniform4fv"
-
--- glProgramUniform4fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4fv'.
-glProgramUniform4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform4fvEXT v1 v2 v3 v4 = liftIO $ dyn459 ptr_glProgramUniform4fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4fvEXT #-}
-ptr_glProgramUniform4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform4fvEXT = unsafePerformIO $ getCommand "glProgramUniform4fvEXT"
-
--- glProgramUniform4i ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4i
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> GLint -- ^ @v3@.
-  -> m ()
-glProgramUniform4i v1 v2 v3 v4 v5 v6 = liftIO $ dyn662 ptr_glProgramUniform4i v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4i #-}
-ptr_glProgramUniform4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform4i = unsafePerformIO $ getCommand "glProgramUniform4i"
-
--- glProgramUniform4i64ARB -----------------------------------------------------
-
-glProgramUniform4i64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> GLint64 -- ^ @z@.
-  -> GLint64 -- ^ @w@.
-  -> m ()
-glProgramUniform4i64ARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn663 ptr_glProgramUniform4i64ARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4i64ARB #-}
-ptr_glProgramUniform4i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
-ptr_glProgramUniform4i64ARB = unsafePerformIO $ getCommand "glProgramUniform4i64ARB"
-
--- glProgramUniform4i64NV ------------------------------------------------------
-
-glProgramUniform4i64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> GLint64EXT -- ^ @w@.
-  -> m ()
-glProgramUniform4i64NV v1 v2 v3 v4 v5 v6 = liftIO $ dyn664 ptr_glProgramUniform4i64NV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4i64NV #-}
-ptr_glProgramUniform4i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glProgramUniform4i64NV = unsafePerformIO $ getCommand "glProgramUniform4i64NV"
-
--- glProgramUniform4i64vARB ----------------------------------------------------
-
-glProgramUniform4i64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*4@ elements of type @GLint64@.
-  -> m ()
-glProgramUniform4i64vARB v1 v2 v3 v4 = liftIO $ dyn460 ptr_glProgramUniform4i64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4i64vARB #-}
-ptr_glProgramUniform4i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glProgramUniform4i64vARB = unsafePerformIO $ getCommand "glProgramUniform4i64vARB"
-
--- glProgramUniform4i64vNV -----------------------------------------------------
-
-glProgramUniform4i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
-  -> m ()
-glProgramUniform4i64vNV v1 v2 v3 v4 = liftIO $ dyn639 ptr_glProgramUniform4i64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4i64vNV #-}
-ptr_glProgramUniform4i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glProgramUniform4i64vNV = unsafePerformIO $ getCommand "glProgramUniform4i64vNV"
-
--- glProgramUniform4iEXT -------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4i'.
-glProgramUniform4iEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> GLint -- ^ @v3@.
-  -> m ()
-glProgramUniform4iEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn662 ptr_glProgramUniform4iEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4iEXT #-}
-ptr_glProgramUniform4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glProgramUniform4iEXT = unsafePerformIO $ getCommand "glProgramUniform4iEXT"
-
--- glProgramUniform4iv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4iv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glProgramUniform4iv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform4iv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4iv #-}
-ptr_glProgramUniform4iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform4iv = unsafePerformIO $ getCommand "glProgramUniform4iv"
-
--- glProgramUniform4ivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4iv'.
-glProgramUniform4ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glProgramUniform4ivEXT v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform4ivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4ivEXT #-}
-ptr_glProgramUniform4ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glProgramUniform4ivEXT = unsafePerformIO $ getCommand "glProgramUniform4ivEXT"
-
--- glProgramUniform4ui ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4ui
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> GLuint -- ^ @v3@.
-  -> m ()
-glProgramUniform4ui v1 v2 v3 v4 v5 v6 = liftIO $ dyn665 ptr_glProgramUniform4ui v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4ui #-}
-ptr_glProgramUniform4ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform4ui = unsafePerformIO $ getCommand "glProgramUniform4ui"
-
--- glProgramUniform4ui64ARB ----------------------------------------------------
-
-glProgramUniform4ui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> GLuint64 -- ^ @z@.
-  -> GLuint64 -- ^ @w@.
-  -> m ()
-glProgramUniform4ui64ARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn666 ptr_glProgramUniform4ui64ARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4ui64ARB #-}
-ptr_glProgramUniform4ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-ptr_glProgramUniform4ui64ARB = unsafePerformIO $ getCommand "glProgramUniform4ui64ARB"
-
--- glProgramUniform4ui64NV -----------------------------------------------------
-
-glProgramUniform4ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> GLuint64EXT -- ^ @w@.
-  -> m ()
-glProgramUniform4ui64NV v1 v2 v3 v4 v5 v6 = liftIO $ dyn667 ptr_glProgramUniform4ui64NV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4ui64NV #-}
-ptr_glProgramUniform4ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glProgramUniform4ui64NV = unsafePerformIO $ getCommand "glProgramUniform4ui64NV"
-
--- glProgramUniform4ui64vARB ---------------------------------------------------
-
-glProgramUniform4ui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*4@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniform4ui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniform4ui64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4ui64vARB #-}
-ptr_glProgramUniform4ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniform4ui64vARB = unsafePerformIO $ getCommand "glProgramUniform4ui64vARB"
-
--- glProgramUniform4ui64vNV ----------------------------------------------------
-
-glProgramUniform4ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniform4ui64vNV v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramUniform4ui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4ui64vNV #-}
-ptr_glProgramUniform4ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniform4ui64vNV = unsafePerformIO $ getCommand "glProgramUniform4ui64vNV"
-
--- glProgramUniform4uiEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4ui'.
-glProgramUniform4uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> GLuint -- ^ @v3@.
-  -> m ()
-glProgramUniform4uiEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn665 ptr_glProgramUniform4uiEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramUniform4uiEXT #-}
-ptr_glProgramUniform4uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform4uiEXT = unsafePerformIO $ getCommand "glProgramUniform4uiEXT"
-
--- glProgramUniform4uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform4uiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform4uiv v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform4uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4uiv #-}
-ptr_glProgramUniform4uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform4uiv = unsafePerformIO $ getCommand "glProgramUniform4uiv"
-
--- glProgramUniform4uivEXT -----------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform4uiv'.
-glProgramUniform4uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform4uivEXT v1 v2 v3 v4 = liftIO $ dyn463 ptr_glProgramUniform4uivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform4uivEXT #-}
-ptr_glProgramUniform4uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform4uivEXT = unsafePerformIO $ getCommand "glProgramUniform4uivEXT"
-
--- glProgramUniformHandleui64ARB -----------------------------------------------
-
-glProgramUniformHandleui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glProgramUniformHandleui64ARB v1 v2 v3 = liftIO $ dyn641 ptr_glProgramUniformHandleui64ARB v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniformHandleui64ARB #-}
-ptr_glProgramUniformHandleui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64ARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64ARB"
-
--- glProgramUniformHandleui64IMG -----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformHandleui64ARB'.
-glProgramUniformHandleui64IMG
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glProgramUniformHandleui64IMG v1 v2 v3 = liftIO $ dyn641 ptr_glProgramUniformHandleui64IMG v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniformHandleui64IMG #-}
-ptr_glProgramUniformHandleui64IMG :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64IMG = unsafePerformIO $ getCommand "glProgramUniformHandleui64IMG"
-
--- glProgramUniformHandleui64NV ------------------------------------------------
-
-glProgramUniformHandleui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glProgramUniformHandleui64NV v1 v2 v3 = liftIO $ dyn641 ptr_glProgramUniformHandleui64NV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniformHandleui64NV #-}
-ptr_glProgramUniformHandleui64NV :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64NV = unsafePerformIO $ getCommand "glProgramUniformHandleui64NV"
-
--- glProgramUniformHandleui64vARB ----------------------------------------------
-
-glProgramUniformHandleui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniformHandleui64vARB v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniformHandleui64vARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniformHandleui64vARB #-}
-ptr_glProgramUniformHandleui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64vARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64vARB"
-
--- glProgramUniformHandleui64vIMG ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformHandleui64vARB'.
-glProgramUniformHandleui64vIMG
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniformHandleui64vIMG v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniformHandleui64vIMG v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniformHandleui64vIMG #-}
-ptr_glProgramUniformHandleui64vIMG :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64vIMG = unsafePerformIO $ getCommand "glProgramUniformHandleui64vIMG"
-
--- glProgramUniformHandleui64vNV -----------------------------------------------
-
-glProgramUniformHandleui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glProgramUniformHandleui64vNV v1 v2 v3 v4 = liftIO $ dyn462 ptr_glProgramUniformHandleui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniformHandleui64vNV #-}
-ptr_glProgramUniformHandleui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glProgramUniformHandleui64vNV = unsafePerformIO $ getCommand "glProgramUniformHandleui64vNV"
-
--- glProgramUniformMatrix2dv ---------------------------------------------------
-
-glProgramUniformMatrix2dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2dv #-}
-ptr_glProgramUniformMatrix2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2dv"
-
--- glProgramUniformMatrix2dvEXT ------------------------------------------------
-
-glProgramUniformMatrix2dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2dvEXT #-}
-ptr_glProgramUniformMatrix2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2dvEXT"
-
--- glProgramUniformMatrix2fv ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix2fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2fv #-}
-ptr_glProgramUniformMatrix2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2fv"
-
--- glProgramUniformMatrix2fvEXT ------------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix2fv'.
-glProgramUniformMatrix2fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2fvEXT #-}
-ptr_glProgramUniformMatrix2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2fvEXT"
-
--- glProgramUniformMatrix2x3dv -------------------------------------------------
-
-glProgramUniformMatrix2x3dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x3dv #-}
-ptr_glProgramUniformMatrix2x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dv"
-
--- glProgramUniformMatrix2x3dvEXT ----------------------------------------------
-
-glProgramUniformMatrix2x3dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2x3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2x3dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x3dvEXT #-}
-ptr_glProgramUniformMatrix2x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dvEXT"
-
--- glProgramUniformMatrix2x3fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix2x3fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2x3fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2x3fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x3fv #-}
-ptr_glProgramUniformMatrix2x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fv"
-
--- glProgramUniformMatrix2x3fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix2x3fv'.
-glProgramUniformMatrix2x3fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2x3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2x3fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x3fvEXT #-}
-ptr_glProgramUniformMatrix2x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fvEXT"
-
--- glProgramUniformMatrix2x4dv -------------------------------------------------
-
-glProgramUniformMatrix2x4dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2x4dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2x4dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x4dv #-}
-ptr_glProgramUniformMatrix2x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dv"
-
--- glProgramUniformMatrix2x4dvEXT ----------------------------------------------
-
-glProgramUniformMatrix2x4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2x4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix2x4dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x4dvEXT #-}
-ptr_glProgramUniformMatrix2x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dvEXT"
-
--- glProgramUniformMatrix2x4fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix2x4fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2x4fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2x4fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x4fv #-}
-ptr_glProgramUniformMatrix2x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fv"
-
--- glProgramUniformMatrix2x4fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix2x4fv'.
-glProgramUniformMatrix2x4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix2x4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix2x4fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x4fvEXT #-}
-ptr_glProgramUniformMatrix2x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix2x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fvEXT"
-
--- glProgramUniformMatrix3dv ---------------------------------------------------
-
-glProgramUniformMatrix3dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3dv #-}
-ptr_glProgramUniformMatrix3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3dv"
-
--- glProgramUniformMatrix3dvEXT ------------------------------------------------
-
-glProgramUniformMatrix3dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3dvEXT #-}
-ptr_glProgramUniformMatrix3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3dvEXT"
-
--- glProgramUniformMatrix3fv ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix3fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3fv #-}
-ptr_glProgramUniformMatrix3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3fv"
-
--- glProgramUniformMatrix3fvEXT ------------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix3fv'.
-glProgramUniformMatrix3fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3fvEXT #-}
-ptr_glProgramUniformMatrix3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3fvEXT"
-
--- glProgramUniformMatrix3x2dv -------------------------------------------------
-
-glProgramUniformMatrix3x2dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3x2dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3x2dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x2dv #-}
-ptr_glProgramUniformMatrix3x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dv"
-
--- glProgramUniformMatrix3x2dvEXT ----------------------------------------------
-
-glProgramUniformMatrix3x2dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3x2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3x2dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x2dvEXT #-}
-ptr_glProgramUniformMatrix3x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dvEXT"
-
--- glProgramUniformMatrix3x2fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix3x2fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3x2fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3x2fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x2fv #-}
-ptr_glProgramUniformMatrix3x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fv"
-
--- glProgramUniformMatrix3x2fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix3x2fv'.
-glProgramUniformMatrix3x2fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3x2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3x2fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x2fvEXT #-}
-ptr_glProgramUniformMatrix3x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fvEXT"
-
--- glProgramUniformMatrix3x4dv -------------------------------------------------
-
-glProgramUniformMatrix3x4dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3x4dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3x4dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x4dv #-}
-ptr_glProgramUniformMatrix3x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dv"
-
--- glProgramUniformMatrix3x4dvEXT ----------------------------------------------
-
-glProgramUniformMatrix3x4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix3x4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix3x4dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x4dvEXT #-}
-ptr_glProgramUniformMatrix3x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix3x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dvEXT"
-
--- glProgramUniformMatrix3x4fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix3x4fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3x4fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3x4fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x4fv #-}
-ptr_glProgramUniformMatrix3x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fv"
-
--- glProgramUniformMatrix3x4fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix3x4fv'.
-glProgramUniformMatrix3x4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix3x4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix3x4fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix3x4fvEXT #-}
-ptr_glProgramUniformMatrix3x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix3x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fvEXT"
-
--- glProgramUniformMatrix4dv ---------------------------------------------------
-
-glProgramUniformMatrix4dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4dv #-}
-ptr_glProgramUniformMatrix4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4dv"
-
--- glProgramUniformMatrix4dvEXT ------------------------------------------------
-
-glProgramUniformMatrix4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4dvEXT #-}
-ptr_glProgramUniformMatrix4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4dvEXT"
-
--- glProgramUniformMatrix4fv ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix4fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4fv #-}
-ptr_glProgramUniformMatrix4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4fv"
-
--- glProgramUniformMatrix4fvEXT ------------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix4fv'.
-glProgramUniformMatrix4fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4fvEXT #-}
-ptr_glProgramUniformMatrix4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4fvEXT"
-
--- glProgramUniformMatrix4x2dv -------------------------------------------------
-
-glProgramUniformMatrix4x2dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4x2dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4x2dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x2dv #-}
-ptr_glProgramUniformMatrix4x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dv"
-
--- glProgramUniformMatrix4x2dvEXT ----------------------------------------------
-
-glProgramUniformMatrix4x2dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4x2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4x2dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x2dvEXT #-}
-ptr_glProgramUniformMatrix4x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dvEXT"
-
--- glProgramUniformMatrix4x2fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix4x2fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4x2fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4x2fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x2fv #-}
-ptr_glProgramUniformMatrix4x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fv"
-
--- glProgramUniformMatrix4x2fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix4x2fv'.
-glProgramUniformMatrix4x2fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4x2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4x2fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x2fvEXT #-}
-ptr_glProgramUniformMatrix4x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fvEXT"
-
--- glProgramUniformMatrix4x3dv -------------------------------------------------
-
-glProgramUniformMatrix4x3dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4x3dv v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4x3dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x3dv #-}
-ptr_glProgramUniformMatrix4x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dv"
-
--- glProgramUniformMatrix4x3dvEXT ----------------------------------------------
-
-glProgramUniformMatrix4x3dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix4x3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn668 ptr_glProgramUniformMatrix4x3dvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x3dvEXT #-}
-ptr_glProgramUniformMatrix4x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix4x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dvEXT"
-
--- glProgramUniformMatrix4x3fv -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniformMatrix4x3fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4x3fv v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4x3fv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x3fv #-}
-ptr_glProgramUniformMatrix4x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fv"
-
--- glProgramUniformMatrix4x3fvEXT ----------------------------------------------
-
--- | This command is an alias for 'glProgramUniformMatrix4x3fv'.
-glProgramUniformMatrix4x3fvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniformMatrix4x3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn669 ptr_glProgramUniformMatrix4x3fvEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix4x3fvEXT #-}
-ptr_glProgramUniformMatrix4x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glProgramUniformMatrix4x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fvEXT"
-
--- glProgramUniformui64NV ------------------------------------------------------
-
-glProgramUniformui64NV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @value@.
-  -> m ()
-glProgramUniformui64NV v1 v2 v3 = liftIO $ dyn642 ptr_glProgramUniformui64NV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramUniformui64NV #-}
-ptr_glProgramUniformui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
-ptr_glProgramUniformui64NV = unsafePerformIO $ getCommand "glProgramUniformui64NV"
-
--- glProgramUniformui64vNV -----------------------------------------------------
-
-glProgramUniformui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniformui64vNV v1 v2 v3 v4 = liftIO $ dyn643 ptr_glProgramUniformui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniformui64vNV #-}
-ptr_glProgramUniformui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniformui64vNV = unsafePerformIO $ getCommand "glProgramUniformui64vNV"
-
--- glProgramVertexLimitNV ------------------------------------------------------
-
-glProgramVertexLimitNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLint -- ^ @limit@.
-  -> m ()
-glProgramVertexLimitNV v1 v2 = liftIO $ dyn55 ptr_glProgramVertexLimitNV v1 v2
-
-{-# NOINLINE ptr_glProgramVertexLimitNV #-}
-ptr_glProgramVertexLimitNV :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glProgramVertexLimitNV = unsafePerformIO $ getCommand "glProgramVertexLimitNV"
-
--- glProvokingVertex -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glProvokingVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glProvokingVertex.xhtml OpenGL 4.x>.
-glProvokingVertex
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> m ()
-glProvokingVertex v1 = liftIO $ dyn4 ptr_glProvokingVertex v1
-
-{-# NOINLINE ptr_glProvokingVertex #-}
-ptr_glProvokingVertex :: FunPtr (GLenum -> IO ())
-ptr_glProvokingVertex = unsafePerformIO $ getCommand "glProvokingVertex"
-
--- glProvokingVertexEXT --------------------------------------------------------
-
--- | This command is an alias for 'glProvokingVertex'.
-glProvokingVertexEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> m ()
-glProvokingVertexEXT v1 = liftIO $ dyn4 ptr_glProvokingVertexEXT v1
-
-{-# NOINLINE ptr_glProvokingVertexEXT #-}
-ptr_glProvokingVertexEXT :: FunPtr (GLenum -> IO ())
-ptr_glProvokingVertexEXT = unsafePerformIO $ getCommand "glProvokingVertexEXT"
-
--- glPushAttrib ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>.
-glPushAttrib
-  :: MonadIO m
-  => GLbitfield -- ^ @mask@ of type [AttribMask](Graphics-GL-Groups.html#AttribMask).
-  -> m ()
-glPushAttrib v1 = liftIO $ dyn69 ptr_glPushAttrib v1
-
-{-# NOINLINE ptr_glPushAttrib #-}
-ptr_glPushAttrib :: FunPtr (GLbitfield -> IO ())
-ptr_glPushAttrib = unsafePerformIO $ getCommand "glPushAttrib"
-
--- glPushClientAttrib ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>.
-glPushClientAttrib
-  :: MonadIO m
-  => GLbitfield -- ^ @mask@ of type [ClientAttribMask](Graphics-GL-Groups.html#ClientAttribMask).
-  -> m ()
-glPushClientAttrib v1 = liftIO $ dyn69 ptr_glPushClientAttrib v1
-
-{-# NOINLINE ptr_glPushClientAttrib #-}
-ptr_glPushClientAttrib :: FunPtr (GLbitfield -> IO ())
-ptr_glPushClientAttrib = unsafePerformIO $ getCommand "glPushClientAttrib"
-
--- glPushClientAttribDefaultEXT ------------------------------------------------
-
-glPushClientAttribDefaultEXT
-  :: MonadIO m
-  => GLbitfield -- ^ @mask@ of type [ClientAttribMask](Graphics-GL-Groups.html#ClientAttribMask).
-  -> m ()
-glPushClientAttribDefaultEXT v1 = liftIO $ dyn69 ptr_glPushClientAttribDefaultEXT v1
-
-{-# NOINLINE ptr_glPushClientAttribDefaultEXT #-}
-ptr_glPushClientAttribDefaultEXT :: FunPtr (GLbitfield -> IO ())
-ptr_glPushClientAttribDefaultEXT = unsafePerformIO $ getCommand "glPushClientAttribDefaultEXT"
-
--- glPushDebugGroup ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPushDebugGroup.xhtml OpenGL 4.x>.
-glPushDebugGroup
-  :: MonadIO m
-  => GLenum -- ^ @source@.
-  -> GLuint -- ^ @id@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @message@ pointing to @COMPSIZE(message,length)@ elements of type @GLchar@.
-  -> m ()
-glPushDebugGroup v1 v2 v3 v4 = liftIO $ dyn486 ptr_glPushDebugGroup v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPushDebugGroup #-}
-ptr_glPushDebugGroup :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glPushDebugGroup = unsafePerformIO $ getCommand "glPushDebugGroup"
-
--- glPushDebugGroupKHR ---------------------------------------------------------
-
--- | This command is an alias for 'glPushDebugGroup'.
-glPushDebugGroupKHR
-  :: MonadIO m
-  => GLenum -- ^ @source@.
-  -> GLuint -- ^ @id@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @message@.
-  -> m ()
-glPushDebugGroupKHR v1 v2 v3 v4 = liftIO $ dyn486 ptr_glPushDebugGroupKHR v1 v2 v3 v4
-
-{-# NOINLINE ptr_glPushDebugGroupKHR #-}
-ptr_glPushDebugGroupKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
-ptr_glPushDebugGroupKHR = unsafePerformIO $ getCommand "glPushDebugGroupKHR"
-
--- glPushGroupMarkerEXT --------------------------------------------------------
-
-glPushGroupMarkerEXT
-  :: MonadIO m
-  => GLsizei -- ^ @length@.
-  -> Ptr GLchar -- ^ @marker@.
-  -> m ()
-glPushGroupMarkerEXT v1 v2 = liftIO $ dyn471 ptr_glPushGroupMarkerEXT v1 v2
-
-{-# NOINLINE ptr_glPushGroupMarkerEXT #-}
-ptr_glPushGroupMarkerEXT :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
-ptr_glPushGroupMarkerEXT = unsafePerformIO $ getCommand "glPushGroupMarkerEXT"
-
--- glPushMatrix ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>.
-glPushMatrix
-  :: MonadIO m
-  => m ()
-glPushMatrix = liftIO $ dyn10 ptr_glPushMatrix
-
-{-# NOINLINE ptr_glPushMatrix #-}
-ptr_glPushMatrix :: FunPtr (IO ())
-ptr_glPushMatrix = unsafePerformIO $ getCommand "glPushMatrix"
-
--- glPushName ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>.
-glPushName
-  :: MonadIO m
-  => GLuint -- ^ @name@ of type @SelectName@.
-  -> m ()
-glPushName v1 = liftIO $ dyn2 ptr_glPushName v1
-
-{-# NOINLINE ptr_glPushName #-}
-ptr_glPushName :: FunPtr (GLuint -> IO ())
-ptr_glPushName = unsafePerformIO $ getCommand "glPushName"
-
--- glQueryCounter --------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glQueryCounter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glQueryCounter.xhtml OpenGL 4.x>.
-glQueryCounter
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @target@.
-  -> m ()
-glQueryCounter v1 v2 = liftIO $ dyn15 ptr_glQueryCounter v1 v2
-
-{-# NOINLINE ptr_glQueryCounter #-}
-ptr_glQueryCounter :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glQueryCounter = unsafePerformIO $ getCommand "glQueryCounter"
-
--- glQueryCounterEXT -----------------------------------------------------------
-
--- | This command is an alias for 'glQueryCounter'.
-glQueryCounterEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @target@.
-  -> m ()
-glQueryCounterEXT v1 v2 = liftIO $ dyn15 ptr_glQueryCounterEXT v1 v2
-
-{-# NOINLINE ptr_glQueryCounterEXT #-}
-ptr_glQueryCounterEXT :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glQueryCounterEXT = unsafePerformIO $ getCommand "glQueryCounterEXT"
-
--- glQueryMatrixxOES -----------------------------------------------------------
-
-glQueryMatrixxOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @mantissa@ pointing to @16@ elements of type @GLfixed@.
-  -> Ptr GLint -- ^ @exponent@ pointing to @16@ elements of type @GLint@.
-  -> m GLbitfield
-glQueryMatrixxOES v1 v2 = liftIO $ dyn670 ptr_glQueryMatrixxOES v1 v2
-
-{-# NOINLINE ptr_glQueryMatrixxOES #-}
-ptr_glQueryMatrixxOES :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
-ptr_glQueryMatrixxOES = unsafePerformIO $ getCommand "glQueryMatrixxOES"
-
--- glQueryObjectParameteruiAMD -------------------------------------------------
-
-glQueryObjectParameteruiAMD
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLuint -- ^ @id@.
-  -> GLenum -- ^ @pname@.
-  -> GLuint -- ^ @param@ of type [OcclusionQueryEventMaskAMD](Graphics-GL-Groups.html#OcclusionQueryEventMaskAMD).
-  -> m ()
-glQueryObjectParameteruiAMD v1 v2 v3 v4 = liftIO $ dyn671 ptr_glQueryObjectParameteruiAMD v1 v2 v3 v4
-
-{-# NOINLINE ptr_glQueryObjectParameteruiAMD #-}
-ptr_glQueryObjectParameteruiAMD :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
-ptr_glQueryObjectParameteruiAMD = unsafePerformIO $ getCommand "glQueryObjectParameteruiAMD"
-
--- glRasterPos2d ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2dv'.
-glRasterPos2d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> m ()
-glRasterPos2d v1 v2 = liftIO $ dyn217 ptr_glRasterPos2d v1 v2
-
-{-# NOINLINE ptr_glRasterPos2d #-}
-ptr_glRasterPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glRasterPos2d = unsafePerformIO $ getCommand "glRasterPos2d"
-
--- glRasterPos2dv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos2dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glRasterPos2dv v1 = liftIO $ dyn39 ptr_glRasterPos2dv v1
-
-{-# NOINLINE ptr_glRasterPos2dv #-}
-ptr_glRasterPos2dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glRasterPos2dv = unsafePerformIO $ getCommand "glRasterPos2dv"
-
--- glRasterPos2f ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2fv'.
-glRasterPos2f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> m ()
-glRasterPos2f v1 v2 = liftIO $ dyn222 ptr_glRasterPos2f v1 v2
-
-{-# NOINLINE ptr_glRasterPos2f #-}
-ptr_glRasterPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glRasterPos2f = unsafePerformIO $ getCommand "glRasterPos2f"
+  glProgramUniform1ui,
+  glProgramUniform1ui64ARB,
+  glProgramUniform1ui64NV,
+  glProgramUniform1ui64vARB,
+  glProgramUniform1ui64vNV,
+  glProgramUniform1uiEXT,
+  glProgramUniform1uiv,
+  glProgramUniform1uivEXT,
+  glProgramUniform2d,
+  glProgramUniform2dEXT,
+  glProgramUniform2dv,
+  glProgramUniform2dvEXT,
+  glProgramUniform2f,
+  glProgramUniform2fEXT,
+  glProgramUniform2fv,
+  glProgramUniform2fvEXT,
+  glProgramUniform2i,
+  glProgramUniform2i64ARB,
+  glProgramUniform2i64NV,
+  glProgramUniform2i64vARB,
+  glProgramUniform2i64vNV,
+  glProgramUniform2iEXT,
+  glProgramUniform2iv,
+  glProgramUniform2ivEXT,
+  glProgramUniform2ui,
+  glProgramUniform2ui64ARB,
+  glProgramUniform2ui64NV,
+  glProgramUniform2ui64vARB,
+  glProgramUniform2ui64vNV,
+  glProgramUniform2uiEXT,
+  glProgramUniform2uiv,
+  glProgramUniform2uivEXT,
+  glProgramUniform3d,
+  glProgramUniform3dEXT,
+  glProgramUniform3dv,
+  glProgramUniform3dvEXT,
+  glProgramUniform3f,
+  glProgramUniform3fEXT,
+  glProgramUniform3fv,
+  glProgramUniform3fvEXT,
+  glProgramUniform3i,
+  glProgramUniform3i64ARB,
+  glProgramUniform3i64NV,
+  glProgramUniform3i64vARB,
+  glProgramUniform3i64vNV,
+  glProgramUniform3iEXT,
+  glProgramUniform3iv,
+  glProgramUniform3ivEXT,
+  glProgramUniform3ui,
+  glProgramUniform3ui64ARB,
+  glProgramUniform3ui64NV,
+  glProgramUniform3ui64vARB,
+  glProgramUniform3ui64vNV,
+  glProgramUniform3uiEXT,
+  glProgramUniform3uiv,
+  glProgramUniform3uivEXT,
+  glProgramUniform4d,
+  glProgramUniform4dEXT,
+  glProgramUniform4dv,
+  glProgramUniform4dvEXT,
+  glProgramUniform4f,
+  glProgramUniform4fEXT,
+  glProgramUniform4fv,
+  glProgramUniform4fvEXT,
+  glProgramUniform4i,
+  glProgramUniform4i64ARB,
+  glProgramUniform4i64NV,
+  glProgramUniform4i64vARB,
+  glProgramUniform4i64vNV,
+  glProgramUniform4iEXT,
+  glProgramUniform4iv,
+  glProgramUniform4ivEXT,
+  glProgramUniform4ui,
+  glProgramUniform4ui64ARB,
+  glProgramUniform4ui64NV,
+  glProgramUniform4ui64vARB,
+  glProgramUniform4ui64vNV,
+  glProgramUniform4uiEXT,
+  glProgramUniform4uiv,
+  glProgramUniform4uivEXT,
+  glProgramUniformHandleui64ARB,
+  glProgramUniformHandleui64IMG,
+  glProgramUniformHandleui64NV,
+  glProgramUniformHandleui64vARB,
+  glProgramUniformHandleui64vIMG,
+  glProgramUniformHandleui64vNV,
+  glProgramUniformMatrix2dv,
+  glProgramUniformMatrix2dvEXT,
+  glProgramUniformMatrix2fv,
+  glProgramUniformMatrix2fvEXT,
+  glProgramUniformMatrix2x3dv,
+  glProgramUniformMatrix2x3dvEXT,
+  glProgramUniformMatrix2x3fv,
+  glProgramUniformMatrix2x3fvEXT,
+  glProgramUniformMatrix2x4dv,
+  glProgramUniformMatrix2x4dvEXT,
+  glProgramUniformMatrix2x4fv,
+  glProgramUniformMatrix2x4fvEXT,
+  glProgramUniformMatrix3dv,
+  glProgramUniformMatrix3dvEXT
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glProgramUniform1ui ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1ui
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> m ()
+glProgramUniform1ui v1 v2 v3 = liftIO $ dyn662 ptr_glProgramUniform1ui v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1ui #-}
+ptr_glProgramUniform1ui :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
+ptr_glProgramUniform1ui = unsafePerformIO $ getCommand "glProgramUniform1ui"
+
+-- glProgramUniform1ui64ARB ----------------------------------------------------
+
+glProgramUniform1ui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> m ()
+glProgramUniform1ui64ARB v1 v2 v3 = liftIO $ dyn663 ptr_glProgramUniform1ui64ARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1ui64ARB #-}
+ptr_glProgramUniform1ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
+ptr_glProgramUniform1ui64ARB = unsafePerformIO $ getCommand "glProgramUniform1ui64ARB"
+
+-- glProgramUniform1ui64NV -----------------------------------------------------
+
+glProgramUniform1ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> m ()
+glProgramUniform1ui64NV v1 v2 v3 = liftIO $ dyn664 ptr_glProgramUniform1ui64NV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1ui64NV #-}
+ptr_glProgramUniform1ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
+ptr_glProgramUniform1ui64NV = unsafePerformIO $ getCommand "glProgramUniform1ui64NV"
+
+-- glProgramUniform1ui64vARB ---------------------------------------------------
+
+glProgramUniform1ui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniform1ui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform1ui64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1ui64vARB #-}
+ptr_glProgramUniform1ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniform1ui64vARB = unsafePerformIO $ getCommand "glProgramUniform1ui64vARB"
+
+-- glProgramUniform1ui64vNV ----------------------------------------------------
+
+glProgramUniform1ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniform1ui64vNV v1 v2 v3 v4 = liftIO $ dyn665 ptr_glProgramUniform1ui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1ui64vNV #-}
+ptr_glProgramUniform1ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniform1ui64vNV = unsafePerformIO $ getCommand "glProgramUniform1ui64vNV"
+
+-- glProgramUniform1uiEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1ui'.
+glProgramUniform1uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> m ()
+glProgramUniform1uiEXT v1 v2 v3 = liftIO $ dyn662 ptr_glProgramUniform1uiEXT v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniform1uiEXT #-}
+ptr_glProgramUniform1uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
+ptr_glProgramUniform1uiEXT = unsafePerformIO $ getCommand "glProgramUniform1uiEXT"
+
+-- glProgramUniform1uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1uiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform1uiv v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform1uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1uiv #-}
+ptr_glProgramUniform1uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform1uiv = unsafePerformIO $ getCommand "glProgramUniform1uiv"
+
+-- glProgramUniform1uivEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform1uiv'.
+glProgramUniform1uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform1uivEXT v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform1uivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1uivEXT #-}
+ptr_glProgramUniform1uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform1uivEXT = unsafePerformIO $ getCommand "glProgramUniform1uivEXT"
+
+-- glProgramUniform2d ----------------------------------------------------------
+
+glProgramUniform2d
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @v0@.
+  -> GLdouble -- ^ @v1@.
+  -> m ()
+glProgramUniform2d v1 v2 v3 v4 = liftIO $ dyn666 ptr_glProgramUniform2d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2d #-}
+ptr_glProgramUniform2d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform2d = unsafePerformIO $ getCommand "glProgramUniform2d"
+
+-- glProgramUniform2dEXT -------------------------------------------------------
+
+glProgramUniform2dEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glProgramUniform2dEXT v1 v2 v3 v4 = liftIO $ dyn666 ptr_glProgramUniform2dEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2dEXT #-}
+ptr_glProgramUniform2dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform2dEXT = unsafePerformIO $ getCommand "glProgramUniform2dEXT"
+
+-- glProgramUniform2dv ---------------------------------------------------------
+
+glProgramUniform2dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform2dv v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform2dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2dv #-}
+ptr_glProgramUniform2dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform2dv = unsafePerformIO $ getCommand "glProgramUniform2dv"
+
+-- glProgramUniform2dvEXT ------------------------------------------------------
+
+glProgramUniform2dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform2dvEXT v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform2dvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2dvEXT #-}
+ptr_glProgramUniform2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform2dvEXT = unsafePerformIO $ getCommand "glProgramUniform2dvEXT"
+
+-- glProgramUniform2f ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2f
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> m ()
+glProgramUniform2f v1 v2 v3 v4 = liftIO $ dyn667 ptr_glProgramUniform2f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2f #-}
+ptr_glProgramUniform2f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform2f = unsafePerformIO $ getCommand "glProgramUniform2f"
+
+-- glProgramUniform2fEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2f'.
+glProgramUniform2fEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> m ()
+glProgramUniform2fEXT v1 v2 v3 v4 = liftIO $ dyn667 ptr_glProgramUniform2fEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2fEXT #-}
+ptr_glProgramUniform2fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform2fEXT = unsafePerformIO $ getCommand "glProgramUniform2fEXT"
+
+-- glProgramUniform2fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform2fv v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform2fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2fv #-}
+ptr_glProgramUniform2fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform2fv = unsafePerformIO $ getCommand "glProgramUniform2fv"
+
+-- glProgramUniform2fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2fv'.
+glProgramUniform2fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform2fvEXT v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform2fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2fvEXT #-}
+ptr_glProgramUniform2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform2fvEXT = unsafePerformIO $ getCommand "glProgramUniform2fvEXT"
+
+-- glProgramUniform2i ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2i
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> m ()
+glProgramUniform2i v1 v2 v3 v4 = liftIO $ dyn668 ptr_glProgramUniform2i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2i #-}
+ptr_glProgramUniform2i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform2i = unsafePerformIO $ getCommand "glProgramUniform2i"
+
+-- glProgramUniform2i64ARB -----------------------------------------------------
+
+glProgramUniform2i64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> m ()
+glProgramUniform2i64ARB v1 v2 v3 v4 = liftIO $ dyn669 ptr_glProgramUniform2i64ARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2i64ARB #-}
+ptr_glProgramUniform2i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> IO ())
+ptr_glProgramUniform2i64ARB = unsafePerformIO $ getCommand "glProgramUniform2i64ARB"
+
+-- glProgramUniform2i64NV ------------------------------------------------------
+
+glProgramUniform2i64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> m ()
+glProgramUniform2i64NV v1 v2 v3 v4 = liftIO $ dyn670 ptr_glProgramUniform2i64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2i64NV #-}
+ptr_glProgramUniform2i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glProgramUniform2i64NV = unsafePerformIO $ getCommand "glProgramUniform2i64NV"
+
+-- glProgramUniform2i64vARB ----------------------------------------------------
+
+glProgramUniform2i64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*2@ elements of type @GLint64@.
+  -> m ()
+glProgramUniform2i64vARB v1 v2 v3 v4 = liftIO $ dyn470 ptr_glProgramUniform2i64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2i64vARB #-}
+ptr_glProgramUniform2i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glProgramUniform2i64vARB = unsafePerformIO $ getCommand "glProgramUniform2i64vARB"
+
+-- glProgramUniform2i64vNV -----------------------------------------------------
+
+glProgramUniform2i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
+  -> m ()
+glProgramUniform2i64vNV v1 v2 v3 v4 = liftIO $ dyn661 ptr_glProgramUniform2i64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2i64vNV #-}
+ptr_glProgramUniform2i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glProgramUniform2i64vNV = unsafePerformIO $ getCommand "glProgramUniform2i64vNV"
+
+-- glProgramUniform2iEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2i'.
+glProgramUniform2iEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> m ()
+glProgramUniform2iEXT v1 v2 v3 v4 = liftIO $ dyn668 ptr_glProgramUniform2iEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2iEXT #-}
+ptr_glProgramUniform2iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform2iEXT = unsafePerformIO $ getCommand "glProgramUniform2iEXT"
+
+-- glProgramUniform2iv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2iv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
+  -> m ()
+glProgramUniform2iv v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform2iv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2iv #-}
+ptr_glProgramUniform2iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform2iv = unsafePerformIO $ getCommand "glProgramUniform2iv"
+
+-- glProgramUniform2ivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2iv'.
+glProgramUniform2ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
+  -> m ()
+glProgramUniform2ivEXT v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform2ivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ivEXT #-}
+ptr_glProgramUniform2ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform2ivEXT = unsafePerformIO $ getCommand "glProgramUniform2ivEXT"
+
+-- glProgramUniform2ui ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2ui
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> m ()
+glProgramUniform2ui v1 v2 v3 v4 = liftIO $ dyn671 ptr_glProgramUniform2ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ui #-}
+ptr_glProgramUniform2ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform2ui = unsafePerformIO $ getCommand "glProgramUniform2ui"
+
+-- glProgramUniform2ui64ARB ----------------------------------------------------
+
+glProgramUniform2ui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> m ()
+glProgramUniform2ui64ARB v1 v2 v3 v4 = liftIO $ dyn672 ptr_glProgramUniform2ui64ARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ui64ARB #-}
+ptr_glProgramUniform2ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> IO ())
+ptr_glProgramUniform2ui64ARB = unsafePerformIO $ getCommand "glProgramUniform2ui64ARB"
+
+-- glProgramUniform2ui64NV -----------------------------------------------------
+
+glProgramUniform2ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> m ()
+glProgramUniform2ui64NV v1 v2 v3 v4 = liftIO $ dyn673 ptr_glProgramUniform2ui64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ui64NV #-}
+ptr_glProgramUniform2ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glProgramUniform2ui64NV = unsafePerformIO $ getCommand "glProgramUniform2ui64NV"
+
+-- glProgramUniform2ui64vARB ---------------------------------------------------
+
+glProgramUniform2ui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*2@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniform2ui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform2ui64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ui64vARB #-}
+ptr_glProgramUniform2ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniform2ui64vARB = unsafePerformIO $ getCommand "glProgramUniform2ui64vARB"
+
+-- glProgramUniform2ui64vNV ----------------------------------------------------
+
+glProgramUniform2ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniform2ui64vNV v1 v2 v3 v4 = liftIO $ dyn665 ptr_glProgramUniform2ui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2ui64vNV #-}
+ptr_glProgramUniform2ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniform2ui64vNV = unsafePerformIO $ getCommand "glProgramUniform2ui64vNV"
+
+-- glProgramUniform2uiEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2ui'.
+glProgramUniform2uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> m ()
+glProgramUniform2uiEXT v1 v2 v3 v4 = liftIO $ dyn671 ptr_glProgramUniform2uiEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2uiEXT #-}
+ptr_glProgramUniform2uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform2uiEXT = unsafePerformIO $ getCommand "glProgramUniform2uiEXT"
+
+-- glProgramUniform2uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform2uiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform2uiv v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform2uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2uiv #-}
+ptr_glProgramUniform2uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform2uiv = unsafePerformIO $ getCommand "glProgramUniform2uiv"
+
+-- glProgramUniform2uivEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform2uiv'.
+glProgramUniform2uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform2uivEXT v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform2uivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform2uivEXT #-}
+ptr_glProgramUniform2uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform2uivEXT = unsafePerformIO $ getCommand "glProgramUniform2uivEXT"
+
+-- glProgramUniform3d ----------------------------------------------------------
+
+glProgramUniform3d
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @v0@.
+  -> GLdouble -- ^ @v1@.
+  -> GLdouble -- ^ @v2@.
+  -> m ()
+glProgramUniform3d v1 v2 v3 v4 v5 = liftIO $ dyn674 ptr_glProgramUniform3d v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3d #-}
+ptr_glProgramUniform3d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform3d = unsafePerformIO $ getCommand "glProgramUniform3d"
+
+-- glProgramUniform3dEXT -------------------------------------------------------
+
+glProgramUniform3dEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glProgramUniform3dEXT v1 v2 v3 v4 v5 = liftIO $ dyn674 ptr_glProgramUniform3dEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3dEXT #-}
+ptr_glProgramUniform3dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform3dEXT = unsafePerformIO $ getCommand "glProgramUniform3dEXT"
+
+-- glProgramUniform3dv ---------------------------------------------------------
+
+glProgramUniform3dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform3dv v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform3dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3dv #-}
+ptr_glProgramUniform3dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform3dv = unsafePerformIO $ getCommand "glProgramUniform3dv"
+
+-- glProgramUniform3dvEXT ------------------------------------------------------
+
+glProgramUniform3dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform3dvEXT v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform3dvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3dvEXT #-}
+ptr_glProgramUniform3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform3dvEXT = unsafePerformIO $ getCommand "glProgramUniform3dvEXT"
+
+-- glProgramUniform3f ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3f
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> m ()
+glProgramUniform3f v1 v2 v3 v4 v5 = liftIO $ dyn675 ptr_glProgramUniform3f v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3f #-}
+ptr_glProgramUniform3f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform3f = unsafePerformIO $ getCommand "glProgramUniform3f"
+
+-- glProgramUniform3fEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3f'.
+glProgramUniform3fEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> m ()
+glProgramUniform3fEXT v1 v2 v3 v4 v5 = liftIO $ dyn675 ptr_glProgramUniform3fEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3fEXT #-}
+ptr_glProgramUniform3fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform3fEXT = unsafePerformIO $ getCommand "glProgramUniform3fEXT"
+
+-- glProgramUniform3fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform3fv v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform3fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3fv #-}
+ptr_glProgramUniform3fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform3fv = unsafePerformIO $ getCommand "glProgramUniform3fv"
+
+-- glProgramUniform3fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3fv'.
+glProgramUniform3fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform3fvEXT v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform3fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3fvEXT #-}
+ptr_glProgramUniform3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform3fvEXT = unsafePerformIO $ getCommand "glProgramUniform3fvEXT"
+
+-- glProgramUniform3i ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3i
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glProgramUniform3i v1 v2 v3 v4 v5 = liftIO $ dyn676 ptr_glProgramUniform3i v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3i #-}
+ptr_glProgramUniform3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform3i = unsafePerformIO $ getCommand "glProgramUniform3i"
+
+-- glProgramUniform3i64ARB -----------------------------------------------------
+
+glProgramUniform3i64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> GLint64 -- ^ @z@.
+  -> m ()
+glProgramUniform3i64ARB v1 v2 v3 v4 v5 = liftIO $ dyn677 ptr_glProgramUniform3i64ARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3i64ARB #-}
+ptr_glProgramUniform3i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
+ptr_glProgramUniform3i64ARB = unsafePerformIO $ getCommand "glProgramUniform3i64ARB"
+
+-- glProgramUniform3i64NV ------------------------------------------------------
+
+glProgramUniform3i64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> m ()
+glProgramUniform3i64NV v1 v2 v3 v4 v5 = liftIO $ dyn678 ptr_glProgramUniform3i64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3i64NV #-}
+ptr_glProgramUniform3i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glProgramUniform3i64NV = unsafePerformIO $ getCommand "glProgramUniform3i64NV"
+
+-- glProgramUniform3i64vARB ----------------------------------------------------
+
+glProgramUniform3i64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
+  -> m ()
+glProgramUniform3i64vARB v1 v2 v3 v4 = liftIO $ dyn470 ptr_glProgramUniform3i64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3i64vARB #-}
+ptr_glProgramUniform3i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glProgramUniform3i64vARB = unsafePerformIO $ getCommand "glProgramUniform3i64vARB"
+
+-- glProgramUniform3i64vNV -----------------------------------------------------
+
+glProgramUniform3i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
+  -> m ()
+glProgramUniform3i64vNV v1 v2 v3 v4 = liftIO $ dyn661 ptr_glProgramUniform3i64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3i64vNV #-}
+ptr_glProgramUniform3i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glProgramUniform3i64vNV = unsafePerformIO $ getCommand "glProgramUniform3i64vNV"
+
+-- glProgramUniform3iEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3i'.
+glProgramUniform3iEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glProgramUniform3iEXT v1 v2 v3 v4 v5 = liftIO $ dyn676 ptr_glProgramUniform3iEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3iEXT #-}
+ptr_glProgramUniform3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform3iEXT = unsafePerformIO $ getCommand "glProgramUniform3iEXT"
+
+-- glProgramUniform3iv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3iv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
+  -> m ()
+glProgramUniform3iv v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform3iv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3iv #-}
+ptr_glProgramUniform3iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform3iv = unsafePerformIO $ getCommand "glProgramUniform3iv"
+
+-- glProgramUniform3ivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3iv'.
+glProgramUniform3ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
+  -> m ()
+glProgramUniform3ivEXT v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform3ivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3ivEXT #-}
+ptr_glProgramUniform3ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform3ivEXT = unsafePerformIO $ getCommand "glProgramUniform3ivEXT"
+
+-- glProgramUniform3ui ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3ui
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> m ()
+glProgramUniform3ui v1 v2 v3 v4 v5 = liftIO $ dyn679 ptr_glProgramUniform3ui v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3ui #-}
+ptr_glProgramUniform3ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform3ui = unsafePerformIO $ getCommand "glProgramUniform3ui"
+
+-- glProgramUniform3ui64ARB ----------------------------------------------------
+
+glProgramUniform3ui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> GLuint64 -- ^ @z@.
+  -> m ()
+glProgramUniform3ui64ARB v1 v2 v3 v4 v5 = liftIO $ dyn680 ptr_glProgramUniform3ui64ARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3ui64ARB #-}
+ptr_glProgramUniform3ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+ptr_glProgramUniform3ui64ARB = unsafePerformIO $ getCommand "glProgramUniform3ui64ARB"
+
+-- glProgramUniform3ui64NV -----------------------------------------------------
+
+glProgramUniform3ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> m ()
+glProgramUniform3ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn681 ptr_glProgramUniform3ui64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3ui64NV #-}
+ptr_glProgramUniform3ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glProgramUniform3ui64NV = unsafePerformIO $ getCommand "glProgramUniform3ui64NV"
+
+-- glProgramUniform3ui64vARB ---------------------------------------------------
+
+glProgramUniform3ui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*3@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniform3ui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform3ui64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3ui64vARB #-}
+ptr_glProgramUniform3ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniform3ui64vARB = unsafePerformIO $ getCommand "glProgramUniform3ui64vARB"
+
+-- glProgramUniform3ui64vNV ----------------------------------------------------
+
+glProgramUniform3ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniform3ui64vNV v1 v2 v3 v4 = liftIO $ dyn665 ptr_glProgramUniform3ui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3ui64vNV #-}
+ptr_glProgramUniform3ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniform3ui64vNV = unsafePerformIO $ getCommand "glProgramUniform3ui64vNV"
+
+-- glProgramUniform3uiEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3ui'.
+glProgramUniform3uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> m ()
+glProgramUniform3uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn679 ptr_glProgramUniform3uiEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3uiEXT #-}
+ptr_glProgramUniform3uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform3uiEXT = unsafePerformIO $ getCommand "glProgramUniform3uiEXT"
+
+-- glProgramUniform3uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3uiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform3uiv v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform3uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3uiv #-}
+ptr_glProgramUniform3uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform3uiv = unsafePerformIO $ getCommand "glProgramUniform3uiv"
+
+-- glProgramUniform3uivEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3uiv'.
+glProgramUniform3uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform3uivEXT v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform3uivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3uivEXT #-}
+ptr_glProgramUniform3uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform3uivEXT = unsafePerformIO $ getCommand "glProgramUniform3uivEXT"
+
+-- glProgramUniform4d ----------------------------------------------------------
+
+glProgramUniform4d
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @v0@.
+  -> GLdouble -- ^ @v1@.
+  -> GLdouble -- ^ @v2@.
+  -> GLdouble -- ^ @v3@.
+  -> m ()
+glProgramUniform4d v1 v2 v3 v4 v5 v6 = liftIO $ dyn682 ptr_glProgramUniform4d v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4d #-}
+ptr_glProgramUniform4d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform4d = unsafePerformIO $ getCommand "glProgramUniform4d"
+
+-- glProgramUniform4dEXT -------------------------------------------------------
+
+glProgramUniform4dEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glProgramUniform4dEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn682 ptr_glProgramUniform4dEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4dEXT #-}
+ptr_glProgramUniform4dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glProgramUniform4dEXT = unsafePerformIO $ getCommand "glProgramUniform4dEXT"
+
+-- glProgramUniform4dv ---------------------------------------------------------
+
+glProgramUniform4dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform4dv v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform4dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4dv #-}
+ptr_glProgramUniform4dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform4dv = unsafePerformIO $ getCommand "glProgramUniform4dv"
+
+-- glProgramUniform4dvEXT ------------------------------------------------------
+
+glProgramUniform4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniform4dvEXT v1 v2 v3 v4 = liftIO $ dyn468 ptr_glProgramUniform4dvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4dvEXT #-}
+ptr_glProgramUniform4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glProgramUniform4dvEXT = unsafePerformIO $ getCommand "glProgramUniform4dvEXT"
+
+-- glProgramUniform4f ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4f
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> GLfloat -- ^ @v3@.
+  -> m ()
+glProgramUniform4f v1 v2 v3 v4 v5 v6 = liftIO $ dyn683 ptr_glProgramUniform4f v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4f #-}
+ptr_glProgramUniform4f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform4f = unsafePerformIO $ getCommand "glProgramUniform4f"
+
+-- glProgramUniform4fEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4f'.
+glProgramUniform4fEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> GLfloat -- ^ @v3@.
+  -> m ()
+glProgramUniform4fEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn683 ptr_glProgramUniform4fEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4fEXT #-}
+ptr_glProgramUniform4fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glProgramUniform4fEXT = unsafePerformIO $ getCommand "glProgramUniform4fEXT"
+
+-- glProgramUniform4fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform4fv v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform4fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4fv #-}
+ptr_glProgramUniform4fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform4fv = unsafePerformIO $ getCommand "glProgramUniform4fv"
+
+-- glProgramUniform4fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4fv'.
+glProgramUniform4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform4fvEXT v1 v2 v3 v4 = liftIO $ dyn469 ptr_glProgramUniform4fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4fvEXT #-}
+ptr_glProgramUniform4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform4fvEXT = unsafePerformIO $ getCommand "glProgramUniform4fvEXT"
+
+-- glProgramUniform4i ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4i
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> GLint -- ^ @v3@.
+  -> m ()
+glProgramUniform4i v1 v2 v3 v4 v5 v6 = liftIO $ dyn684 ptr_glProgramUniform4i v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4i #-}
+ptr_glProgramUniform4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform4i = unsafePerformIO $ getCommand "glProgramUniform4i"
+
+-- glProgramUniform4i64ARB -----------------------------------------------------
+
+glProgramUniform4i64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> GLint64 -- ^ @z@.
+  -> GLint64 -- ^ @w@.
+  -> m ()
+glProgramUniform4i64ARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn685 ptr_glProgramUniform4i64ARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4i64ARB #-}
+ptr_glProgramUniform4i64ARB :: FunPtr (GLuint -> GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
+ptr_glProgramUniform4i64ARB = unsafePerformIO $ getCommand "glProgramUniform4i64ARB"
+
+-- glProgramUniform4i64NV ------------------------------------------------------
+
+glProgramUniform4i64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> GLint64EXT -- ^ @w@.
+  -> m ()
+glProgramUniform4i64NV v1 v2 v3 v4 v5 v6 = liftIO $ dyn686 ptr_glProgramUniform4i64NV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4i64NV #-}
+ptr_glProgramUniform4i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glProgramUniform4i64NV = unsafePerformIO $ getCommand "glProgramUniform4i64NV"
+
+-- glProgramUniform4i64vARB ----------------------------------------------------
+
+glProgramUniform4i64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*4@ elements of type @GLint64@.
+  -> m ()
+glProgramUniform4i64vARB v1 v2 v3 v4 = liftIO $ dyn470 ptr_glProgramUniform4i64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4i64vARB #-}
+ptr_glProgramUniform4i64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glProgramUniform4i64vARB = unsafePerformIO $ getCommand "glProgramUniform4i64vARB"
+
+-- glProgramUniform4i64vNV -----------------------------------------------------
+
+glProgramUniform4i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
+  -> m ()
+glProgramUniform4i64vNV v1 v2 v3 v4 = liftIO $ dyn661 ptr_glProgramUniform4i64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4i64vNV #-}
+ptr_glProgramUniform4i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glProgramUniform4i64vNV = unsafePerformIO $ getCommand "glProgramUniform4i64vNV"
+
+-- glProgramUniform4iEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4i'.
+glProgramUniform4iEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> GLint -- ^ @v3@.
+  -> m ()
+glProgramUniform4iEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn684 ptr_glProgramUniform4iEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4iEXT #-}
+ptr_glProgramUniform4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glProgramUniform4iEXT = unsafePerformIO $ getCommand "glProgramUniform4iEXT"
+
+-- glProgramUniform4iv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4iv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glProgramUniform4iv v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform4iv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4iv #-}
+ptr_glProgramUniform4iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform4iv = unsafePerformIO $ getCommand "glProgramUniform4iv"
+
+-- glProgramUniform4ivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4iv'.
+glProgramUniform4ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glProgramUniform4ivEXT v1 v2 v3 v4 = liftIO $ dyn471 ptr_glProgramUniform4ivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4ivEXT #-}
+ptr_glProgramUniform4ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glProgramUniform4ivEXT = unsafePerformIO $ getCommand "glProgramUniform4ivEXT"
+
+-- glProgramUniform4ui ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4ui
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> GLuint -- ^ @v3@.
+  -> m ()
+glProgramUniform4ui v1 v2 v3 v4 v5 v6 = liftIO $ dyn687 ptr_glProgramUniform4ui v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4ui #-}
+ptr_glProgramUniform4ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform4ui = unsafePerformIO $ getCommand "glProgramUniform4ui"
+
+-- glProgramUniform4ui64ARB ----------------------------------------------------
+
+glProgramUniform4ui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> GLuint64 -- ^ @z@.
+  -> GLuint64 -- ^ @w@.
+  -> m ()
+glProgramUniform4ui64ARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn688 ptr_glProgramUniform4ui64ARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4ui64ARB #-}
+ptr_glProgramUniform4ui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+ptr_glProgramUniform4ui64ARB = unsafePerformIO $ getCommand "glProgramUniform4ui64ARB"
+
+-- glProgramUniform4ui64NV -----------------------------------------------------
+
+glProgramUniform4ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> GLuint64EXT -- ^ @w@.
+  -> m ()
+glProgramUniform4ui64NV v1 v2 v3 v4 v5 v6 = liftIO $ dyn689 ptr_glProgramUniform4ui64NV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4ui64NV #-}
+ptr_glProgramUniform4ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glProgramUniform4ui64NV = unsafePerformIO $ getCommand "glProgramUniform4ui64NV"
+
+-- glProgramUniform4ui64vARB ---------------------------------------------------
+
+glProgramUniform4ui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*4@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniform4ui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform4ui64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4ui64vARB #-}
+ptr_glProgramUniform4ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniform4ui64vARB = unsafePerformIO $ getCommand "glProgramUniform4ui64vARB"
+
+-- glProgramUniform4ui64vNV ----------------------------------------------------
+
+glProgramUniform4ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniform4ui64vNV v1 v2 v3 v4 = liftIO $ dyn665 ptr_glProgramUniform4ui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4ui64vNV #-}
+ptr_glProgramUniform4ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniform4ui64vNV = unsafePerformIO $ getCommand "glProgramUniform4ui64vNV"
+
+-- glProgramUniform4uiEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4ui'.
+glProgramUniform4uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> GLuint -- ^ @v3@.
+  -> m ()
+glProgramUniform4uiEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn687 ptr_glProgramUniform4uiEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramUniform4uiEXT #-}
+ptr_glProgramUniform4uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform4uiEXT = unsafePerformIO $ getCommand "glProgramUniform4uiEXT"
+
+-- glProgramUniform4uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform4uiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform4uiv v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform4uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4uiv #-}
+ptr_glProgramUniform4uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform4uiv = unsafePerformIO $ getCommand "glProgramUniform4uiv"
+
+-- glProgramUniform4uivEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform4uiv'.
+glProgramUniform4uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform4uivEXT v1 v2 v3 v4 = liftIO $ dyn473 ptr_glProgramUniform4uivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform4uivEXT #-}
+ptr_glProgramUniform4uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform4uivEXT = unsafePerformIO $ getCommand "glProgramUniform4uivEXT"
+
+-- glProgramUniformHandleui64ARB -----------------------------------------------
+
+glProgramUniformHandleui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glProgramUniformHandleui64ARB v1 v2 v3 = liftIO $ dyn663 ptr_glProgramUniformHandleui64ARB v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniformHandleui64ARB #-}
+ptr_glProgramUniformHandleui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64ARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64ARB"
+
+-- glProgramUniformHandleui64IMG -----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformHandleui64ARB'.
+glProgramUniformHandleui64IMG
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glProgramUniformHandleui64IMG v1 v2 v3 = liftIO $ dyn663 ptr_glProgramUniformHandleui64IMG v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniformHandleui64IMG #-}
+ptr_glProgramUniformHandleui64IMG :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64IMG = unsafePerformIO $ getCommand "glProgramUniformHandleui64IMG"
+
+-- glProgramUniformHandleui64NV ------------------------------------------------
+
+glProgramUniformHandleui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glProgramUniformHandleui64NV v1 v2 v3 = liftIO $ dyn663 ptr_glProgramUniformHandleui64NV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniformHandleui64NV #-}
+ptr_glProgramUniformHandleui64NV :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64NV = unsafePerformIO $ getCommand "glProgramUniformHandleui64NV"
+
+-- glProgramUniformHandleui64vARB ----------------------------------------------
+
+glProgramUniformHandleui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniformHandleui64vARB v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniformHandleui64vARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniformHandleui64vARB #-}
+ptr_glProgramUniformHandleui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64vARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64vARB"
+
+-- glProgramUniformHandleui64vIMG ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformHandleui64vARB'.
+glProgramUniformHandleui64vIMG
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniformHandleui64vIMG v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniformHandleui64vIMG v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniformHandleui64vIMG #-}
+ptr_glProgramUniformHandleui64vIMG :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64vIMG = unsafePerformIO $ getCommand "glProgramUniformHandleui64vIMG"
+
+-- glProgramUniformHandleui64vNV -----------------------------------------------
+
+glProgramUniformHandleui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glProgramUniformHandleui64vNV v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniformHandleui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniformHandleui64vNV #-}
+ptr_glProgramUniformHandleui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glProgramUniformHandleui64vNV = unsafePerformIO $ getCommand "glProgramUniformHandleui64vNV"
+
+-- glProgramUniformMatrix2dv ---------------------------------------------------
+
+glProgramUniformMatrix2dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2dv #-}
+ptr_glProgramUniformMatrix2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2dv"
+
+-- glProgramUniformMatrix2dvEXT ------------------------------------------------
+
+glProgramUniformMatrix2dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2dvEXT #-}
+ptr_glProgramUniformMatrix2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2dvEXT"
+
+-- glProgramUniformMatrix2fv ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix2fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2fv #-}
+ptr_glProgramUniformMatrix2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2fv"
+
+-- glProgramUniformMatrix2fvEXT ------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix2fv'.
+glProgramUniformMatrix2fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2fvEXT #-}
+ptr_glProgramUniformMatrix2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2fvEXT"
+
+-- glProgramUniformMatrix2x3dv -------------------------------------------------
+
+glProgramUniformMatrix2x3dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x3dv #-}
+ptr_glProgramUniformMatrix2x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dv"
+
+-- glProgramUniformMatrix2x3dvEXT ----------------------------------------------
+
+glProgramUniformMatrix2x3dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2x3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2x3dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x3dvEXT #-}
+ptr_glProgramUniformMatrix2x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dvEXT"
+
+-- glProgramUniformMatrix2x3fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix2x3fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2x3fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2x3fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x3fv #-}
+ptr_glProgramUniformMatrix2x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fv"
+
+-- glProgramUniformMatrix2x3fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix2x3fv'.
+glProgramUniformMatrix2x3fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2x3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2x3fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x3fvEXT #-}
+ptr_glProgramUniformMatrix2x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fvEXT"
+
+-- glProgramUniformMatrix2x4dv -------------------------------------------------
+
+glProgramUniformMatrix2x4dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2x4dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2x4dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x4dv #-}
+ptr_glProgramUniformMatrix2x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dv"
+
+-- glProgramUniformMatrix2x4dvEXT ----------------------------------------------
+
+glProgramUniformMatrix2x4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2x4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix2x4dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x4dvEXT #-}
+ptr_glProgramUniformMatrix2x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dvEXT"
+
+-- glProgramUniformMatrix2x4fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix2x4fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2x4fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2x4fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x4fv #-}
+ptr_glProgramUniformMatrix2x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fv"
+
+-- glProgramUniformMatrix2x4fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix2x4fv'.
+glProgramUniformMatrix2x4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix2x4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix2x4fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x4fvEXT #-}
+ptr_glProgramUniformMatrix2x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix2x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fvEXT"
+
+-- glProgramUniformMatrix3dv ---------------------------------------------------
+
+glProgramUniformMatrix3dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3dv #-}
+ptr_glProgramUniformMatrix3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3dv"
+
+-- glProgramUniformMatrix3dvEXT ------------------------------------------------
+
+glProgramUniformMatrix3dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3dvEXT #-}
+ptr_glProgramUniformMatrix3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3dvEXT"
 
diff --git a/src/Graphics/GL/Functions/F22.hs b/src/Graphics/GL/Functions/F22.hs
--- a/src/Graphics/GL/Functions/F22.hs
+++ b/src/Graphics/GL/Functions/F22.hs
@@ -15,1573 +15,1591 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F22 (
-  glRasterPos2fv,
-  glRasterPos2i,
-  glRasterPos2iv,
-  glRasterPos2s,
-  glRasterPos2sv,
-  glRasterPos2xOES,
-  glRasterPos2xvOES,
-  glRasterPos3d,
-  glRasterPos3dv,
-  glRasterPos3f,
-  glRasterPos3fv,
-  glRasterPos3i,
-  glRasterPos3iv,
-  glRasterPos3s,
-  glRasterPos3sv,
-  glRasterPos3xOES,
-  glRasterPos3xvOES,
-  glRasterPos4d,
-  glRasterPos4dv,
-  glRasterPos4f,
-  glRasterPos4fv,
-  glRasterPos4i,
-  glRasterPos4iv,
-  glRasterPos4s,
-  glRasterPos4sv,
-  glRasterPos4xOES,
-  glRasterPos4xvOES,
-  glRasterSamplesEXT,
-  glReadBuffer,
-  glReadBufferIndexedEXT,
-  glReadBufferNV,
-  glReadInstrumentsSGIX,
-  glReadPixels,
-  glReadnPixels,
-  glReadnPixelsARB,
-  glReadnPixelsEXT,
-  glReadnPixelsKHR,
-  glRectd,
-  glRectdv,
-  glRectf,
-  glRectfv,
-  glRecti,
-  glRectiv,
-  glRects,
-  glRectsv,
-  glRectxOES,
-  glRectxvOES,
-  glReferencePlaneSGIX,
-  glReleaseShaderCompiler,
-  glRenderMode,
-  glRenderbufferStorage,
-  glRenderbufferStorageEXT,
-  glRenderbufferStorageMultisample,
-  glRenderbufferStorageMultisampleANGLE,
-  glRenderbufferStorageMultisampleAPPLE,
-  glRenderbufferStorageMultisampleCoverageNV,
-  glRenderbufferStorageMultisampleEXT,
-  glRenderbufferStorageMultisampleIMG,
-  glRenderbufferStorageMultisampleNV,
-  glRenderbufferStorageOES,
-  glReplacementCodePointerSUN,
-  glReplacementCodeubSUN,
-  glReplacementCodeubvSUN,
-  glReplacementCodeuiColor3fVertex3fSUN,
-  glReplacementCodeuiColor3fVertex3fvSUN,
-  glReplacementCodeuiColor4fNormal3fVertex3fSUN,
-  glReplacementCodeuiColor4fNormal3fVertex3fvSUN,
-  glReplacementCodeuiColor4ubVertex3fSUN,
-  glReplacementCodeuiColor4ubVertex3fvSUN,
-  glReplacementCodeuiNormal3fVertex3fSUN,
-  glReplacementCodeuiNormal3fVertex3fvSUN,
-  glReplacementCodeuiSUN,
-  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN,
-  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,
-  glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN,
-  glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,
-  glReplacementCodeuiTexCoord2fVertex3fSUN,
-  glReplacementCodeuiTexCoord2fVertex3fvSUN,
-  glReplacementCodeuiVertex3fSUN,
-  glReplacementCodeuiVertex3fvSUN,
-  glReplacementCodeuivSUN,
-  glReplacementCodeusSUN,
-  glReplacementCodeusvSUN,
-  glRequestResidentProgramsNV,
-  glResetHistogram,
-  glResetHistogramEXT,
-  glResetMinmax,
-  glResetMinmaxEXT,
-  glResizeBuffersMESA,
-  glResolveDepthValuesNV,
-  glResolveMultisampleFramebufferAPPLE,
-  glResumeTransformFeedback,
-  glResumeTransformFeedbackNV,
-  glRotated,
-  glRotatef,
-  glRotatex,
-  glRotatexOES,
-  glSampleCoverage,
-  glSampleCoverageARB,
-  glSampleCoveragex
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glRasterPos2fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos2fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glRasterPos2fv v1 = liftIO $ dyn41 ptr_glRasterPos2fv v1
-
-{-# NOINLINE ptr_glRasterPos2fv #-}
-ptr_glRasterPos2fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glRasterPos2fv = unsafePerformIO $ getCommand "glRasterPos2fv"
-
--- glRasterPos2i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2iv'.
-glRasterPos2i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glRasterPos2i v1 v2 = liftIO $ dyn266 ptr_glRasterPos2i v1 v2
-
-{-# NOINLINE ptr_glRasterPos2i #-}
-ptr_glRasterPos2i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glRasterPos2i = unsafePerformIO $ getCommand "glRasterPos2i"
-
--- glRasterPos2iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos2iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glRasterPos2iv v1 = liftIO $ dyn43 ptr_glRasterPos2iv v1
-
-{-# NOINLINE ptr_glRasterPos2iv #-}
-ptr_glRasterPos2iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glRasterPos2iv = unsafePerformIO $ getCommand "glRasterPos2iv"
-
--- glRasterPos2s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2sv'.
-glRasterPos2s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glRasterPos2s v1 v2 = liftIO $ dyn672 ptr_glRasterPos2s v1 v2
-
-{-# NOINLINE ptr_glRasterPos2s #-}
-ptr_glRasterPos2s :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glRasterPos2s = unsafePerformIO $ getCommand "glRasterPos2s"
-
--- glRasterPos2sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos2sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glRasterPos2sv v1 = liftIO $ dyn45 ptr_glRasterPos2sv v1
-
-{-# NOINLINE ptr_glRasterPos2sv #-}
-ptr_glRasterPos2sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glRasterPos2sv = unsafePerformIO $ getCommand "glRasterPos2sv"
-
--- glRasterPos2xOES ------------------------------------------------------------
-
-glRasterPos2xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> m ()
-glRasterPos2xOES v1 v2 = liftIO $ dyn224 ptr_glRasterPos2xOES v1 v2
-
-{-# NOINLINE ptr_glRasterPos2xOES #-}
-ptr_glRasterPos2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glRasterPos2xOES = unsafePerformIO $ getCommand "glRasterPos2xOES"
-
--- glRasterPos2xvOES -----------------------------------------------------------
-
-glRasterPos2xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glRasterPos2xvOES v1 = liftIO $ dyn107 ptr_glRasterPos2xvOES v1
-
-{-# NOINLINE ptr_glRasterPos2xvOES #-}
-ptr_glRasterPos2xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glRasterPos2xvOES = unsafePerformIO $ getCommand "glRasterPos2xvOES"
-
--- glRasterPos3d ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3dv'.
-glRasterPos3d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> m ()
-glRasterPos3d v1 v2 v3 = liftIO $ dyn38 ptr_glRasterPos3d v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3d #-}
-ptr_glRasterPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glRasterPos3d = unsafePerformIO $ getCommand "glRasterPos3d"
-
--- glRasterPos3dv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glRasterPos3dv v1 = liftIO $ dyn39 ptr_glRasterPos3dv v1
-
-{-# NOINLINE ptr_glRasterPos3dv #-}
-ptr_glRasterPos3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glRasterPos3dv = unsafePerformIO $ getCommand "glRasterPos3dv"
-
--- glRasterPos3f ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3fv'.
-glRasterPos3f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> m ()
-glRasterPos3f v1 v2 v3 = liftIO $ dyn40 ptr_glRasterPos3f v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3f #-}
-ptr_glRasterPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glRasterPos3f = unsafePerformIO $ getCommand "glRasterPos3f"
-
--- glRasterPos3fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glRasterPos3fv v1 = liftIO $ dyn41 ptr_glRasterPos3fv v1
-
-{-# NOINLINE ptr_glRasterPos3fv #-}
-ptr_glRasterPos3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glRasterPos3fv = unsafePerformIO $ getCommand "glRasterPos3fv"
-
--- glRasterPos3i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3iv'.
-glRasterPos3i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> m ()
-glRasterPos3i v1 v2 v3 = liftIO $ dyn42 ptr_glRasterPos3i v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3i #-}
-ptr_glRasterPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glRasterPos3i = unsafePerformIO $ getCommand "glRasterPos3i"
-
--- glRasterPos3iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glRasterPos3iv v1 = liftIO $ dyn43 ptr_glRasterPos3iv v1
-
-{-# NOINLINE ptr_glRasterPos3iv #-}
-ptr_glRasterPos3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glRasterPos3iv = unsafePerformIO $ getCommand "glRasterPos3iv"
-
--- glRasterPos3s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3sv'.
-glRasterPos3s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glRasterPos3s v1 v2 v3 = liftIO $ dyn44 ptr_glRasterPos3s v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3s #-}
-ptr_glRasterPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glRasterPos3s = unsafePerformIO $ getCommand "glRasterPos3s"
-
--- glRasterPos3sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glRasterPos3sv v1 = liftIO $ dyn45 ptr_glRasterPos3sv v1
-
-{-# NOINLINE ptr_glRasterPos3sv #-}
-ptr_glRasterPos3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glRasterPos3sv = unsafePerformIO $ getCommand "glRasterPos3sv"
-
--- glRasterPos3xOES ------------------------------------------------------------
-
-glRasterPos3xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glRasterPos3xOES v1 v2 v3 = liftIO $ dyn106 ptr_glRasterPos3xOES v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3xOES #-}
-ptr_glRasterPos3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glRasterPos3xOES = unsafePerformIO $ getCommand "glRasterPos3xOES"
-
--- glRasterPos3xvOES -----------------------------------------------------------
-
-glRasterPos3xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
-  -> m ()
-glRasterPos3xvOES v1 = liftIO $ dyn107 ptr_glRasterPos3xvOES v1
-
-{-# NOINLINE ptr_glRasterPos3xvOES #-}
-ptr_glRasterPos3xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glRasterPos3xvOES = unsafePerformIO $ getCommand "glRasterPos3xvOES"
-
--- glRasterPos4d ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4dv'.
-glRasterPos4d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> GLdouble -- ^ @w@ of type @CoordD@.
-  -> m ()
-glRasterPos4d v1 v2 v3 v4 = liftIO $ dyn109 ptr_glRasterPos4d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRasterPos4d #-}
-ptr_glRasterPos4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glRasterPos4d = unsafePerformIO $ getCommand "glRasterPos4d"
-
--- glRasterPos4dv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos4dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glRasterPos4dv v1 = liftIO $ dyn39 ptr_glRasterPos4dv v1
-
-{-# NOINLINE ptr_glRasterPos4dv #-}
-ptr_glRasterPos4dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glRasterPos4dv = unsafePerformIO $ getCommand "glRasterPos4dv"
-
--- glRasterPos4f ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4fv'.
-glRasterPos4f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> GLfloat -- ^ @w@ of type @CoordF@.
-  -> m ()
-glRasterPos4f v1 v2 v3 v4 = liftIO $ dyn49 ptr_glRasterPos4f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRasterPos4f #-}
-ptr_glRasterPos4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glRasterPos4f = unsafePerformIO $ getCommand "glRasterPos4f"
-
--- glRasterPos4fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos4fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glRasterPos4fv v1 = liftIO $ dyn41 ptr_glRasterPos4fv v1
-
-{-# NOINLINE ptr_glRasterPos4fv #-}
-ptr_glRasterPos4fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glRasterPos4fv = unsafePerformIO $ getCommand "glRasterPos4fv"
-
--- glRasterPos4i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4iv'.
-glRasterPos4i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> GLint -- ^ @w@ of type @CoordI@.
-  -> m ()
-glRasterPos4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glRasterPos4i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRasterPos4i #-}
-ptr_glRasterPos4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glRasterPos4i = unsafePerformIO $ getCommand "glRasterPos4i"
-
--- glRasterPos4iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos4iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glRasterPos4iv v1 = liftIO $ dyn43 ptr_glRasterPos4iv v1
-
-{-# NOINLINE ptr_glRasterPos4iv #-}
-ptr_glRasterPos4iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glRasterPos4iv = unsafePerformIO $ getCommand "glRasterPos4iv"
-
--- glRasterPos4s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4sv'.
-glRasterPos4s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> GLshort -- ^ @w@ of type @CoordS@.
-  -> m ()
-glRasterPos4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glRasterPos4s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRasterPos4s #-}
-ptr_glRasterPos4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glRasterPos4s = unsafePerformIO $ getCommand "glRasterPos4s"
-
--- glRasterPos4sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos4sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glRasterPos4sv v1 = liftIO $ dyn45 ptr_glRasterPos4sv v1
-
-{-# NOINLINE ptr_glRasterPos4sv #-}
-ptr_glRasterPos4sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glRasterPos4sv = unsafePerformIO $ getCommand "glRasterPos4sv"
-
--- glRasterPos4xOES ------------------------------------------------------------
-
-glRasterPos4xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> GLfixed -- ^ @w@.
-  -> m ()
-glRasterPos4xOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRasterPos4xOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRasterPos4xOES #-}
-ptr_glRasterPos4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glRasterPos4xOES = unsafePerformIO $ getCommand "glRasterPos4xOES"
-
--- glRasterPos4xvOES -----------------------------------------------------------
-
-glRasterPos4xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
-  -> m ()
-glRasterPos4xvOES v1 = liftIO $ dyn107 ptr_glRasterPos4xvOES v1
-
-{-# NOINLINE ptr_glRasterPos4xvOES #-}
-ptr_glRasterPos4xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glRasterPos4xvOES = unsafePerformIO $ getCommand "glRasterPos4xvOES"
-
--- glRasterSamplesEXT ----------------------------------------------------------
-
-glRasterSamplesEXT
-  :: MonadIO m
-  => GLuint -- ^ @samples@.
-  -> GLboolean -- ^ @fixedsamplelocations@.
-  -> m ()
-glRasterSamplesEXT v1 v2 = liftIO $ dyn673 ptr_glRasterSamplesEXT v1 v2
-
-{-# NOINLINE ptr_glRasterSamplesEXT #-}
-ptr_glRasterSamplesEXT :: FunPtr (GLuint -> GLboolean -> IO ())
-ptr_glRasterSamplesEXT = unsafePerformIO $ getCommand "glRasterSamplesEXT"
-
--- glReadBuffer ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>.
-glReadBuffer
-  :: MonadIO m
-  => GLenum -- ^ @src@ of type [ReadBufferMode](Graphics-GL-Groups.html#ReadBufferMode).
-  -> m ()
-glReadBuffer v1 = liftIO $ dyn4 ptr_glReadBuffer v1
-
-{-# NOINLINE ptr_glReadBuffer #-}
-ptr_glReadBuffer :: FunPtr (GLenum -> IO ())
-ptr_glReadBuffer = unsafePerformIO $ getCommand "glReadBuffer"
-
--- glReadBufferIndexedEXT ------------------------------------------------------
-
-glReadBufferIndexedEXT
-  :: MonadIO m
-  => GLenum -- ^ @src@.
-  -> GLint -- ^ @index@.
-  -> m ()
-glReadBufferIndexedEXT v1 v2 = liftIO $ dyn55 ptr_glReadBufferIndexedEXT v1 v2
-
-{-# NOINLINE ptr_glReadBufferIndexedEXT #-}
-ptr_glReadBufferIndexedEXT :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glReadBufferIndexedEXT = unsafePerformIO $ getCommand "glReadBufferIndexedEXT"
-
--- glReadBufferNV --------------------------------------------------------------
-
-glReadBufferNV
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> m ()
-glReadBufferNV v1 = liftIO $ dyn4 ptr_glReadBufferNV v1
-
-{-# NOINLINE ptr_glReadBufferNV #-}
-ptr_glReadBufferNV :: FunPtr (GLenum -> IO ())
-ptr_glReadBufferNV = unsafePerformIO $ getCommand "glReadBufferNV"
-
--- glReadInstrumentsSGIX -------------------------------------------------------
-
-glReadInstrumentsSGIX
-  :: MonadIO m
-  => GLint -- ^ @marker@.
-  -> m ()
-glReadInstrumentsSGIX v1 = liftIO $ dyn12 ptr_glReadInstrumentsSGIX v1
-
-{-# NOINLINE ptr_glReadInstrumentsSGIX #-}
-ptr_glReadInstrumentsSGIX :: FunPtr (GLint -> IO ())
-ptr_glReadInstrumentsSGIX = unsafePerformIO $ getCommand "glReadInstrumentsSGIX"
-
--- glReadPixels ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadPixels.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadPixels.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>.
-glReadPixels
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @WinCoord@.
-  -> GLint -- ^ @y@ of type @WinCoord@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glReadPixels v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn674 ptr_glReadPixels v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glReadPixels #-}
-ptr_glReadPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glReadPixels = unsafePerformIO $ getCommand "glReadPixels"
-
--- glReadnPixels ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>.
-glReadnPixels
-  :: MonadIO m
-  => GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @data@.
-  -> m ()
-glReadnPixels v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn675 ptr_glReadnPixels v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glReadnPixels #-}
-ptr_glReadnPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glReadnPixels = unsafePerformIO $ getCommand "glReadnPixels"
-
--- glReadnPixelsARB ------------------------------------------------------------
-
--- | This command is an alias for 'glReadnPixels'.
-glReadnPixelsARB
-  :: MonadIO m
-  => GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
-  -> m ()
-glReadnPixelsARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn675 ptr_glReadnPixelsARB v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glReadnPixelsARB #-}
-ptr_glReadnPixelsARB :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glReadnPixelsARB = unsafePerformIO $ getCommand "glReadnPixelsARB"
-
--- glReadnPixelsEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glReadnPixels'.
-glReadnPixelsEXT
-  :: MonadIO m
-  => GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
-  -> m ()
-glReadnPixelsEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn675 ptr_glReadnPixelsEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glReadnPixelsEXT #-}
-ptr_glReadnPixelsEXT :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glReadnPixelsEXT = unsafePerformIO $ getCommand "glReadnPixelsEXT"
-
--- glReadnPixelsKHR ------------------------------------------------------------
-
--- | This command is an alias for 'glReadnPixels'.
-glReadnPixelsKHR
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @WinCoord@.
-  -> GLint -- ^ @y@ of type @WinCoord@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
-  -> m ()
-glReadnPixelsKHR v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn675 ptr_glReadnPixelsKHR v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glReadnPixelsKHR #-}
-ptr_glReadnPixelsKHR :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glReadnPixelsKHR = unsafePerformIO $ getCommand "glReadnPixelsKHR"
-
--- glRectd ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectdv'.
-glRectd
-  :: MonadIO m
-  => GLdouble -- ^ @x1@ of type @CoordD@.
-  -> GLdouble -- ^ @y1@ of type @CoordD@.
-  -> GLdouble -- ^ @x2@ of type @CoordD@.
-  -> GLdouble -- ^ @y2@ of type @CoordD@.
-  -> m ()
-glRectd v1 v2 v3 v4 = liftIO $ dyn109 ptr_glRectd v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRectd #-}
-ptr_glRectd :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glRectd = unsafePerformIO $ getCommand "glRectd"
-
--- glRectdv --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
-glRectdv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v1@ pointing to @2@ elements of type @CoordD@.
-  -> Ptr GLdouble -- ^ @v2@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glRectdv v1 v2 = liftIO $ dyn676 ptr_glRectdv v1 v2
-
-{-# NOINLINE ptr_glRectdv #-}
-ptr_glRectdv :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
-ptr_glRectdv = unsafePerformIO $ getCommand "glRectdv"
-
--- glRectf ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectfv'.
-glRectf
-  :: MonadIO m
-  => GLfloat -- ^ @x1@ of type @CoordF@.
-  -> GLfloat -- ^ @y1@ of type @CoordF@.
-  -> GLfloat -- ^ @x2@ of type @CoordF@.
-  -> GLfloat -- ^ @y2@ of type @CoordF@.
-  -> m ()
-glRectf v1 v2 v3 v4 = liftIO $ dyn49 ptr_glRectf v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRectf #-}
-ptr_glRectf :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glRectf = unsafePerformIO $ getCommand "glRectf"
-
--- glRectfv --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
-glRectfv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v1@ pointing to @2@ elements of type @CoordF@.
-  -> Ptr GLfloat -- ^ @v2@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glRectfv v1 v2 = liftIO $ dyn97 ptr_glRectfv v1 v2
-
-{-# NOINLINE ptr_glRectfv #-}
-ptr_glRectfv :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glRectfv = unsafePerformIO $ getCommand "glRectfv"
-
--- glRecti ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectiv'.
-glRecti
-  :: MonadIO m
-  => GLint -- ^ @x1@ of type @CoordI@.
-  -> GLint -- ^ @y1@ of type @CoordI@.
-  -> GLint -- ^ @x2@ of type @CoordI@.
-  -> GLint -- ^ @y2@ of type @CoordI@.
-  -> m ()
-glRecti v1 v2 v3 v4 = liftIO $ dyn76 ptr_glRecti v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRecti #-}
-ptr_glRecti :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glRecti = unsafePerformIO $ getCommand "glRecti"
-
--- glRectiv --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
-glRectiv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v1@ pointing to @2@ elements of type @CoordI@.
-  -> Ptr GLint -- ^ @v2@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glRectiv v1 v2 = liftIO $ dyn677 ptr_glRectiv v1 v2
-
-{-# NOINLINE ptr_glRectiv #-}
-ptr_glRectiv :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
-ptr_glRectiv = unsafePerformIO $ getCommand "glRectiv"
-
--- glRects ---------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectsv'.
-glRects
-  :: MonadIO m
-  => GLshort -- ^ @x1@ of type @CoordS@.
-  -> GLshort -- ^ @y1@ of type @CoordS@.
-  -> GLshort -- ^ @x2@ of type @CoordS@.
-  -> GLshort -- ^ @y2@ of type @CoordS@.
-  -> m ()
-glRects v1 v2 v3 v4 = liftIO $ dyn113 ptr_glRects v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRects #-}
-ptr_glRects :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glRects = unsafePerformIO $ getCommand "glRects"
-
--- glRectsv --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
-glRectsv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v1@ pointing to @2@ elements of type @CoordS@.
-  -> Ptr GLshort -- ^ @v2@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glRectsv v1 v2 = liftIO $ dyn678 ptr_glRectsv v1 v2
-
-{-# NOINLINE ptr_glRectsv #-}
-ptr_glRectsv :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
-ptr_glRectsv = unsafePerformIO $ getCommand "glRectsv"
-
--- glRectxOES ------------------------------------------------------------------
-
-glRectxOES
-  :: MonadIO m
-  => GLfixed -- ^ @x1@.
-  -> GLfixed -- ^ @y1@.
-  -> GLfixed -- ^ @x2@.
-  -> GLfixed -- ^ @y2@.
-  -> m ()
-glRectxOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRectxOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRectxOES #-}
-ptr_glRectxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glRectxOES = unsafePerformIO $ getCommand "glRectxOES"
-
--- glRectxvOES -----------------------------------------------------------------
-
-glRectxvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @v1@ pointing to @2@ elements of type @GLfixed@.
-  -> Ptr GLfixed -- ^ @v2@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glRectxvOES v1 v2 = liftIO $ dyn679 ptr_glRectxvOES v1 v2
-
-{-# NOINLINE ptr_glRectxvOES #-}
-ptr_glRectxvOES :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
-ptr_glRectxvOES = unsafePerformIO $ getCommand "glRectxvOES"
-
--- glReferencePlaneSGIX --------------------------------------------------------
-
-glReferencePlaneSGIX
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glReferencePlaneSGIX v1 = liftIO $ dyn39 ptr_glReferencePlaneSGIX v1
-
-{-# NOINLINE ptr_glReferencePlaneSGIX #-}
-ptr_glReferencePlaneSGIX :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glReferencePlaneSGIX = unsafePerformIO $ getCommand "glReferencePlaneSGIX"
-
--- glReleaseShaderCompiler -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReleaseShaderCompiler.xhtml OpenGL 4.x>.
-glReleaseShaderCompiler
-  :: MonadIO m
-  => m ()
-glReleaseShaderCompiler = liftIO $ dyn10 ptr_glReleaseShaderCompiler
-
-{-# NOINLINE ptr_glReleaseShaderCompiler #-}
-ptr_glReleaseShaderCompiler :: FunPtr (IO ())
-ptr_glReleaseShaderCompiler = unsafePerformIO $ getCommand "glReleaseShaderCompiler"
-
--- glRenderMode ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRenderMode.xml OpenGL 2.x>.
-glRenderMode
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [RenderingMode](Graphics-GL-Groups.html#RenderingMode).
-  -> m GLint
-glRenderMode v1 = liftIO $ dyn680 ptr_glRenderMode v1
-
-{-# NOINLINE ptr_glRenderMode #-}
-ptr_glRenderMode :: FunPtr (GLenum -> IO GLint)
-ptr_glRenderMode = unsafePerformIO $ getCommand "glRenderMode"
-
--- glRenderbufferStorage -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>.
-glRenderbufferStorage
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorage v1 v2 v3 v4 = liftIO $ dyn681 ptr_glRenderbufferStorage v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRenderbufferStorage #-}
-ptr_glRenderbufferStorage :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorage = unsafePerformIO $ getCommand "glRenderbufferStorage"
-
--- glRenderbufferStorageEXT ----------------------------------------------------
-
--- | This command is an alias for 'glRenderbufferStorage'.
-glRenderbufferStorageEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn681 ptr_glRenderbufferStorageEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRenderbufferStorageEXT #-}
-ptr_glRenderbufferStorageEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageEXT = unsafePerformIO $ getCommand "glRenderbufferStorageEXT"
-
--- glRenderbufferStorageMultisample --------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorageMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>.
-glRenderbufferStorageMultisample
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisample v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisample v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisample #-}
-ptr_glRenderbufferStorageMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glRenderbufferStorageMultisample"
-
--- glRenderbufferStorageMultisampleANGLE ---------------------------------------
-
-glRenderbufferStorageMultisampleANGLE
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleANGLE v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisampleANGLE v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleANGLE #-}
-ptr_glRenderbufferStorageMultisampleANGLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleANGLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleANGLE"
-
--- glRenderbufferStorageMultisampleAPPLE ---------------------------------------
-
-glRenderbufferStorageMultisampleAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisampleAPPLE v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleAPPLE #-}
-ptr_glRenderbufferStorageMultisampleAPPLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleAPPLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleAPPLE"
-
--- glRenderbufferStorageMultisampleCoverageNV ----------------------------------
-
-glRenderbufferStorageMultisampleCoverageNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleCoverageNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn683 ptr_glRenderbufferStorageMultisampleCoverageNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleCoverageNV #-}
-ptr_glRenderbufferStorageMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleCoverageNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleCoverageNV"
-
--- glRenderbufferStorageMultisampleEXT -----------------------------------------
-
--- | This command is an alias for 'glRenderbufferStorageMultisample'.
-glRenderbufferStorageMultisampleEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleEXT #-}
-ptr_glRenderbufferStorageMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleEXT"
-
--- glRenderbufferStorageMultisampleIMG -----------------------------------------
-
-glRenderbufferStorageMultisampleIMG
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleIMG v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisampleIMG v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleIMG #-}
-ptr_glRenderbufferStorageMultisampleIMG :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleIMG = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleIMG"
-
--- glRenderbufferStorageMultisampleNV ------------------------------------------
-
--- | This command is an alias for 'glRenderbufferStorageMultisample'.
-glRenderbufferStorageMultisampleNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageMultisampleNV v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glRenderbufferStorageMultisampleNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glRenderbufferStorageMultisampleNV #-}
-ptr_glRenderbufferStorageMultisampleNV :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageMultisampleNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleNV"
-
--- glRenderbufferStorageOES ----------------------------------------------------
-
-glRenderbufferStorageOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glRenderbufferStorageOES v1 v2 v3 v4 = liftIO $ dyn681 ptr_glRenderbufferStorageOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRenderbufferStorageOES #-}
-ptr_glRenderbufferStorageOES :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glRenderbufferStorageOES = unsafePerformIO $ getCommand "glRenderbufferStorageOES"
-
--- glReplacementCodePointerSUN -------------------------------------------------
-
-glReplacementCodePointerSUN
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type @ReplacementCodeTypeSUN@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
-  -> m ()
-glReplacementCodePointerSUN v1 v2 v3 = liftIO $ dyn684 ptr_glReplacementCodePointerSUN v1 v2 v3
-
-{-# NOINLINE ptr_glReplacementCodePointerSUN #-}
-ptr_glReplacementCodePointerSUN :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
-ptr_glReplacementCodePointerSUN = unsafePerformIO $ getCommand "glReplacementCodePointerSUN"
-
--- glReplacementCodeubSUN ------------------------------------------------------
-
-glReplacementCodeubSUN
-  :: MonadIO m
-  => GLubyte -- ^ @code@.
-  -> m ()
-glReplacementCodeubSUN v1 = liftIO $ dyn466 ptr_glReplacementCodeubSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeubSUN #-}
-ptr_glReplacementCodeubSUN :: FunPtr (GLubyte -> IO ())
-ptr_glReplacementCodeubSUN = unsafePerformIO $ getCommand "glReplacementCodeubSUN"
-
--- glReplacementCodeubvSUN -----------------------------------------------------
-
-glReplacementCodeubvSUN
-  :: MonadIO m
-  => Ptr GLubyte -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
-  -> m ()
-glReplacementCodeubvSUN v1 = liftIO $ dyn101 ptr_glReplacementCodeubvSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeubvSUN #-}
-ptr_glReplacementCodeubvSUN :: FunPtr (Ptr GLubyte -> IO ())
-ptr_glReplacementCodeubvSUN = unsafePerformIO $ getCommand "glReplacementCodeubvSUN"
-
--- glReplacementCodeuiColor3fVertex3fSUN ---------------------------------------
-
-glReplacementCodeuiColor3fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn685 ptr_glReplacementCodeuiColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fSUN #-}
-ptr_glReplacementCodeuiColor3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiColor3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fSUN"
-
--- glReplacementCodeuiColor3fVertex3fvSUN --------------------------------------
-
-glReplacementCodeuiColor3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiColor3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn686 ptr_glReplacementCodeuiColor3fVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fvSUN #-}
-ptr_glReplacementCodeuiColor3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fvSUN"
-
--- glReplacementCodeuiColor4fNormal3fVertex3fSUN -------------------------------
-
-glReplacementCodeuiColor4fNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @a@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn687 ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN #-}
-ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fSUN"
-
--- glReplacementCodeuiColor4fNormal3fVertex3fvSUN ------------------------------
-
-glReplacementCodeuiColor4fNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn688 ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN v1 v2 v3 v4
-
-{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN #-}
-ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fvSUN"
-
--- glReplacementCodeuiColor4ubVertex3fSUN --------------------------------------
-
-glReplacementCodeuiColor4ubVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLubyte -- ^ @r@.
-  -> GLubyte -- ^ @g@.
-  -> GLubyte -- ^ @b@.
-  -> GLubyte -- ^ @a@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn689 ptr_glReplacementCodeuiColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fSUN #-}
-ptr_glReplacementCodeuiColor4ubVertex3fSUN :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fSUN"
-
--- glReplacementCodeuiColor4ubVertex3fvSUN -------------------------------------
-
-glReplacementCodeuiColor4ubVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiColor4ubVertex3fvSUN v1 v2 v3 = liftIO $ dyn690 ptr_glReplacementCodeuiColor4ubVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fvSUN #-}
-ptr_glReplacementCodeuiColor4ubVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fvSUN"
-
--- glReplacementCodeuiNormal3fVertex3fSUN --------------------------------------
-
-glReplacementCodeuiNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn685 ptr_glReplacementCodeuiNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fSUN #-}
-ptr_glReplacementCodeuiNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fSUN"
-
--- glReplacementCodeuiNormal3fVertex3fvSUN -------------------------------------
-
-glReplacementCodeuiNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn686 ptr_glReplacementCodeuiNormal3fVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fvSUN #-}
-ptr_glReplacementCodeuiNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fvSUN"
-
--- glReplacementCodeuiSUN ------------------------------------------------------
-
-glReplacementCodeuiSUN
-  :: MonadIO m
-  => GLuint -- ^ @code@.
-  -> m ()
-glReplacementCodeuiSUN v1 = liftIO $ dyn2 ptr_glReplacementCodeuiSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeuiSUN #-}
-ptr_glReplacementCodeuiSUN :: FunPtr (GLuint -> IO ())
-ptr_glReplacementCodeuiSUN = unsafePerformIO $ getCommand "glReplacementCodeuiSUN"
-
--- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN ---------------------
-
-glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @a@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn691 ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN #-}
-ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN"
-
--- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN --------------------
-
-glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 v5 = liftIO $ dyn692 ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN #-}
-ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN"
-
--- glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN ----------------------------
-
-glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn693 ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN #-}
-ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN"
-
--- glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN ---------------------------
-
-glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn688 ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 v4
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN #-}
-ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN"
-
--- glReplacementCodeuiTexCoord2fVertex3fSUN ------------------------------------
-
-glReplacementCodeuiTexCoord2fVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn694 ptr_glReplacementCodeuiTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fSUN #-}
-ptr_glReplacementCodeuiTexCoord2fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fSUN"
-
--- glReplacementCodeuiTexCoord2fVertex3fvSUN -----------------------------------
-
-glReplacementCodeuiTexCoord2fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiTexCoord2fVertex3fvSUN v1 v2 v3 = liftIO $ dyn686 ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN #-}
-ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fvSUN"
-
--- glReplacementCodeuiVertex3fSUN ----------------------------------------------
-
-glReplacementCodeuiVertex3fSUN
-  :: MonadIO m
-  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glReplacementCodeuiVertex3fSUN v1 v2 v3 v4 = liftIO $ dyn695 ptr_glReplacementCodeuiVertex3fSUN v1 v2 v3 v4
-
-{-# NOINLINE ptr_glReplacementCodeuiVertex3fSUN #-}
-ptr_glReplacementCodeuiVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glReplacementCodeuiVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fSUN"
-
--- glReplacementCodeuiVertex3fvSUN ---------------------------------------------
-
-glReplacementCodeuiVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glReplacementCodeuiVertex3fvSUN v1 v2 = liftIO $ dyn696 ptr_glReplacementCodeuiVertex3fvSUN v1 v2
-
-{-# NOINLINE ptr_glReplacementCodeuiVertex3fvSUN #-}
-ptr_glReplacementCodeuiVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
-ptr_glReplacementCodeuiVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fvSUN"
-
--- glReplacementCodeuivSUN -----------------------------------------------------
-
-glReplacementCodeuivSUN
-  :: MonadIO m
-  => Ptr GLuint -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLuint@.
-  -> m ()
-glReplacementCodeuivSUN v1 = liftIO $ dyn103 ptr_glReplacementCodeuivSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeuivSUN #-}
-ptr_glReplacementCodeuivSUN :: FunPtr (Ptr GLuint -> IO ())
-ptr_glReplacementCodeuivSUN = unsafePerformIO $ getCommand "glReplacementCodeuivSUN"
-
--- glReplacementCodeusSUN ------------------------------------------------------
-
-glReplacementCodeusSUN
-  :: MonadIO m
-  => GLushort -- ^ @code@.
-  -> m ()
-glReplacementCodeusSUN v1 = liftIO $ dyn467 ptr_glReplacementCodeusSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeusSUN #-}
-ptr_glReplacementCodeusSUN :: FunPtr (GLushort -> IO ())
-ptr_glReplacementCodeusSUN = unsafePerformIO $ getCommand "glReplacementCodeusSUN"
-
--- glReplacementCodeusvSUN -----------------------------------------------------
-
-glReplacementCodeusvSUN
-  :: MonadIO m
-  => Ptr GLushort -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLushort@.
-  -> m ()
-glReplacementCodeusvSUN v1 = liftIO $ dyn105 ptr_glReplacementCodeusvSUN v1
-
-{-# NOINLINE ptr_glReplacementCodeusvSUN #-}
-ptr_glReplacementCodeusvSUN :: FunPtr (Ptr GLushort -> IO ())
-ptr_glReplacementCodeusvSUN = unsafePerformIO $ getCommand "glReplacementCodeusvSUN"
-
--- glRequestResidentProgramsNV -------------------------------------------------
-
-glRequestResidentProgramsNV
-  :: MonadIO m
-  => GLsizei -- ^ @n@.
-  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
-  -> m ()
-glRequestResidentProgramsNV v1 v2 = liftIO $ dyn193 ptr_glRequestResidentProgramsNV v1 v2
-
-{-# NOINLINE ptr_glRequestResidentProgramsNV #-}
-ptr_glRequestResidentProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glRequestResidentProgramsNV = unsafePerformIO $ getCommand "glRequestResidentProgramsNV"
-
--- glResetHistogram ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetHistogram.xml OpenGL 2.x>.
-glResetHistogram
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @HistogramTarget@.
-  -> m ()
-glResetHistogram v1 = liftIO $ dyn4 ptr_glResetHistogram v1
-
-{-# NOINLINE ptr_glResetHistogram #-}
-ptr_glResetHistogram :: FunPtr (GLenum -> IO ())
-ptr_glResetHistogram = unsafePerformIO $ getCommand "glResetHistogram"
-
--- glResetHistogramEXT ---------------------------------------------------------
-
--- | This command is an alias for 'glResetHistogram'.
-glResetHistogramEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [HistogramTargetEXT](Graphics-GL-Groups.html#HistogramTargetEXT).
-  -> m ()
-glResetHistogramEXT v1 = liftIO $ dyn4 ptr_glResetHistogramEXT v1
-
-{-# NOINLINE ptr_glResetHistogramEXT #-}
-ptr_glResetHistogramEXT :: FunPtr (GLenum -> IO ())
-ptr_glResetHistogramEXT = unsafePerformIO $ getCommand "glResetHistogramEXT"
-
--- glResetMinmax ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetMinmax.xml OpenGL 2.x>.
-glResetMinmax
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @MinmaxTarget@.
-  -> m ()
-glResetMinmax v1 = liftIO $ dyn4 ptr_glResetMinmax v1
-
-{-# NOINLINE ptr_glResetMinmax #-}
-ptr_glResetMinmax :: FunPtr (GLenum -> IO ())
-ptr_glResetMinmax = unsafePerformIO $ getCommand "glResetMinmax"
-
--- glResetMinmaxEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glResetMinmax'.
-glResetMinmaxEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [MinmaxTargetEXT](Graphics-GL-Groups.html#MinmaxTargetEXT).
-  -> m ()
-glResetMinmaxEXT v1 = liftIO $ dyn4 ptr_glResetMinmaxEXT v1
-
-{-# NOINLINE ptr_glResetMinmaxEXT #-}
-ptr_glResetMinmaxEXT :: FunPtr (GLenum -> IO ())
-ptr_glResetMinmaxEXT = unsafePerformIO $ getCommand "glResetMinmaxEXT"
-
--- glResizeBuffersMESA ---------------------------------------------------------
-
-glResizeBuffersMESA
-  :: MonadIO m
-  => m ()
-glResizeBuffersMESA = liftIO $ dyn10 ptr_glResizeBuffersMESA
-
-{-# NOINLINE ptr_glResizeBuffersMESA #-}
-ptr_glResizeBuffersMESA :: FunPtr (IO ())
-ptr_glResizeBuffersMESA = unsafePerformIO $ getCommand "glResizeBuffersMESA"
-
--- glResolveDepthValuesNV ------------------------------------------------------
-
-glResolveDepthValuesNV
-  :: MonadIO m
-  => m ()
-glResolveDepthValuesNV = liftIO $ dyn10 ptr_glResolveDepthValuesNV
-
-{-# NOINLINE ptr_glResolveDepthValuesNV #-}
-ptr_glResolveDepthValuesNV :: FunPtr (IO ())
-ptr_glResolveDepthValuesNV = unsafePerformIO $ getCommand "glResolveDepthValuesNV"
-
--- glResolveMultisampleFramebufferAPPLE ----------------------------------------
-
-glResolveMultisampleFramebufferAPPLE
-  :: MonadIO m
-  => m ()
-glResolveMultisampleFramebufferAPPLE = liftIO $ dyn10 ptr_glResolveMultisampleFramebufferAPPLE
-
-{-# NOINLINE ptr_glResolveMultisampleFramebufferAPPLE #-}
-ptr_glResolveMultisampleFramebufferAPPLE :: FunPtr (IO ())
-ptr_glResolveMultisampleFramebufferAPPLE = unsafePerformIO $ getCommand "glResolveMultisampleFramebufferAPPLE"
-
--- glResumeTransformFeedback ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glResumeTransformFeedback.xhtml OpenGL 4.x>.
-glResumeTransformFeedback
-  :: MonadIO m
-  => m ()
-glResumeTransformFeedback = liftIO $ dyn10 ptr_glResumeTransformFeedback
-
-{-# NOINLINE ptr_glResumeTransformFeedback #-}
-ptr_glResumeTransformFeedback :: FunPtr (IO ())
-ptr_glResumeTransformFeedback = unsafePerformIO $ getCommand "glResumeTransformFeedback"
-
--- glResumeTransformFeedbackNV -------------------------------------------------
-
--- | This command is an alias for 'glResumeTransformFeedback'.
-glResumeTransformFeedbackNV
-  :: MonadIO m
-  => m ()
-glResumeTransformFeedbackNV = liftIO $ dyn10 ptr_glResumeTransformFeedbackNV
-
-{-# NOINLINE ptr_glResumeTransformFeedbackNV #-}
-ptr_glResumeTransformFeedbackNV :: FunPtr (IO ())
-ptr_glResumeTransformFeedbackNV = unsafePerformIO $ getCommand "glResumeTransformFeedbackNV"
-
--- glRotated -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>.
-glRotated
-  :: MonadIO m
-  => GLdouble -- ^ @angle@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glRotated v1 v2 v3 v4 = liftIO $ dyn109 ptr_glRotated v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRotated #-}
-ptr_glRotated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glRotated = unsafePerformIO $ getCommand "glRotated"
-
--- glRotatef -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>.
-glRotatef
-  :: MonadIO m
-  => GLfloat -- ^ @angle@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glRotatef v1 v2 v3 v4 = liftIO $ dyn49 ptr_glRotatef v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRotatef #-}
-ptr_glRotatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glRotatef = unsafePerformIO $ getCommand "glRotatef"
-
--- glRotatex -------------------------------------------------------------------
-
-glRotatex
-  :: MonadIO m
-  => GLfixed -- ^ @angle@.
-  -> GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glRotatex v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRotatex v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRotatex #-}
-ptr_glRotatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glRotatex = unsafePerformIO $ getCommand "glRotatex"
-
--- glRotatexOES ----------------------------------------------------------------
-
-glRotatexOES
-  :: MonadIO m
-  => GLfixed -- ^ @angle@.
-  -> GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glRotatexOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRotatexOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glRotatexOES #-}
-ptr_glRotatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glRotatexOES = unsafePerformIO $ getCommand "glRotatexOES"
-
--- glSampleCoverage ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glSampleCoverage.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleCoverage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleCoverage.xhtml OpenGL 4.x>.
-glSampleCoverage
-  :: MonadIO m
-  => GLfloat -- ^ @value@.
-  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glSampleCoverage v1 v2 = liftIO $ dyn697 ptr_glSampleCoverage v1 v2
-
-{-# NOINLINE ptr_glSampleCoverage #-}
-ptr_glSampleCoverage :: FunPtr (GLfloat -> GLboolean -> IO ())
-ptr_glSampleCoverage = unsafePerformIO $ getCommand "glSampleCoverage"
-
--- glSampleCoverageARB ---------------------------------------------------------
-
--- | This command is an alias for 'glSampleCoverage'.
-glSampleCoverageARB
-  :: MonadIO m
-  => GLfloat -- ^ @value@.
-  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glSampleCoverageARB v1 v2 = liftIO $ dyn697 ptr_glSampleCoverageARB v1 v2
-
-{-# NOINLINE ptr_glSampleCoverageARB #-}
-ptr_glSampleCoverageARB :: FunPtr (GLfloat -> GLboolean -> IO ())
-ptr_glSampleCoverageARB = unsafePerformIO $ getCommand "glSampleCoverageARB"
-
--- glSampleCoveragex -----------------------------------------------------------
-
-glSampleCoveragex
-  :: MonadIO m
-  => GLclampx -- ^ @value@.
-  -> GLboolean -- ^ @invert@.
-  -> m ()
-glSampleCoveragex v1 v2 = liftIO $ dyn698 ptr_glSampleCoveragex v1 v2
-
-{-# NOINLINE ptr_glSampleCoveragex #-}
-ptr_glSampleCoveragex :: FunPtr (GLclampx -> GLboolean -> IO ())
-ptr_glSampleCoveragex = unsafePerformIO $ getCommand "glSampleCoveragex"
+  glProgramUniformMatrix3fv,
+  glProgramUniformMatrix3fvEXT,
+  glProgramUniformMatrix3x2dv,
+  glProgramUniformMatrix3x2dvEXT,
+  glProgramUniformMatrix3x2fv,
+  glProgramUniformMatrix3x2fvEXT,
+  glProgramUniformMatrix3x4dv,
+  glProgramUniformMatrix3x4dvEXT,
+  glProgramUniformMatrix3x4fv,
+  glProgramUniformMatrix3x4fvEXT,
+  glProgramUniformMatrix4dv,
+  glProgramUniformMatrix4dvEXT,
+  glProgramUniformMatrix4fv,
+  glProgramUniformMatrix4fvEXT,
+  glProgramUniformMatrix4x2dv,
+  glProgramUniformMatrix4x2dvEXT,
+  glProgramUniformMatrix4x2fv,
+  glProgramUniformMatrix4x2fvEXT,
+  glProgramUniformMatrix4x3dv,
+  glProgramUniformMatrix4x3dvEXT,
+  glProgramUniformMatrix4x3fv,
+  glProgramUniformMatrix4x3fvEXT,
+  glProgramUniformui64NV,
+  glProgramUniformui64vNV,
+  glProgramVertexLimitNV,
+  glProvokingVertex,
+  glProvokingVertexEXT,
+  glPushAttrib,
+  glPushClientAttrib,
+  glPushClientAttribDefaultEXT,
+  glPushDebugGroup,
+  glPushDebugGroupKHR,
+  glPushGroupMarkerEXT,
+  glPushMatrix,
+  glPushName,
+  glQueryCounter,
+  glQueryCounterEXT,
+  glQueryMatrixxOES,
+  glQueryObjectParameteruiAMD,
+  glRasterPos2d,
+  glRasterPos2dv,
+  glRasterPos2f,
+  glRasterPos2fv,
+  glRasterPos2i,
+  glRasterPos2iv,
+  glRasterPos2s,
+  glRasterPos2sv,
+  glRasterPos2xOES,
+  glRasterPos2xvOES,
+  glRasterPos3d,
+  glRasterPos3dv,
+  glRasterPos3f,
+  glRasterPos3fv,
+  glRasterPos3i,
+  glRasterPos3iv,
+  glRasterPos3s,
+  glRasterPos3sv,
+  glRasterPos3xOES,
+  glRasterPos3xvOES,
+  glRasterPos4d,
+  glRasterPos4dv,
+  glRasterPos4f,
+  glRasterPos4fv,
+  glRasterPos4i,
+  glRasterPos4iv,
+  glRasterPos4s,
+  glRasterPos4sv,
+  glRasterPos4xOES,
+  glRasterPos4xvOES,
+  glRasterSamplesEXT,
+  glReadBuffer,
+  glReadBufferIndexedEXT,
+  glReadBufferNV,
+  glReadInstrumentsSGIX,
+  glReadPixels,
+  glReadnPixels,
+  glReadnPixelsARB,
+  glReadnPixelsEXT,
+  glReadnPixelsKHR,
+  glRectd,
+  glRectdv,
+  glRectf,
+  glRectfv,
+  glRecti,
+  glRectiv,
+  glRects,
+  glRectsv,
+  glRectxOES,
+  glRectxvOES,
+  glReferencePlaneSGIX,
+  glReleaseKeyedMutexWin32EXT,
+  glReleaseShaderCompiler,
+  glRenderGpuMaskNV,
+  glRenderMode,
+  glRenderbufferStorage,
+  glRenderbufferStorageEXT,
+  glRenderbufferStorageMultisample,
+  glRenderbufferStorageMultisampleANGLE,
+  glRenderbufferStorageMultisampleAPPLE,
+  glRenderbufferStorageMultisampleCoverageNV
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glProgramUniformMatrix3fv ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix3fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3fv #-}
+ptr_glProgramUniformMatrix3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3fv"
+
+-- glProgramUniformMatrix3fvEXT ------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix3fv'.
+glProgramUniformMatrix3fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3fvEXT #-}
+ptr_glProgramUniformMatrix3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3fvEXT"
+
+-- glProgramUniformMatrix3x2dv -------------------------------------------------
+
+glProgramUniformMatrix3x2dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3x2dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3x2dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x2dv #-}
+ptr_glProgramUniformMatrix3x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dv"
+
+-- glProgramUniformMatrix3x2dvEXT ----------------------------------------------
+
+glProgramUniformMatrix3x2dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3x2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3x2dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x2dvEXT #-}
+ptr_glProgramUniformMatrix3x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dvEXT"
+
+-- glProgramUniformMatrix3x2fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix3x2fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3x2fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3x2fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x2fv #-}
+ptr_glProgramUniformMatrix3x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fv"
+
+-- glProgramUniformMatrix3x2fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix3x2fv'.
+glProgramUniformMatrix3x2fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3x2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3x2fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x2fvEXT #-}
+ptr_glProgramUniformMatrix3x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fvEXT"
+
+-- glProgramUniformMatrix3x4dv -------------------------------------------------
+
+glProgramUniformMatrix3x4dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3x4dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3x4dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x4dv #-}
+ptr_glProgramUniformMatrix3x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dv"
+
+-- glProgramUniformMatrix3x4dvEXT ----------------------------------------------
+
+glProgramUniformMatrix3x4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix3x4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix3x4dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x4dvEXT #-}
+ptr_glProgramUniformMatrix3x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix3x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dvEXT"
+
+-- glProgramUniformMatrix3x4fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix3x4fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3x4fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3x4fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x4fv #-}
+ptr_glProgramUniformMatrix3x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fv"
+
+-- glProgramUniformMatrix3x4fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix3x4fv'.
+glProgramUniformMatrix3x4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix3x4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix3x4fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix3x4fvEXT #-}
+ptr_glProgramUniformMatrix3x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix3x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fvEXT"
+
+-- glProgramUniformMatrix4dv ---------------------------------------------------
+
+glProgramUniformMatrix4dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4dv #-}
+ptr_glProgramUniformMatrix4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4dv"
+
+-- glProgramUniformMatrix4dvEXT ------------------------------------------------
+
+glProgramUniformMatrix4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4dvEXT #-}
+ptr_glProgramUniformMatrix4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4dvEXT"
+
+-- glProgramUniformMatrix4fv ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix4fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4fv #-}
+ptr_glProgramUniformMatrix4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4fv"
+
+-- glProgramUniformMatrix4fvEXT ------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix4fv'.
+glProgramUniformMatrix4fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4fvEXT #-}
+ptr_glProgramUniformMatrix4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4fvEXT"
+
+-- glProgramUniformMatrix4x2dv -------------------------------------------------
+
+glProgramUniformMatrix4x2dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4x2dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4x2dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x2dv #-}
+ptr_glProgramUniformMatrix4x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dv"
+
+-- glProgramUniformMatrix4x2dvEXT ----------------------------------------------
+
+glProgramUniformMatrix4x2dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4x2dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4x2dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x2dvEXT #-}
+ptr_glProgramUniformMatrix4x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dvEXT"
+
+-- glProgramUniformMatrix4x2fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix4x2fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4x2fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4x2fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x2fv #-}
+ptr_glProgramUniformMatrix4x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fv"
+
+-- glProgramUniformMatrix4x2fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix4x2fv'.
+glProgramUniformMatrix4x2fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4x2fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4x2fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x2fvEXT #-}
+ptr_glProgramUniformMatrix4x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fvEXT"
+
+-- glProgramUniformMatrix4x3dv -------------------------------------------------
+
+glProgramUniformMatrix4x3dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4x3dv v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4x3dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x3dv #-}
+ptr_glProgramUniformMatrix4x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dv"
+
+-- glProgramUniformMatrix4x3dvEXT ----------------------------------------------
+
+glProgramUniformMatrix4x3dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix4x3dvEXT v1 v2 v3 v4 v5 = liftIO $ dyn690 ptr_glProgramUniformMatrix4x3dvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x3dvEXT #-}
+ptr_glProgramUniformMatrix4x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix4x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dvEXT"
+
+-- glProgramUniformMatrix4x3fv -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniformMatrix4x3fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4x3fv v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4x3fv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x3fv #-}
+ptr_glProgramUniformMatrix4x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fv"
+
+-- glProgramUniformMatrix4x3fvEXT ----------------------------------------------
+
+-- | This command is an alias for 'glProgramUniformMatrix4x3fv'.
+glProgramUniformMatrix4x3fvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniformMatrix4x3fvEXT v1 v2 v3 v4 v5 = liftIO $ dyn691 ptr_glProgramUniformMatrix4x3fvEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix4x3fvEXT #-}
+ptr_glProgramUniformMatrix4x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glProgramUniformMatrix4x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fvEXT"
+
+-- glProgramUniformui64NV ------------------------------------------------------
+
+glProgramUniformui64NV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @value@.
+  -> m ()
+glProgramUniformui64NV v1 v2 v3 = liftIO $ dyn664 ptr_glProgramUniformui64NV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramUniformui64NV #-}
+ptr_glProgramUniformui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
+ptr_glProgramUniformui64NV = unsafePerformIO $ getCommand "glProgramUniformui64NV"
+
+-- glProgramUniformui64vNV -----------------------------------------------------
+
+glProgramUniformui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniformui64vNV v1 v2 v3 v4 = liftIO $ dyn665 ptr_glProgramUniformui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniformui64vNV #-}
+ptr_glProgramUniformui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniformui64vNV = unsafePerformIO $ getCommand "glProgramUniformui64vNV"
+
+-- glProgramVertexLimitNV ------------------------------------------------------
+
+glProgramVertexLimitNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLint -- ^ @limit@.
+  -> m ()
+glProgramVertexLimitNV v1 v2 = liftIO $ dyn56 ptr_glProgramVertexLimitNV v1 v2
+
+{-# NOINLINE ptr_glProgramVertexLimitNV #-}
+ptr_glProgramVertexLimitNV :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glProgramVertexLimitNV = unsafePerformIO $ getCommand "glProgramVertexLimitNV"
+
+-- glProvokingVertex -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glProvokingVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glProvokingVertex.xhtml OpenGL 4.x>.
+glProvokingVertex
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> m ()
+glProvokingVertex v1 = liftIO $ dyn5 ptr_glProvokingVertex v1
+
+{-# NOINLINE ptr_glProvokingVertex #-}
+ptr_glProvokingVertex :: FunPtr (GLenum -> IO ())
+ptr_glProvokingVertex = unsafePerformIO $ getCommand "glProvokingVertex"
+
+-- glProvokingVertexEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glProvokingVertex'.
+glProvokingVertexEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> m ()
+glProvokingVertexEXT v1 = liftIO $ dyn5 ptr_glProvokingVertexEXT v1
+
+{-# NOINLINE ptr_glProvokingVertexEXT #-}
+ptr_glProvokingVertexEXT :: FunPtr (GLenum -> IO ())
+ptr_glProvokingVertexEXT = unsafePerformIO $ getCommand "glProvokingVertexEXT"
+
+-- glPushAttrib ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>.
+glPushAttrib
+  :: MonadIO m
+  => GLbitfield -- ^ @mask@ of type [AttribMask](Graphics-GL-Groups.html#AttribMask).
+  -> m ()
+glPushAttrib v1 = liftIO $ dyn72 ptr_glPushAttrib v1
+
+{-# NOINLINE ptr_glPushAttrib #-}
+ptr_glPushAttrib :: FunPtr (GLbitfield -> IO ())
+ptr_glPushAttrib = unsafePerformIO $ getCommand "glPushAttrib"
+
+-- glPushClientAttrib ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>.
+glPushClientAttrib
+  :: MonadIO m
+  => GLbitfield -- ^ @mask@ of type [ClientAttribMask](Graphics-GL-Groups.html#ClientAttribMask).
+  -> m ()
+glPushClientAttrib v1 = liftIO $ dyn72 ptr_glPushClientAttrib v1
+
+{-# NOINLINE ptr_glPushClientAttrib #-}
+ptr_glPushClientAttrib :: FunPtr (GLbitfield -> IO ())
+ptr_glPushClientAttrib = unsafePerformIO $ getCommand "glPushClientAttrib"
+
+-- glPushClientAttribDefaultEXT ------------------------------------------------
+
+glPushClientAttribDefaultEXT
+  :: MonadIO m
+  => GLbitfield -- ^ @mask@ of type [ClientAttribMask](Graphics-GL-Groups.html#ClientAttribMask).
+  -> m ()
+glPushClientAttribDefaultEXT v1 = liftIO $ dyn72 ptr_glPushClientAttribDefaultEXT v1
+
+{-# NOINLINE ptr_glPushClientAttribDefaultEXT #-}
+ptr_glPushClientAttribDefaultEXT :: FunPtr (GLbitfield -> IO ())
+ptr_glPushClientAttribDefaultEXT = unsafePerformIO $ getCommand "glPushClientAttribDefaultEXT"
+
+-- glPushDebugGroup ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPushDebugGroup.xhtml OpenGL 4.x>.
+glPushDebugGroup
+  :: MonadIO m
+  => GLenum -- ^ @source@.
+  -> GLuint -- ^ @id@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @message@ pointing to @COMPSIZE(message,length)@ elements of type @GLchar@.
+  -> m ()
+glPushDebugGroup v1 v2 v3 v4 = liftIO $ dyn502 ptr_glPushDebugGroup v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPushDebugGroup #-}
+ptr_glPushDebugGroup :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glPushDebugGroup = unsafePerformIO $ getCommand "glPushDebugGroup"
+
+-- glPushDebugGroupKHR ---------------------------------------------------------
+
+-- | This command is an alias for 'glPushDebugGroup'.
+glPushDebugGroupKHR
+  :: MonadIO m
+  => GLenum -- ^ @source@.
+  -> GLuint -- ^ @id@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @message@.
+  -> m ()
+glPushDebugGroupKHR v1 v2 v3 v4 = liftIO $ dyn502 ptr_glPushDebugGroupKHR v1 v2 v3 v4
+
+{-# NOINLINE ptr_glPushDebugGroupKHR #-}
+ptr_glPushDebugGroupKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
+ptr_glPushDebugGroupKHR = unsafePerformIO $ getCommand "glPushDebugGroupKHR"
+
+-- glPushGroupMarkerEXT --------------------------------------------------------
+
+glPushGroupMarkerEXT
+  :: MonadIO m
+  => GLsizei -- ^ @length@.
+  -> Ptr GLchar -- ^ @marker@.
+  -> m ()
+glPushGroupMarkerEXT v1 v2 = liftIO $ dyn485 ptr_glPushGroupMarkerEXT v1 v2
+
+{-# NOINLINE ptr_glPushGroupMarkerEXT #-}
+ptr_glPushGroupMarkerEXT :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
+ptr_glPushGroupMarkerEXT = unsafePerformIO $ getCommand "glPushGroupMarkerEXT"
+
+-- glPushMatrix ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>.
+glPushMatrix
+  :: MonadIO m
+  => m ()
+glPushMatrix = liftIO $ dyn11 ptr_glPushMatrix
+
+{-# NOINLINE ptr_glPushMatrix #-}
+ptr_glPushMatrix :: FunPtr (IO ())
+ptr_glPushMatrix = unsafePerformIO $ getCommand "glPushMatrix"
+
+-- glPushName ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>.
+glPushName
+  :: MonadIO m
+  => GLuint -- ^ @name@ of type @SelectName@.
+  -> m ()
+glPushName v1 = liftIO $ dyn3 ptr_glPushName v1
+
+{-# NOINLINE ptr_glPushName #-}
+ptr_glPushName :: FunPtr (GLuint -> IO ())
+ptr_glPushName = unsafePerformIO $ getCommand "glPushName"
+
+-- glQueryCounter --------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glQueryCounter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glQueryCounter.xhtml OpenGL 4.x>.
+glQueryCounter
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @target@.
+  -> m ()
+glQueryCounter v1 v2 = liftIO $ dyn16 ptr_glQueryCounter v1 v2
+
+{-# NOINLINE ptr_glQueryCounter #-}
+ptr_glQueryCounter :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glQueryCounter = unsafePerformIO $ getCommand "glQueryCounter"
+
+-- glQueryCounterEXT -----------------------------------------------------------
+
+-- | This command is an alias for 'glQueryCounter'.
+glQueryCounterEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @target@.
+  -> m ()
+glQueryCounterEXT v1 v2 = liftIO $ dyn16 ptr_glQueryCounterEXT v1 v2
+
+{-# NOINLINE ptr_glQueryCounterEXT #-}
+ptr_glQueryCounterEXT :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glQueryCounterEXT = unsafePerformIO $ getCommand "glQueryCounterEXT"
+
+-- glQueryMatrixxOES -----------------------------------------------------------
+
+glQueryMatrixxOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @mantissa@ pointing to @16@ elements of type @GLfixed@.
+  -> Ptr GLint -- ^ @exponent@ pointing to @16@ elements of type @GLint@.
+  -> m GLbitfield
+glQueryMatrixxOES v1 v2 = liftIO $ dyn692 ptr_glQueryMatrixxOES v1 v2
+
+{-# NOINLINE ptr_glQueryMatrixxOES #-}
+ptr_glQueryMatrixxOES :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
+ptr_glQueryMatrixxOES = unsafePerformIO $ getCommand "glQueryMatrixxOES"
+
+-- glQueryObjectParameteruiAMD -------------------------------------------------
+
+glQueryObjectParameteruiAMD
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> GLuint -- ^ @param@ of type [OcclusionQueryEventMaskAMD](Graphics-GL-Groups.html#OcclusionQueryEventMaskAMD).
+  -> m ()
+glQueryObjectParameteruiAMD v1 v2 v3 v4 = liftIO $ dyn693 ptr_glQueryObjectParameteruiAMD v1 v2 v3 v4
+
+{-# NOINLINE ptr_glQueryObjectParameteruiAMD #-}
+ptr_glQueryObjectParameteruiAMD :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
+ptr_glQueryObjectParameteruiAMD = unsafePerformIO $ getCommand "glQueryObjectParameteruiAMD"
+
+-- glRasterPos2d ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2dv'.
+glRasterPos2d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> m ()
+glRasterPos2d v1 v2 = liftIO $ dyn220 ptr_glRasterPos2d v1 v2
+
+{-# NOINLINE ptr_glRasterPos2d #-}
+ptr_glRasterPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glRasterPos2d = unsafePerformIO $ getCommand "glRasterPos2d"
+
+-- glRasterPos2dv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos2dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glRasterPos2dv v1 = liftIO $ dyn40 ptr_glRasterPos2dv v1
+
+{-# NOINLINE ptr_glRasterPos2dv #-}
+ptr_glRasterPos2dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glRasterPos2dv = unsafePerformIO $ getCommand "glRasterPos2dv"
+
+-- glRasterPos2f ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2fv'.
+glRasterPos2f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> m ()
+glRasterPos2f v1 v2 = liftIO $ dyn225 ptr_glRasterPos2f v1 v2
+
+{-# NOINLINE ptr_glRasterPos2f #-}
+ptr_glRasterPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glRasterPos2f = unsafePerformIO $ getCommand "glRasterPos2f"
+
+-- glRasterPos2fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos2fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glRasterPos2fv v1 = liftIO $ dyn42 ptr_glRasterPos2fv v1
+
+{-# NOINLINE ptr_glRasterPos2fv #-}
+ptr_glRasterPos2fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glRasterPos2fv = unsafePerformIO $ getCommand "glRasterPos2fv"
+
+-- glRasterPos2i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2iv'.
+glRasterPos2i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glRasterPos2i v1 v2 = liftIO $ dyn270 ptr_glRasterPos2i v1 v2
+
+{-# NOINLINE ptr_glRasterPos2i #-}
+ptr_glRasterPos2i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glRasterPos2i = unsafePerformIO $ getCommand "glRasterPos2i"
+
+-- glRasterPos2iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos2iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glRasterPos2iv v1 = liftIO $ dyn44 ptr_glRasterPos2iv v1
+
+{-# NOINLINE ptr_glRasterPos2iv #-}
+ptr_glRasterPos2iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glRasterPos2iv = unsafePerformIO $ getCommand "glRasterPos2iv"
+
+-- glRasterPos2s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos2sv'.
+glRasterPos2s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glRasterPos2s v1 v2 = liftIO $ dyn694 ptr_glRasterPos2s v1 v2
+
+{-# NOINLINE ptr_glRasterPos2s #-}
+ptr_glRasterPos2s :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glRasterPos2s = unsafePerformIO $ getCommand "glRasterPos2s"
+
+-- glRasterPos2sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos2sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glRasterPos2sv v1 = liftIO $ dyn46 ptr_glRasterPos2sv v1
+
+{-# NOINLINE ptr_glRasterPos2sv #-}
+ptr_glRasterPos2sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glRasterPos2sv = unsafePerformIO $ getCommand "glRasterPos2sv"
+
+-- glRasterPos2xOES ------------------------------------------------------------
+
+glRasterPos2xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> m ()
+glRasterPos2xOES v1 v2 = liftIO $ dyn227 ptr_glRasterPos2xOES v1 v2
+
+{-# NOINLINE ptr_glRasterPos2xOES #-}
+ptr_glRasterPos2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glRasterPos2xOES = unsafePerformIO $ getCommand "glRasterPos2xOES"
+
+-- glRasterPos2xvOES -----------------------------------------------------------
+
+glRasterPos2xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glRasterPos2xvOES v1 = liftIO $ dyn110 ptr_glRasterPos2xvOES v1
+
+{-# NOINLINE ptr_glRasterPos2xvOES #-}
+ptr_glRasterPos2xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glRasterPos2xvOES = unsafePerformIO $ getCommand "glRasterPos2xvOES"
+
+-- glRasterPos3d ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3dv'.
+glRasterPos3d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> m ()
+glRasterPos3d v1 v2 v3 = liftIO $ dyn39 ptr_glRasterPos3d v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3d #-}
+ptr_glRasterPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glRasterPos3d = unsafePerformIO $ getCommand "glRasterPos3d"
+
+-- glRasterPos3dv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glRasterPos3dv v1 = liftIO $ dyn40 ptr_glRasterPos3dv v1
+
+{-# NOINLINE ptr_glRasterPos3dv #-}
+ptr_glRasterPos3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glRasterPos3dv = unsafePerformIO $ getCommand "glRasterPos3dv"
+
+-- glRasterPos3f ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3fv'.
+glRasterPos3f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> m ()
+glRasterPos3f v1 v2 v3 = liftIO $ dyn41 ptr_glRasterPos3f v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3f #-}
+ptr_glRasterPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glRasterPos3f = unsafePerformIO $ getCommand "glRasterPos3f"
+
+-- glRasterPos3fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glRasterPos3fv v1 = liftIO $ dyn42 ptr_glRasterPos3fv v1
+
+{-# NOINLINE ptr_glRasterPos3fv #-}
+ptr_glRasterPos3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glRasterPos3fv = unsafePerformIO $ getCommand "glRasterPos3fv"
+
+-- glRasterPos3i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3iv'.
+glRasterPos3i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> m ()
+glRasterPos3i v1 v2 v3 = liftIO $ dyn43 ptr_glRasterPos3i v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3i #-}
+ptr_glRasterPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glRasterPos3i = unsafePerformIO $ getCommand "glRasterPos3i"
+
+-- glRasterPos3iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glRasterPos3iv v1 = liftIO $ dyn44 ptr_glRasterPos3iv v1
+
+{-# NOINLINE ptr_glRasterPos3iv #-}
+ptr_glRasterPos3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glRasterPos3iv = unsafePerformIO $ getCommand "glRasterPos3iv"
+
+-- glRasterPos3s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3sv'.
+glRasterPos3s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glRasterPos3s v1 v2 v3 = liftIO $ dyn45 ptr_glRasterPos3s v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3s #-}
+ptr_glRasterPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glRasterPos3s = unsafePerformIO $ getCommand "glRasterPos3s"
+
+-- glRasterPos3sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glRasterPos3sv v1 = liftIO $ dyn46 ptr_glRasterPos3sv v1
+
+{-# NOINLINE ptr_glRasterPos3sv #-}
+ptr_glRasterPos3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glRasterPos3sv = unsafePerformIO $ getCommand "glRasterPos3sv"
+
+-- glRasterPos3xOES ------------------------------------------------------------
+
+glRasterPos3xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glRasterPos3xOES v1 v2 v3 = liftIO $ dyn109 ptr_glRasterPos3xOES v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3xOES #-}
+ptr_glRasterPos3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glRasterPos3xOES = unsafePerformIO $ getCommand "glRasterPos3xOES"
+
+-- glRasterPos3xvOES -----------------------------------------------------------
+
+glRasterPos3xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
+  -> m ()
+glRasterPos3xvOES v1 = liftIO $ dyn110 ptr_glRasterPos3xvOES v1
+
+{-# NOINLINE ptr_glRasterPos3xvOES #-}
+ptr_glRasterPos3xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glRasterPos3xvOES = unsafePerformIO $ getCommand "glRasterPos3xvOES"
+
+-- glRasterPos4d ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4dv'.
+glRasterPos4d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> GLdouble -- ^ @w@ of type @CoordD@.
+  -> m ()
+glRasterPos4d v1 v2 v3 v4 = liftIO $ dyn112 ptr_glRasterPos4d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRasterPos4d #-}
+ptr_glRasterPos4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glRasterPos4d = unsafePerformIO $ getCommand "glRasterPos4d"
+
+-- glRasterPos4dv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos4dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glRasterPos4dv v1 = liftIO $ dyn40 ptr_glRasterPos4dv v1
+
+{-# NOINLINE ptr_glRasterPos4dv #-}
+ptr_glRasterPos4dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glRasterPos4dv = unsafePerformIO $ getCommand "glRasterPos4dv"
+
+-- glRasterPos4f ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4fv'.
+glRasterPos4f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> GLfloat -- ^ @w@ of type @CoordF@.
+  -> m ()
+glRasterPos4f v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRasterPos4f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRasterPos4f #-}
+ptr_glRasterPos4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glRasterPos4f = unsafePerformIO $ getCommand "glRasterPos4f"
+
+-- glRasterPos4fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos4fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glRasterPos4fv v1 = liftIO $ dyn42 ptr_glRasterPos4fv v1
+
+{-# NOINLINE ptr_glRasterPos4fv #-}
+ptr_glRasterPos4fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glRasterPos4fv = unsafePerformIO $ getCommand "glRasterPos4fv"
+
+-- glRasterPos4i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4iv'.
+glRasterPos4i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> GLint -- ^ @w@ of type @CoordI@.
+  -> m ()
+glRasterPos4i v1 v2 v3 v4 = liftIO $ dyn79 ptr_glRasterPos4i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRasterPos4i #-}
+ptr_glRasterPos4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glRasterPos4i = unsafePerformIO $ getCommand "glRasterPos4i"
+
+-- glRasterPos4iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos4iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glRasterPos4iv v1 = liftIO $ dyn44 ptr_glRasterPos4iv v1
+
+{-# NOINLINE ptr_glRasterPos4iv #-}
+ptr_glRasterPos4iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glRasterPos4iv = unsafePerformIO $ getCommand "glRasterPos4iv"
+
+-- glRasterPos4s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos4sv'.
+glRasterPos4s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> GLshort -- ^ @w@ of type @CoordS@.
+  -> m ()
+glRasterPos4s v1 v2 v3 v4 = liftIO $ dyn116 ptr_glRasterPos4s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRasterPos4s #-}
+ptr_glRasterPos4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glRasterPos4s = unsafePerformIO $ getCommand "glRasterPos4s"
+
+-- glRasterPos4sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos4sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glRasterPos4sv v1 = liftIO $ dyn46 ptr_glRasterPos4sv v1
+
+{-# NOINLINE ptr_glRasterPos4sv #-}
+ptr_glRasterPos4sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glRasterPos4sv = unsafePerformIO $ getCommand "glRasterPos4sv"
+
+-- glRasterPos4xOES ------------------------------------------------------------
+
+glRasterPos4xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> GLfixed -- ^ @w@.
+  -> m ()
+glRasterPos4xOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glRasterPos4xOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRasterPos4xOES #-}
+ptr_glRasterPos4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glRasterPos4xOES = unsafePerformIO $ getCommand "glRasterPos4xOES"
+
+-- glRasterPos4xvOES -----------------------------------------------------------
+
+glRasterPos4xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
+  -> m ()
+glRasterPos4xvOES v1 = liftIO $ dyn110 ptr_glRasterPos4xvOES v1
+
+{-# NOINLINE ptr_glRasterPos4xvOES #-}
+ptr_glRasterPos4xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glRasterPos4xvOES = unsafePerformIO $ getCommand "glRasterPos4xvOES"
+
+-- glRasterSamplesEXT ----------------------------------------------------------
+
+glRasterSamplesEXT
+  :: MonadIO m
+  => GLuint -- ^ @samples@.
+  -> GLboolean -- ^ @fixedsamplelocations@.
+  -> m ()
+glRasterSamplesEXT v1 v2 = liftIO $ dyn695 ptr_glRasterSamplesEXT v1 v2
+
+{-# NOINLINE ptr_glRasterSamplesEXT #-}
+ptr_glRasterSamplesEXT :: FunPtr (GLuint -> GLboolean -> IO ())
+ptr_glRasterSamplesEXT = unsafePerformIO $ getCommand "glRasterSamplesEXT"
+
+-- glReadBuffer ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>.
+glReadBuffer
+  :: MonadIO m
+  => GLenum -- ^ @src@ of type [ReadBufferMode](Graphics-GL-Groups.html#ReadBufferMode).
+  -> m ()
+glReadBuffer v1 = liftIO $ dyn5 ptr_glReadBuffer v1
+
+{-# NOINLINE ptr_glReadBuffer #-}
+ptr_glReadBuffer :: FunPtr (GLenum -> IO ())
+ptr_glReadBuffer = unsafePerformIO $ getCommand "glReadBuffer"
+
+-- glReadBufferIndexedEXT ------------------------------------------------------
+
+glReadBufferIndexedEXT
+  :: MonadIO m
+  => GLenum -- ^ @src@.
+  -> GLint -- ^ @index@.
+  -> m ()
+glReadBufferIndexedEXT v1 v2 = liftIO $ dyn56 ptr_glReadBufferIndexedEXT v1 v2
+
+{-# NOINLINE ptr_glReadBufferIndexedEXT #-}
+ptr_glReadBufferIndexedEXT :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glReadBufferIndexedEXT = unsafePerformIO $ getCommand "glReadBufferIndexedEXT"
+
+-- glReadBufferNV --------------------------------------------------------------
+
+glReadBufferNV
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> m ()
+glReadBufferNV v1 = liftIO $ dyn5 ptr_glReadBufferNV v1
+
+{-# NOINLINE ptr_glReadBufferNV #-}
+ptr_glReadBufferNV :: FunPtr (GLenum -> IO ())
+ptr_glReadBufferNV = unsafePerformIO $ getCommand "glReadBufferNV"
+
+-- glReadInstrumentsSGIX -------------------------------------------------------
+
+glReadInstrumentsSGIX
+  :: MonadIO m
+  => GLint -- ^ @marker@.
+  -> m ()
+glReadInstrumentsSGIX v1 = liftIO $ dyn13 ptr_glReadInstrumentsSGIX v1
+
+{-# NOINLINE ptr_glReadInstrumentsSGIX #-}
+ptr_glReadInstrumentsSGIX :: FunPtr (GLint -> IO ())
+ptr_glReadInstrumentsSGIX = unsafePerformIO $ getCommand "glReadInstrumentsSGIX"
+
+-- glReadPixels ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadPixels.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadPixels.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>.
+glReadPixels
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @WinCoord@.
+  -> GLint -- ^ @y@ of type @WinCoord@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glReadPixels v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn696 ptr_glReadPixels v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glReadPixels #-}
+ptr_glReadPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glReadPixels = unsafePerformIO $ getCommand "glReadPixels"
+
+-- glReadnPixels ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>.
+glReadnPixels
+  :: MonadIO m
+  => GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @data@.
+  -> m ()
+glReadnPixels v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn697 ptr_glReadnPixels v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glReadnPixels #-}
+ptr_glReadnPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glReadnPixels = unsafePerformIO $ getCommand "glReadnPixels"
+
+-- glReadnPixelsARB ------------------------------------------------------------
+
+-- | This command is an alias for 'glReadnPixels'.
+glReadnPixelsARB
+  :: MonadIO m
+  => GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
+  -> m ()
+glReadnPixelsARB v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn697 ptr_glReadnPixelsARB v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glReadnPixelsARB #-}
+ptr_glReadnPixelsARB :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glReadnPixelsARB = unsafePerformIO $ getCommand "glReadnPixelsARB"
+
+-- glReadnPixelsEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glReadnPixels'.
+glReadnPixelsEXT
+  :: MonadIO m
+  => GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
+  -> m ()
+glReadnPixelsEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn697 ptr_glReadnPixelsEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glReadnPixelsEXT #-}
+ptr_glReadnPixelsEXT :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glReadnPixelsEXT = unsafePerformIO $ getCommand "glReadnPixelsEXT"
+
+-- glReadnPixelsKHR ------------------------------------------------------------
+
+-- | This command is an alias for 'glReadnPixels'.
+glReadnPixelsKHR
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @WinCoord@.
+  -> GLint -- ^ @y@ of type @WinCoord@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
+  -> m ()
+glReadnPixelsKHR v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn697 ptr_glReadnPixelsKHR v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glReadnPixelsKHR #-}
+ptr_glReadnPixelsKHR :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glReadnPixelsKHR = unsafePerformIO $ getCommand "glReadnPixelsKHR"
+
+-- glRectd ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectdv'.
+glRectd
+  :: MonadIO m
+  => GLdouble -- ^ @x1@ of type @CoordD@.
+  -> GLdouble -- ^ @y1@ of type @CoordD@.
+  -> GLdouble -- ^ @x2@ of type @CoordD@.
+  -> GLdouble -- ^ @y2@ of type @CoordD@.
+  -> m ()
+glRectd v1 v2 v3 v4 = liftIO $ dyn112 ptr_glRectd v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRectd #-}
+ptr_glRectd :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glRectd = unsafePerformIO $ getCommand "glRectd"
+
+-- glRectdv --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
+glRectdv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v1@ pointing to @2@ elements of type @CoordD@.
+  -> Ptr GLdouble -- ^ @v2@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glRectdv v1 v2 = liftIO $ dyn698 ptr_glRectdv v1 v2
+
+{-# NOINLINE ptr_glRectdv #-}
+ptr_glRectdv :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
+ptr_glRectdv = unsafePerformIO $ getCommand "glRectdv"
+
+-- glRectf ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectfv'.
+glRectf
+  :: MonadIO m
+  => GLfloat -- ^ @x1@ of type @CoordF@.
+  -> GLfloat -- ^ @y1@ of type @CoordF@.
+  -> GLfloat -- ^ @x2@ of type @CoordF@.
+  -> GLfloat -- ^ @y2@ of type @CoordF@.
+  -> m ()
+glRectf v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRectf v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRectf #-}
+ptr_glRectf :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glRectf = unsafePerformIO $ getCommand "glRectf"
+
+-- glRectfv --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
+glRectfv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v1@ pointing to @2@ elements of type @CoordF@.
+  -> Ptr GLfloat -- ^ @v2@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glRectfv v1 v2 = liftIO $ dyn100 ptr_glRectfv v1 v2
+
+{-# NOINLINE ptr_glRectfv #-}
+ptr_glRectfv :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glRectfv = unsafePerformIO $ getCommand "glRectfv"
+
+-- glRecti ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectiv'.
+glRecti
+  :: MonadIO m
+  => GLint -- ^ @x1@ of type @CoordI@.
+  -> GLint -- ^ @y1@ of type @CoordI@.
+  -> GLint -- ^ @x2@ of type @CoordI@.
+  -> GLint -- ^ @y2@ of type @CoordI@.
+  -> m ()
+glRecti v1 v2 v3 v4 = liftIO $ dyn79 ptr_glRecti v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRecti #-}
+ptr_glRecti :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glRecti = unsafePerformIO $ getCommand "glRecti"
+
+-- glRectiv --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
+glRectiv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v1@ pointing to @2@ elements of type @CoordI@.
+  -> Ptr GLint -- ^ @v2@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glRectiv v1 v2 = liftIO $ dyn699 ptr_glRectiv v1 v2
+
+{-# NOINLINE ptr_glRectiv #-}
+ptr_glRectiv :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
+ptr_glRectiv = unsafePerformIO $ getCommand "glRectiv"
+
+-- glRects ---------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>. The vector equivalent of this command is 'glRectsv'.
+glRects
+  :: MonadIO m
+  => GLshort -- ^ @x1@ of type @CoordS@.
+  -> GLshort -- ^ @y1@ of type @CoordS@.
+  -> GLshort -- ^ @x2@ of type @CoordS@.
+  -> GLshort -- ^ @y2@ of type @CoordS@.
+  -> m ()
+glRects v1 v2 v3 v4 = liftIO $ dyn116 ptr_glRects v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRects #-}
+ptr_glRects :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glRects = unsafePerformIO $ getCommand "glRects"
+
+-- glRectsv --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>.
+glRectsv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v1@ pointing to @2@ elements of type @CoordS@.
+  -> Ptr GLshort -- ^ @v2@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glRectsv v1 v2 = liftIO $ dyn700 ptr_glRectsv v1 v2
+
+{-# NOINLINE ptr_glRectsv #-}
+ptr_glRectsv :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
+ptr_glRectsv = unsafePerformIO $ getCommand "glRectsv"
+
+-- glRectxOES ------------------------------------------------------------------
+
+glRectxOES
+  :: MonadIO m
+  => GLfixed -- ^ @x1@.
+  -> GLfixed -- ^ @y1@.
+  -> GLfixed -- ^ @x2@.
+  -> GLfixed -- ^ @y2@.
+  -> m ()
+glRectxOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glRectxOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRectxOES #-}
+ptr_glRectxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glRectxOES = unsafePerformIO $ getCommand "glRectxOES"
+
+-- glRectxvOES -----------------------------------------------------------------
+
+glRectxvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @v1@ pointing to @2@ elements of type @GLfixed@.
+  -> Ptr GLfixed -- ^ @v2@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glRectxvOES v1 v2 = liftIO $ dyn701 ptr_glRectxvOES v1 v2
+
+{-# NOINLINE ptr_glRectxvOES #-}
+ptr_glRectxvOES :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
+ptr_glRectxvOES = unsafePerformIO $ getCommand "glRectxvOES"
+
+-- glReferencePlaneSGIX --------------------------------------------------------
+
+glReferencePlaneSGIX
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glReferencePlaneSGIX v1 = liftIO $ dyn40 ptr_glReferencePlaneSGIX v1
+
+{-# NOINLINE ptr_glReferencePlaneSGIX #-}
+ptr_glReferencePlaneSGIX :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glReferencePlaneSGIX = unsafePerformIO $ getCommand "glReferencePlaneSGIX"
+
+-- glReleaseKeyedMutexWin32EXT -------------------------------------------------
+
+glReleaseKeyedMutexWin32EXT
+  :: MonadIO m
+  => GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @key@.
+  -> m GLboolean
+glReleaseKeyedMutexWin32EXT v1 v2 = liftIO $ dyn702 ptr_glReleaseKeyedMutexWin32EXT v1 v2
+
+{-# NOINLINE ptr_glReleaseKeyedMutexWin32EXT #-}
+ptr_glReleaseKeyedMutexWin32EXT :: FunPtr (GLuint -> GLuint64 -> IO GLboolean)
+ptr_glReleaseKeyedMutexWin32EXT = unsafePerformIO $ getCommand "glReleaseKeyedMutexWin32EXT"
+
+-- glReleaseShaderCompiler -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReleaseShaderCompiler.xhtml OpenGL 4.x>.
+glReleaseShaderCompiler
+  :: MonadIO m
+  => m ()
+glReleaseShaderCompiler = liftIO $ dyn11 ptr_glReleaseShaderCompiler
+
+{-# NOINLINE ptr_glReleaseShaderCompiler #-}
+ptr_glReleaseShaderCompiler :: FunPtr (IO ())
+ptr_glReleaseShaderCompiler = unsafePerformIO $ getCommand "glReleaseShaderCompiler"
+
+-- glRenderGpuMaskNV -----------------------------------------------------------
+
+glRenderGpuMaskNV
+  :: MonadIO m
+  => GLbitfield -- ^ @mask@.
+  -> m ()
+glRenderGpuMaskNV v1 = liftIO $ dyn72 ptr_glRenderGpuMaskNV v1
+
+{-# NOINLINE ptr_glRenderGpuMaskNV #-}
+ptr_glRenderGpuMaskNV :: FunPtr (GLbitfield -> IO ())
+ptr_glRenderGpuMaskNV = unsafePerformIO $ getCommand "glRenderGpuMaskNV"
+
+-- glRenderMode ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRenderMode.xml OpenGL 2.x>.
+glRenderMode
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [RenderingMode](Graphics-GL-Groups.html#RenderingMode).
+  -> m GLint
+glRenderMode v1 = liftIO $ dyn703 ptr_glRenderMode v1
+
+{-# NOINLINE ptr_glRenderMode #-}
+ptr_glRenderMode :: FunPtr (GLenum -> IO GLint)
+ptr_glRenderMode = unsafePerformIO $ getCommand "glRenderMode"
+
+-- glRenderbufferStorage -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>.
+glRenderbufferStorage
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorage v1 v2 v3 v4 = liftIO $ dyn704 ptr_glRenderbufferStorage v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRenderbufferStorage #-}
+ptr_glRenderbufferStorage :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorage = unsafePerformIO $ getCommand "glRenderbufferStorage"
+
+-- glRenderbufferStorageEXT ----------------------------------------------------
+
+-- | This command is an alias for 'glRenderbufferStorage'.
+glRenderbufferStorageEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageEXT v1 v2 v3 v4 = liftIO $ dyn704 ptr_glRenderbufferStorageEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRenderbufferStorageEXT #-}
+ptr_glRenderbufferStorageEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageEXT = unsafePerformIO $ getCommand "glRenderbufferStorageEXT"
+
+-- glRenderbufferStorageMultisample --------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorageMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>.
+glRenderbufferStorageMultisample
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisample v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisample v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisample #-}
+ptr_glRenderbufferStorageMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glRenderbufferStorageMultisample"
+
+-- glRenderbufferStorageMultisampleANGLE ---------------------------------------
+
+glRenderbufferStorageMultisampleANGLE
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleANGLE v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisampleANGLE v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleANGLE #-}
+ptr_glRenderbufferStorageMultisampleANGLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleANGLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleANGLE"
+
+-- glRenderbufferStorageMultisampleAPPLE ---------------------------------------
+
+glRenderbufferStorageMultisampleAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleAPPLE v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisampleAPPLE v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleAPPLE #-}
+ptr_glRenderbufferStorageMultisampleAPPLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleAPPLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleAPPLE"
+
+-- glRenderbufferStorageMultisampleCoverageNV ----------------------------------
+
+glRenderbufferStorageMultisampleCoverageNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @RenderbufferTarget@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleCoverageNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn706 ptr_glRenderbufferStorageMultisampleCoverageNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleCoverageNV #-}
+ptr_glRenderbufferStorageMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleCoverageNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleCoverageNV"
 
diff --git a/src/Graphics/GL/Functions/F23.hs b/src/Graphics/GL/Functions/F23.hs
--- a/src/Graphics/GL/Functions/F23.hs
+++ b/src/Graphics/GL/Functions/F23.hs
@@ -15,1552 +15,1560 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F23 (
-  glSampleCoveragexOES,
-  glSampleMapATI,
-  glSampleMaskEXT,
-  glSampleMaskIndexedNV,
-  glSampleMaskSGIS,
-  glSampleMaski,
-  glSamplePatternEXT,
-  glSamplePatternSGIS,
-  glSamplerParameterIiv,
-  glSamplerParameterIivEXT,
-  glSamplerParameterIivOES,
-  glSamplerParameterIuiv,
-  glSamplerParameterIuivEXT,
-  glSamplerParameterIuivOES,
-  glSamplerParameterf,
-  glSamplerParameterfv,
-  glSamplerParameteri,
-  glSamplerParameteriv,
-  glScaled,
-  glScalef,
-  glScalex,
-  glScalexOES,
-  glScissor,
-  glScissorArrayv,
-  glScissorArrayvNV,
-  glScissorArrayvOES,
-  glScissorIndexed,
-  glScissorIndexedNV,
-  glScissorIndexedOES,
-  glScissorIndexedv,
-  glScissorIndexedvNV,
-  glScissorIndexedvOES,
-  glSecondaryColor3b,
-  glSecondaryColor3bEXT,
-  glSecondaryColor3bv,
-  glSecondaryColor3bvEXT,
-  glSecondaryColor3d,
-  glSecondaryColor3dEXT,
-  glSecondaryColor3dv,
-  glSecondaryColor3dvEXT,
-  glSecondaryColor3f,
-  glSecondaryColor3fEXT,
-  glSecondaryColor3fv,
-  glSecondaryColor3fvEXT,
-  glSecondaryColor3hNV,
-  glSecondaryColor3hvNV,
-  glSecondaryColor3i,
-  glSecondaryColor3iEXT,
-  glSecondaryColor3iv,
-  glSecondaryColor3ivEXT,
-  glSecondaryColor3s,
-  glSecondaryColor3sEXT,
-  glSecondaryColor3sv,
-  glSecondaryColor3svEXT,
-  glSecondaryColor3ub,
-  glSecondaryColor3ubEXT,
-  glSecondaryColor3ubv,
-  glSecondaryColor3ubvEXT,
-  glSecondaryColor3ui,
-  glSecondaryColor3uiEXT,
-  glSecondaryColor3uiv,
-  glSecondaryColor3uivEXT,
-  glSecondaryColor3us,
-  glSecondaryColor3usEXT,
-  glSecondaryColor3usv,
-  glSecondaryColor3usvEXT,
-  glSecondaryColorFormatNV,
-  glSecondaryColorP3ui,
-  glSecondaryColorP3uiv,
-  glSecondaryColorPointer,
-  glSecondaryColorPointerEXT,
-  glSecondaryColorPointerListIBM,
-  glSelectBuffer,
-  glSelectPerfMonitorCountersAMD,
-  glSeparableFilter2D,
-  glSeparableFilter2DEXT,
-  glSetFenceAPPLE,
-  glSetFenceNV,
-  glSetFragmentShaderConstantATI,
-  glSetInvariantEXT,
-  glSetLocalConstantEXT,
-  glSetMultisamplefvAMD,
-  glShadeModel,
-  glShaderBinary,
-  glShaderOp1EXT,
-  glShaderOp2EXT,
-  glShaderOp3EXT,
-  glShaderSource,
-  glShaderSourceARB,
-  glShaderStorageBlockBinding,
-  glSharpenTexFuncSGIS,
-  glSpriteParameterfSGIX,
-  glSpriteParameterfvSGIX,
-  glSpriteParameteriSGIX,
-  glSpriteParameterivSGIX,
-  glStartInstrumentsSGIX,
-  glStartTilingQCOM,
-  glStateCaptureNV,
-  glStencilClearTagEXT,
-  glStencilFillPathInstancedNV
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glSampleCoveragexOES --------------------------------------------------------
-
-glSampleCoveragexOES
-  :: MonadIO m
-  => GLclampx -- ^ @value@.
-  -> GLboolean -- ^ @invert@.
-  -> m ()
-glSampleCoveragexOES v1 v2 = liftIO $ dyn698 ptr_glSampleCoveragexOES v1 v2
-
-{-# NOINLINE ptr_glSampleCoveragexOES #-}
-ptr_glSampleCoveragexOES :: FunPtr (GLclampx -> GLboolean -> IO ())
-ptr_glSampleCoveragexOES = unsafePerformIO $ getCommand "glSampleCoveragexOES"
-
--- glSampleMapATI --------------------------------------------------------------
-
-glSampleMapATI
-  :: MonadIO m
-  => GLuint -- ^ @dst@.
-  -> GLuint -- ^ @interp@.
-  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
-  -> m ()
-glSampleMapATI v1 v2 v3 = liftIO $ dyn599 ptr_glSampleMapATI v1 v2 v3
-
-{-# NOINLINE ptr_glSampleMapATI #-}
-ptr_glSampleMapATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
-ptr_glSampleMapATI = unsafePerformIO $ getCommand "glSampleMapATI"
-
--- glSampleMaskEXT -------------------------------------------------------------
-
-glSampleMaskEXT
-  :: MonadIO m
-  => GLclampf -- ^ @value@ of type @ClampedFloat32@.
-  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glSampleMaskEXT v1 v2 = liftIO $ dyn699 ptr_glSampleMaskEXT v1 v2
-
-{-# NOINLINE ptr_glSampleMaskEXT #-}
-ptr_glSampleMaskEXT :: FunPtr (GLclampf -> GLboolean -> IO ())
-ptr_glSampleMaskEXT = unsafePerformIO $ getCommand "glSampleMaskEXT"
-
--- glSampleMaskIndexedNV -------------------------------------------------------
-
-glSampleMaskIndexedNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLbitfield -- ^ @mask@ of type @SampleMaskNV@.
-  -> m ()
-glSampleMaskIndexedNV v1 v2 = liftIO $ dyn700 ptr_glSampleMaskIndexedNV v1 v2
-
-{-# NOINLINE ptr_glSampleMaskIndexedNV #-}
-ptr_glSampleMaskIndexedNV :: FunPtr (GLuint -> GLbitfield -> IO ())
-ptr_glSampleMaskIndexedNV = unsafePerformIO $ getCommand "glSampleMaskIndexedNV"
-
--- glSampleMaskSGIS ------------------------------------------------------------
-
--- | This command is an alias for 'glSampleMaskEXT'.
-glSampleMaskSGIS
-  :: MonadIO m
-  => GLclampf -- ^ @value@ of type @ClampedFloat32@.
-  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glSampleMaskSGIS v1 v2 = liftIO $ dyn699 ptr_glSampleMaskSGIS v1 v2
-
-{-# NOINLINE ptr_glSampleMaskSGIS #-}
-ptr_glSampleMaskSGIS :: FunPtr (GLclampf -> GLboolean -> IO ())
-ptr_glSampleMaskSGIS = unsafePerformIO $ getCommand "glSampleMaskSGIS"
-
--- glSampleMaski ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleMaski.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleMaski.xhtml OpenGL 4.x>.
-glSampleMaski
-  :: MonadIO m
-  => GLuint -- ^ @maskNumber@.
-  -> GLbitfield -- ^ @mask@.
-  -> m ()
-glSampleMaski v1 v2 = liftIO $ dyn700 ptr_glSampleMaski v1 v2
-
-{-# NOINLINE ptr_glSampleMaski #-}
-ptr_glSampleMaski :: FunPtr (GLuint -> GLbitfield -> IO ())
-ptr_glSampleMaski = unsafePerformIO $ getCommand "glSampleMaski"
-
--- glSamplePatternEXT ----------------------------------------------------------
-
-glSamplePatternEXT
-  :: MonadIO m
-  => GLenum -- ^ @pattern@ of type @SamplePatternEXT@.
-  -> m ()
-glSamplePatternEXT v1 = liftIO $ dyn4 ptr_glSamplePatternEXT v1
-
-{-# NOINLINE ptr_glSamplePatternEXT #-}
-ptr_glSamplePatternEXT :: FunPtr (GLenum -> IO ())
-ptr_glSamplePatternEXT = unsafePerformIO $ getCommand "glSamplePatternEXT"
-
--- glSamplePatternSGIS ---------------------------------------------------------
-
--- | This command is an alias for 'glSamplePatternEXT'.
-glSamplePatternSGIS
-  :: MonadIO m
-  => GLenum -- ^ @pattern@ of type [SamplePatternSGIS](Graphics-GL-Groups.html#SamplePatternSGIS).
-  -> m ()
-glSamplePatternSGIS v1 = liftIO $ dyn4 ptr_glSamplePatternSGIS v1
-
-{-# NOINLINE ptr_glSamplePatternSGIS #-}
-ptr_glSamplePatternSGIS :: FunPtr (GLenum -> IO ())
-ptr_glSamplePatternSGIS = unsafePerformIO $ getCommand "glSamplePatternSGIS"
-
--- glSamplerParameterIiv -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameterIiv
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glSamplerParameterIiv v1 v2 v3 = liftIO $ dyn335 ptr_glSamplerParameterIiv v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIiv #-}
-ptr_glSamplerParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glSamplerParameterIiv = unsafePerformIO $ getCommand "glSamplerParameterIiv"
-
--- glSamplerParameterIivEXT ----------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIiv'.
-glSamplerParameterIivEXT
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glSamplerParameterIivEXT v1 v2 v3 = liftIO $ dyn335 ptr_glSamplerParameterIivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIivEXT #-}
-ptr_glSamplerParameterIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glSamplerParameterIivEXT = unsafePerformIO $ getCommand "glSamplerParameterIivEXT"
-
--- glSamplerParameterIivOES ----------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIiv'.
-glSamplerParameterIivOES
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glSamplerParameterIivOES v1 v2 v3 = liftIO $ dyn335 ptr_glSamplerParameterIivOES v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIivOES #-}
-ptr_glSamplerParameterIivOES :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glSamplerParameterIivOES = unsafePerformIO $ getCommand "glSamplerParameterIivOES"
-
--- glSamplerParameterIuiv ------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameterIuiv
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glSamplerParameterIuiv v1 v2 v3 = liftIO $ dyn377 ptr_glSamplerParameterIuiv v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIuiv #-}
-ptr_glSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glSamplerParameterIuiv = unsafePerformIO $ getCommand "glSamplerParameterIuiv"
-
--- glSamplerParameterIuivEXT ---------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIuiv'.
-glSamplerParameterIuivEXT
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn377 ptr_glSamplerParameterIuivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIuivEXT #-}
-ptr_glSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glSamplerParameterIuivEXT"
-
--- glSamplerParameterIuivOES ---------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIuiv'.
-glSamplerParameterIuivOES
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn377 ptr_glSamplerParameterIuivOES v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIuivOES #-}
-ptr_glSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glSamplerParameterIuivOES = unsafePerformIO $ getCommand "glSamplerParameterIuivOES"
-
--- glSamplerParameterf ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameterf
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glSamplerParameterf v1 v2 v3 = liftIO $ dyn489 ptr_glSamplerParameterf v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterf #-}
-ptr_glSamplerParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-ptr_glSamplerParameterf = unsafePerformIO $ getCommand "glSamplerParameterf"
-
--- glSamplerParameterfv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameterfv
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glSamplerParameterfv v1 v2 v3 = liftIO $ dyn351 ptr_glSamplerParameterfv v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterfv #-}
-ptr_glSamplerParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glSamplerParameterfv = unsafePerformIO $ getCommand "glSamplerParameterfv"
-
--- glSamplerParameteri ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameteri
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glSamplerParameteri v1 v2 v3 = liftIO $ dyn490 ptr_glSamplerParameteri v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameteri #-}
-ptr_glSamplerParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glSamplerParameteri = unsafePerformIO $ getCommand "glSamplerParameteri"
-
--- glSamplerParameteriv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameteriv
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glSamplerParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glSamplerParameteriv v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameteriv #-}
-ptr_glSamplerParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glSamplerParameteriv = unsafePerformIO $ getCommand "glSamplerParameteriv"
-
--- glScaled --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>.
-glScaled
-  :: MonadIO m
-  => GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glScaled v1 v2 v3 = liftIO $ dyn38 ptr_glScaled v1 v2 v3
-
-{-# NOINLINE ptr_glScaled #-}
-ptr_glScaled :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glScaled = unsafePerformIO $ getCommand "glScaled"
-
--- glScalef --------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>.
-glScalef
-  :: MonadIO m
-  => GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glScalef v1 v2 v3 = liftIO $ dyn40 ptr_glScalef v1 v2 v3
-
-{-# NOINLINE ptr_glScalef #-}
-ptr_glScalef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glScalef = unsafePerformIO $ getCommand "glScalef"
-
--- glScalex --------------------------------------------------------------------
-
-glScalex
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glScalex v1 v2 v3 = liftIO $ dyn106 ptr_glScalex v1 v2 v3
-
-{-# NOINLINE ptr_glScalex #-}
-ptr_glScalex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glScalex = unsafePerformIO $ getCommand "glScalex"
-
--- glScalexOES -----------------------------------------------------------------
-
-glScalexOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glScalexOES v1 v2 v3 = liftIO $ dyn106 ptr_glScalexOES v1 v2 v3
-
-{-# NOINLINE ptr_glScalexOES #-}
-ptr_glScalexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glScalexOES = unsafePerformIO $ getCommand "glScalexOES"
-
--- glScissor -------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glScissor.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glScissor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glScissor.xhtml OpenGL 4.x>.
-glScissor
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @WinCoord@.
-  -> GLint -- ^ @y@ of type @WinCoord@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glScissor v1 v2 v3 v4 = liftIO $ dyn701 ptr_glScissor v1 v2 v3 v4
-
-{-# NOINLINE ptr_glScissor #-}
-ptr_glScissor :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glScissor = unsafePerformIO $ getCommand "glScissor"
-
--- glScissorArrayv -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorArray.xhtml OpenGL 4.x>.
-glScissorArrayv
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> m ()
-glScissorArrayv v1 v2 v3 = liftIO $ dyn702 ptr_glScissorArrayv v1 v2 v3
-
-{-# NOINLINE ptr_glScissorArrayv #-}
-ptr_glScissorArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glScissorArrayv = unsafePerformIO $ getCommand "glScissorArrayv"
-
--- glScissorArrayvNV -----------------------------------------------------------
-
--- | This command is an alias for 'glScissorArrayv'.
-glScissorArrayvNV
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> m ()
-glScissorArrayvNV v1 v2 v3 = liftIO $ dyn702 ptr_glScissorArrayvNV v1 v2 v3
-
-{-# NOINLINE ptr_glScissorArrayvNV #-}
-ptr_glScissorArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glScissorArrayvNV = unsafePerformIO $ getCommand "glScissorArrayvNV"
-
--- glScissorArrayvOES ----------------------------------------------------------
-
--- | This command is an alias for 'glScissorArrayv'.
-glScissorArrayvOES
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> m ()
-glScissorArrayvOES v1 v2 v3 = liftIO $ dyn702 ptr_glScissorArrayvOES v1 v2 v3
-
-{-# NOINLINE ptr_glScissorArrayvOES #-}
-ptr_glScissorArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glScissorArrayvOES = unsafePerformIO $ getCommand "glScissorArrayvOES"
-
--- glScissorIndexed ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
-glScissorIndexed
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @left@.
-  -> GLint -- ^ @bottom@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glScissorIndexed v1 v2 v3 v4 v5 = liftIO $ dyn703 ptr_glScissorIndexed v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glScissorIndexed #-}
-ptr_glScissorIndexed :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glScissorIndexed = unsafePerformIO $ getCommand "glScissorIndexed"
-
--- glScissorIndexedNV ----------------------------------------------------------
-
--- | This command is an alias for 'glScissorIndexed'.
-glScissorIndexedNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @left@.
-  -> GLint -- ^ @bottom@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glScissorIndexedNV v1 v2 v3 v4 v5 = liftIO $ dyn703 ptr_glScissorIndexedNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glScissorIndexedNV #-}
-ptr_glScissorIndexedNV :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glScissorIndexedNV = unsafePerformIO $ getCommand "glScissorIndexedNV"
-
--- glScissorIndexedOES ---------------------------------------------------------
-
--- | This command is an alias for 'glScissorIndexed'.
-glScissorIndexedOES
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @left@.
-  -> GLint -- ^ @bottom@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glScissorIndexedOES v1 v2 v3 v4 v5 = liftIO $ dyn703 ptr_glScissorIndexedOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glScissorIndexedOES #-}
-ptr_glScissorIndexedOES :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glScissorIndexedOES = unsafePerformIO $ getCommand "glScissorIndexedOES"
-
--- glScissorIndexedv -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
-glScissorIndexedv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glScissorIndexedv v1 v2 = liftIO $ dyn704 ptr_glScissorIndexedv v1 v2
-
-{-# NOINLINE ptr_glScissorIndexedv #-}
-ptr_glScissorIndexedv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glScissorIndexedv = unsafePerformIO $ getCommand "glScissorIndexedv"
-
--- glScissorIndexedvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glScissorIndexedv'.
-glScissorIndexedvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glScissorIndexedvNV v1 v2 = liftIO $ dyn704 ptr_glScissorIndexedvNV v1 v2
-
-{-# NOINLINE ptr_glScissorIndexedvNV #-}
-ptr_glScissorIndexedvNV :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glScissorIndexedvNV = unsafePerformIO $ getCommand "glScissorIndexedvNV"
-
--- glScissorIndexedvOES --------------------------------------------------------
-
--- | This command is an alias for 'glScissorIndexedv'.
-glScissorIndexedvOES
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glScissorIndexedvOES v1 v2 = liftIO $ dyn704 ptr_glScissorIndexedvOES v1 v2
-
-{-# NOINLINE ptr_glScissorIndexedvOES #-}
-ptr_glScissorIndexedvOES :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glScissorIndexedvOES = unsafePerformIO $ getCommand "glScissorIndexedvOES"
-
--- glSecondaryColor3b ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3bv'.
-glSecondaryColor3b
-  :: MonadIO m
-  => GLbyte -- ^ @red@ of type @ColorB@.
-  -> GLbyte -- ^ @green@ of type @ColorB@.
-  -> GLbyte -- ^ @blue@ of type @ColorB@.
-  -> m ()
-glSecondaryColor3b v1 v2 v3 = liftIO $ dyn36 ptr_glSecondaryColor3b v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3b #-}
-ptr_glSecondaryColor3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glSecondaryColor3b = unsafePerformIO $ getCommand "glSecondaryColor3b"
-
--- glSecondaryColor3bEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3bvEXT'. This command is an alias for 'glSecondaryColor3b'.
-glSecondaryColor3bEXT
-  :: MonadIO m
-  => GLbyte -- ^ @red@ of type @ColorB@.
-  -> GLbyte -- ^ @green@ of type @ColorB@.
-  -> GLbyte -- ^ @blue@ of type @ColorB@.
-  -> m ()
-glSecondaryColor3bEXT v1 v2 v3 = liftIO $ dyn36 ptr_glSecondaryColor3bEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3bEXT #-}
-ptr_glSecondaryColor3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glSecondaryColor3bEXT = unsafePerformIO $ getCommand "glSecondaryColor3bEXT"
-
--- glSecondaryColor3bv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3bv
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
-  -> m ()
-glSecondaryColor3bv v1 = liftIO $ dyn37 ptr_glSecondaryColor3bv v1
-
-{-# NOINLINE ptr_glSecondaryColor3bv #-}
-ptr_glSecondaryColor3bv :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glSecondaryColor3bv = unsafePerformIO $ getCommand "glSecondaryColor3bv"
-
--- glSecondaryColor3bvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3bv'.
-glSecondaryColor3bvEXT
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
-  -> m ()
-glSecondaryColor3bvEXT v1 = liftIO $ dyn37 ptr_glSecondaryColor3bvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3bvEXT #-}
-ptr_glSecondaryColor3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glSecondaryColor3bvEXT = unsafePerformIO $ getCommand "glSecondaryColor3bvEXT"
-
--- glSecondaryColor3d ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3dv'.
-glSecondaryColor3d
-  :: MonadIO m
-  => GLdouble -- ^ @red@ of type @ColorD@.
-  -> GLdouble -- ^ @green@ of type @ColorD@.
-  -> GLdouble -- ^ @blue@ of type @ColorD@.
-  -> m ()
-glSecondaryColor3d v1 v2 v3 = liftIO $ dyn38 ptr_glSecondaryColor3d v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3d #-}
-ptr_glSecondaryColor3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glSecondaryColor3d = unsafePerformIO $ getCommand "glSecondaryColor3d"
-
--- glSecondaryColor3dEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3dvEXT'. This command is an alias for 'glSecondaryColor3d'.
-glSecondaryColor3dEXT
-  :: MonadIO m
-  => GLdouble -- ^ @red@ of type @ColorD@.
-  -> GLdouble -- ^ @green@ of type @ColorD@.
-  -> GLdouble -- ^ @blue@ of type @ColorD@.
-  -> m ()
-glSecondaryColor3dEXT v1 v2 v3 = liftIO $ dyn38 ptr_glSecondaryColor3dEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3dEXT #-}
-ptr_glSecondaryColor3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glSecondaryColor3dEXT = unsafePerformIO $ getCommand "glSecondaryColor3dEXT"
-
--- glSecondaryColor3dv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
-  -> m ()
-glSecondaryColor3dv v1 = liftIO $ dyn39 ptr_glSecondaryColor3dv v1
-
-{-# NOINLINE ptr_glSecondaryColor3dv #-}
-ptr_glSecondaryColor3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glSecondaryColor3dv = unsafePerformIO $ getCommand "glSecondaryColor3dv"
-
--- glSecondaryColor3dvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3dv'.
-glSecondaryColor3dvEXT
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
-  -> m ()
-glSecondaryColor3dvEXT v1 = liftIO $ dyn39 ptr_glSecondaryColor3dvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3dvEXT #-}
-ptr_glSecondaryColor3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glSecondaryColor3dvEXT = unsafePerformIO $ getCommand "glSecondaryColor3dvEXT"
-
--- glSecondaryColor3f ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3fv'.
-glSecondaryColor3f
-  :: MonadIO m
-  => GLfloat -- ^ @red@ of type @ColorF@.
-  -> GLfloat -- ^ @green@ of type @ColorF@.
-  -> GLfloat -- ^ @blue@ of type @ColorF@.
-  -> m ()
-glSecondaryColor3f v1 v2 v3 = liftIO $ dyn40 ptr_glSecondaryColor3f v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3f #-}
-ptr_glSecondaryColor3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glSecondaryColor3f = unsafePerformIO $ getCommand "glSecondaryColor3f"
-
--- glSecondaryColor3fEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3fvEXT'. This command is an alias for 'glSecondaryColor3f'.
-glSecondaryColor3fEXT
-  :: MonadIO m
-  => GLfloat -- ^ @red@ of type @ColorF@.
-  -> GLfloat -- ^ @green@ of type @ColorF@.
-  -> GLfloat -- ^ @blue@ of type @ColorF@.
-  -> m ()
-glSecondaryColor3fEXT v1 v2 v3 = liftIO $ dyn40 ptr_glSecondaryColor3fEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3fEXT #-}
-ptr_glSecondaryColor3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glSecondaryColor3fEXT = unsafePerformIO $ getCommand "glSecondaryColor3fEXT"
-
--- glSecondaryColor3fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
-  -> m ()
-glSecondaryColor3fv v1 = liftIO $ dyn41 ptr_glSecondaryColor3fv v1
-
-{-# NOINLINE ptr_glSecondaryColor3fv #-}
-ptr_glSecondaryColor3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glSecondaryColor3fv = unsafePerformIO $ getCommand "glSecondaryColor3fv"
-
--- glSecondaryColor3fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3fv'.
-glSecondaryColor3fvEXT
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
-  -> m ()
-glSecondaryColor3fvEXT v1 = liftIO $ dyn41 ptr_glSecondaryColor3fvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3fvEXT #-}
-ptr_glSecondaryColor3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glSecondaryColor3fvEXT = unsafePerformIO $ getCommand "glSecondaryColor3fvEXT"
-
--- glSecondaryColor3hNV --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3hvNV'.
-glSecondaryColor3hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @red@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
-  -> m ()
-glSecondaryColor3hNV v1 v2 v3 = liftIO $ dyn98 ptr_glSecondaryColor3hNV v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3hNV #-}
-ptr_glSecondaryColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glSecondaryColor3hNV = unsafePerformIO $ getCommand "glSecondaryColor3hNV"
-
--- glSecondaryColor3hvNV -------------------------------------------------------
-
-glSecondaryColor3hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glSecondaryColor3hvNV v1 = liftIO $ dyn99 ptr_glSecondaryColor3hvNV v1
-
-{-# NOINLINE ptr_glSecondaryColor3hvNV #-}
-ptr_glSecondaryColor3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glSecondaryColor3hvNV = unsafePerformIO $ getCommand "glSecondaryColor3hvNV"
-
--- glSecondaryColor3i ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3iv'.
-glSecondaryColor3i
-  :: MonadIO m
-  => GLint -- ^ @red@ of type @ColorI@.
-  -> GLint -- ^ @green@ of type @ColorI@.
-  -> GLint -- ^ @blue@ of type @ColorI@.
-  -> m ()
-glSecondaryColor3i v1 v2 v3 = liftIO $ dyn42 ptr_glSecondaryColor3i v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3i #-}
-ptr_glSecondaryColor3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glSecondaryColor3i = unsafePerformIO $ getCommand "glSecondaryColor3i"
-
--- glSecondaryColor3iEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3ivEXT'. This command is an alias for 'glSecondaryColor3i'.
-glSecondaryColor3iEXT
-  :: MonadIO m
-  => GLint -- ^ @red@ of type @ColorI@.
-  -> GLint -- ^ @green@ of type @ColorI@.
-  -> GLint -- ^ @blue@ of type @ColorI@.
-  -> m ()
-glSecondaryColor3iEXT v1 v2 v3 = liftIO $ dyn42 ptr_glSecondaryColor3iEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3iEXT #-}
-ptr_glSecondaryColor3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glSecondaryColor3iEXT = unsafePerformIO $ getCommand "glSecondaryColor3iEXT"
-
--- glSecondaryColor3iv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
-  -> m ()
-glSecondaryColor3iv v1 = liftIO $ dyn43 ptr_glSecondaryColor3iv v1
-
-{-# NOINLINE ptr_glSecondaryColor3iv #-}
-ptr_glSecondaryColor3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glSecondaryColor3iv = unsafePerformIO $ getCommand "glSecondaryColor3iv"
-
--- glSecondaryColor3ivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3iv'.
-glSecondaryColor3ivEXT
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
-  -> m ()
-glSecondaryColor3ivEXT v1 = liftIO $ dyn43 ptr_glSecondaryColor3ivEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3ivEXT #-}
-ptr_glSecondaryColor3ivEXT :: FunPtr (Ptr GLint -> IO ())
-ptr_glSecondaryColor3ivEXT = unsafePerformIO $ getCommand "glSecondaryColor3ivEXT"
-
--- glSecondaryColor3s ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3sv'.
-glSecondaryColor3s
-  :: MonadIO m
-  => GLshort -- ^ @red@ of type @ColorS@.
-  -> GLshort -- ^ @green@ of type @ColorS@.
-  -> GLshort -- ^ @blue@ of type @ColorS@.
-  -> m ()
-glSecondaryColor3s v1 v2 v3 = liftIO $ dyn44 ptr_glSecondaryColor3s v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3s #-}
-ptr_glSecondaryColor3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glSecondaryColor3s = unsafePerformIO $ getCommand "glSecondaryColor3s"
-
--- glSecondaryColor3sEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3svEXT'. This command is an alias for 'glSecondaryColor3s'.
-glSecondaryColor3sEXT
-  :: MonadIO m
-  => GLshort -- ^ @red@ of type @ColorS@.
-  -> GLshort -- ^ @green@ of type @ColorS@.
-  -> GLshort -- ^ @blue@ of type @ColorS@.
-  -> m ()
-glSecondaryColor3sEXT v1 v2 v3 = liftIO $ dyn44 ptr_glSecondaryColor3sEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3sEXT #-}
-ptr_glSecondaryColor3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glSecondaryColor3sEXT = unsafePerformIO $ getCommand "glSecondaryColor3sEXT"
-
--- glSecondaryColor3sv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
-  -> m ()
-glSecondaryColor3sv v1 = liftIO $ dyn45 ptr_glSecondaryColor3sv v1
-
-{-# NOINLINE ptr_glSecondaryColor3sv #-}
-ptr_glSecondaryColor3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glSecondaryColor3sv = unsafePerformIO $ getCommand "glSecondaryColor3sv"
-
--- glSecondaryColor3svEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3sv'.
-glSecondaryColor3svEXT
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
-  -> m ()
-glSecondaryColor3svEXT v1 = liftIO $ dyn45 ptr_glSecondaryColor3svEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3svEXT #-}
-ptr_glSecondaryColor3svEXT :: FunPtr (Ptr GLshort -> IO ())
-ptr_glSecondaryColor3svEXT = unsafePerformIO $ getCommand "glSecondaryColor3svEXT"
-
--- glSecondaryColor3ub ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3ubv'.
-glSecondaryColor3ub
-  :: MonadIO m
-  => GLubyte -- ^ @red@ of type @ColorUB@.
-  -> GLubyte -- ^ @green@ of type @ColorUB@.
-  -> GLubyte -- ^ @blue@ of type @ColorUB@.
-  -> m ()
-glSecondaryColor3ub v1 v2 v3 = liftIO $ dyn100 ptr_glSecondaryColor3ub v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3ub #-}
-ptr_glSecondaryColor3ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
-ptr_glSecondaryColor3ub = unsafePerformIO $ getCommand "glSecondaryColor3ub"
-
--- glSecondaryColor3ubEXT ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3ubvEXT'. This command is an alias for 'glSecondaryColor3ub'.
-glSecondaryColor3ubEXT
-  :: MonadIO m
-  => GLubyte -- ^ @red@ of type @ColorUB@.
-  -> GLubyte -- ^ @green@ of type @ColorUB@.
-  -> GLubyte -- ^ @blue@ of type @ColorUB@.
-  -> m ()
-glSecondaryColor3ubEXT v1 v2 v3 = liftIO $ dyn100 ptr_glSecondaryColor3ubEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3ubEXT #-}
-ptr_glSecondaryColor3ubEXT :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
-ptr_glSecondaryColor3ubEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubEXT"
-
--- glSecondaryColor3ubv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3ubv
-  :: MonadIO m
-  => Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
-  -> m ()
-glSecondaryColor3ubv v1 = liftIO $ dyn101 ptr_glSecondaryColor3ubv v1
-
-{-# NOINLINE ptr_glSecondaryColor3ubv #-}
-ptr_glSecondaryColor3ubv :: FunPtr (Ptr GLubyte -> IO ())
-ptr_glSecondaryColor3ubv = unsafePerformIO $ getCommand "glSecondaryColor3ubv"
-
--- glSecondaryColor3ubvEXT -----------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3ubv'.
-glSecondaryColor3ubvEXT
-  :: MonadIO m
-  => Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
-  -> m ()
-glSecondaryColor3ubvEXT v1 = liftIO $ dyn101 ptr_glSecondaryColor3ubvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3ubvEXT #-}
-ptr_glSecondaryColor3ubvEXT :: FunPtr (Ptr GLubyte -> IO ())
-ptr_glSecondaryColor3ubvEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubvEXT"
-
--- glSecondaryColor3ui ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3uiv'.
-glSecondaryColor3ui
-  :: MonadIO m
-  => GLuint -- ^ @red@ of type @ColorUI@.
-  -> GLuint -- ^ @green@ of type @ColorUI@.
-  -> GLuint -- ^ @blue@ of type @ColorUI@.
-  -> m ()
-glSecondaryColor3ui v1 v2 v3 = liftIO $ dyn102 ptr_glSecondaryColor3ui v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3ui #-}
-ptr_glSecondaryColor3ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glSecondaryColor3ui = unsafePerformIO $ getCommand "glSecondaryColor3ui"
-
--- glSecondaryColor3uiEXT ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3uivEXT'. This command is an alias for 'glSecondaryColor3ui'.
-glSecondaryColor3uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @red@ of type @ColorUI@.
-  -> GLuint -- ^ @green@ of type @ColorUI@.
-  -> GLuint -- ^ @blue@ of type @ColorUI@.
-  -> m ()
-glSecondaryColor3uiEXT v1 v2 v3 = liftIO $ dyn102 ptr_glSecondaryColor3uiEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3uiEXT #-}
-ptr_glSecondaryColor3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glSecondaryColor3uiEXT = unsafePerformIO $ getCommand "glSecondaryColor3uiEXT"
-
--- glSecondaryColor3uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3uiv
-  :: MonadIO m
-  => Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
-  -> m ()
-glSecondaryColor3uiv v1 = liftIO $ dyn103 ptr_glSecondaryColor3uiv v1
-
-{-# NOINLINE ptr_glSecondaryColor3uiv #-}
-ptr_glSecondaryColor3uiv :: FunPtr (Ptr GLuint -> IO ())
-ptr_glSecondaryColor3uiv = unsafePerformIO $ getCommand "glSecondaryColor3uiv"
-
--- glSecondaryColor3uivEXT -----------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3uiv'.
-glSecondaryColor3uivEXT
-  :: MonadIO m
-  => Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
-  -> m ()
-glSecondaryColor3uivEXT v1 = liftIO $ dyn103 ptr_glSecondaryColor3uivEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3uivEXT #-}
-ptr_glSecondaryColor3uivEXT :: FunPtr (Ptr GLuint -> IO ())
-ptr_glSecondaryColor3uivEXT = unsafePerformIO $ getCommand "glSecondaryColor3uivEXT"
-
--- glSecondaryColor3us ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3usv'.
-glSecondaryColor3us
-  :: MonadIO m
-  => GLushort -- ^ @red@ of type @ColorUS@.
-  -> GLushort -- ^ @green@ of type @ColorUS@.
-  -> GLushort -- ^ @blue@ of type @ColorUS@.
-  -> m ()
-glSecondaryColor3us v1 v2 v3 = liftIO $ dyn104 ptr_glSecondaryColor3us v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3us #-}
-ptr_glSecondaryColor3us :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
-ptr_glSecondaryColor3us = unsafePerformIO $ getCommand "glSecondaryColor3us"
-
--- glSecondaryColor3usEXT ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3usvEXT'. This command is an alias for 'glSecondaryColor3us'.
-glSecondaryColor3usEXT
-  :: MonadIO m
-  => GLushort -- ^ @red@ of type @ColorUS@.
-  -> GLushort -- ^ @green@ of type @ColorUS@.
-  -> GLushort -- ^ @blue@ of type @ColorUS@.
-  -> m ()
-glSecondaryColor3usEXT v1 v2 v3 = liftIO $ dyn104 ptr_glSecondaryColor3usEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3usEXT #-}
-ptr_glSecondaryColor3usEXT :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
-ptr_glSecondaryColor3usEXT = unsafePerformIO $ getCommand "glSecondaryColor3usEXT"
-
--- glSecondaryColor3usv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
-glSecondaryColor3usv
-  :: MonadIO m
-  => Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
-  -> m ()
-glSecondaryColor3usv v1 = liftIO $ dyn105 ptr_glSecondaryColor3usv v1
-
-{-# NOINLINE ptr_glSecondaryColor3usv #-}
-ptr_glSecondaryColor3usv :: FunPtr (Ptr GLushort -> IO ())
-ptr_glSecondaryColor3usv = unsafePerformIO $ getCommand "glSecondaryColor3usv"
-
--- glSecondaryColor3usvEXT -----------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3usv'.
-glSecondaryColor3usvEXT
-  :: MonadIO m
-  => Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
-  -> m ()
-glSecondaryColor3usvEXT v1 = liftIO $ dyn105 ptr_glSecondaryColor3usvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3usvEXT #-}
-ptr_glSecondaryColor3usvEXT :: FunPtr (Ptr GLushort -> IO ())
-ptr_glSecondaryColor3usvEXT = unsafePerformIO $ getCommand "glSecondaryColor3usvEXT"
-
--- glSecondaryColorFormatNV ----------------------------------------------------
-
-glSecondaryColorFormatNV
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glSecondaryColorFormatNV v1 v2 v3 = liftIO $ dyn119 ptr_glSecondaryColorFormatNV v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColorFormatNV #-}
-ptr_glSecondaryColorFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
-ptr_glSecondaryColorFormatNV = unsafePerformIO $ getCommand "glSecondaryColorFormatNV"
-
--- glSecondaryColorP3ui --------------------------------------------------------
-
-glSecondaryColorP3ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @color@.
-  -> m ()
-glSecondaryColorP3ui v1 v2 = liftIO $ dyn16 ptr_glSecondaryColorP3ui v1 v2
-
-{-# NOINLINE ptr_glSecondaryColorP3ui #-}
-ptr_glSecondaryColorP3ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glSecondaryColorP3ui = unsafePerformIO $ getCommand "glSecondaryColorP3ui"
-
--- glSecondaryColorP3uiv -------------------------------------------------------
-
-glSecondaryColorP3uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @color@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glSecondaryColorP3uiv v1 v2 = liftIO $ dyn125 ptr_glSecondaryColorP3uiv v1 v2
-
-{-# NOINLINE ptr_glSecondaryColorP3uiv #-}
-ptr_glSecondaryColorP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glSecondaryColorP3uiv = unsafePerformIO $ getCommand "glSecondaryColorP3uiv"
-
--- glSecondaryColorPointer -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColorPointer.xml OpenGL 2.x>.
-glSecondaryColorPointer
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glSecondaryColorPointer v1 v2 v3 v4 = liftIO $ dyn126 ptr_glSecondaryColorPointer v1 v2 v3 v4
-
-{-# NOINLINE ptr_glSecondaryColorPointer #-}
-ptr_glSecondaryColorPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glSecondaryColorPointer = unsafePerformIO $ getCommand "glSecondaryColorPointer"
-
--- glSecondaryColorPointerEXT --------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColorPointer'.
-glSecondaryColorPointerEXT
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glSecondaryColorPointerEXT v1 v2 v3 v4 = liftIO $ dyn126 ptr_glSecondaryColorPointerEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glSecondaryColorPointerEXT #-}
-ptr_glSecondaryColorPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glSecondaryColorPointerEXT = unsafePerformIO $ getCommand "glSecondaryColorPointerEXT"
-
--- glSecondaryColorPointerListIBM ----------------------------------------------
-
-glSecondaryColorPointerListIBM
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @SecondaryColorPointerTypeIBM@.
-  -> GLint -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glSecondaryColorPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn128 ptr_glSecondaryColorPointerListIBM v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glSecondaryColorPointerListIBM #-}
-ptr_glSecondaryColorPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-ptr_glSecondaryColorPointerListIBM = unsafePerformIO $ getCommand "glSecondaryColorPointerListIBM"
-
--- glSelectBuffer --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSelectBuffer.xml OpenGL 2.x>.
-glSelectBuffer
-  :: MonadIO m
-  => GLsizei -- ^ @size@.
-  -> Ptr GLuint -- ^ @buffer@ pointing to @size@ elements of type @SelectName@.
-  -> m ()
-glSelectBuffer v1 v2 = liftIO $ dyn193 ptr_glSelectBuffer v1 v2
-
-{-# NOINLINE ptr_glSelectBuffer #-}
-ptr_glSelectBuffer :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
-ptr_glSelectBuffer = unsafePerformIO $ getCommand "glSelectBuffer"
-
--- glSelectPerfMonitorCountersAMD ----------------------------------------------
-
-glSelectPerfMonitorCountersAMD
-  :: MonadIO m
-  => GLuint -- ^ @monitor@.
-  -> GLboolean -- ^ @enable@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @group@.
-  -> GLint -- ^ @numCounters@.
-  -> Ptr GLuint -- ^ @counterList@ pointing to @numCounters@ elements of type @GLuint@.
-  -> m ()
-glSelectPerfMonitorCountersAMD v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glSelectPerfMonitorCountersAMD v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glSelectPerfMonitorCountersAMD #-}
-ptr_glSelectPerfMonitorCountersAMD :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
-ptr_glSelectPerfMonitorCountersAMD = unsafePerformIO $ getCommand "glSelectPerfMonitorCountersAMD"
-
--- glSeparableFilter2D ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSeparableFilter2D.xml OpenGL 2.x>.
-glSeparableFilter2D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @SeparableTarget@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
-  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
-  -> m ()
-glSeparableFilter2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn706 ptr_glSeparableFilter2D v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glSeparableFilter2D #-}
-ptr_glSeparableFilter2D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
-ptr_glSeparableFilter2D = unsafePerformIO $ getCommand "glSeparableFilter2D"
-
--- glSeparableFilter2DEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSeparableFilter2D'.
-glSeparableFilter2DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [SeparableTargetEXT](Graphics-GL-Groups.html#SeparableTargetEXT).
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
-  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
-  -> m ()
-glSeparableFilter2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn706 ptr_glSeparableFilter2DEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glSeparableFilter2DEXT #-}
-ptr_glSeparableFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
-ptr_glSeparableFilter2DEXT = unsafePerformIO $ getCommand "glSeparableFilter2DEXT"
-
--- glSetFenceAPPLE -------------------------------------------------------------
-
-glSetFenceAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> m ()
-glSetFenceAPPLE v1 = liftIO $ dyn2 ptr_glSetFenceAPPLE v1
-
-{-# NOINLINE ptr_glSetFenceAPPLE #-}
-ptr_glSetFenceAPPLE :: FunPtr (GLuint -> IO ())
-ptr_glSetFenceAPPLE = unsafePerformIO $ getCommand "glSetFenceAPPLE"
-
--- glSetFenceNV ----------------------------------------------------------------
-
-glSetFenceNV
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> GLenum -- ^ @condition@ of type @FenceConditionNV@.
-  -> m ()
-glSetFenceNV v1 v2 = liftIO $ dyn15 ptr_glSetFenceNV v1 v2
-
-{-# NOINLINE ptr_glSetFenceNV #-}
-ptr_glSetFenceNV :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glSetFenceNV = unsafePerformIO $ getCommand "glSetFenceNV"
-
--- glSetFragmentShaderConstantATI ----------------------------------------------
-
-glSetFragmentShaderConstantATI
-  :: MonadIO m
-  => GLuint -- ^ @dst@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glSetFragmentShaderConstantATI v1 v2 = liftIO $ dyn379 ptr_glSetFragmentShaderConstantATI v1 v2
-
-{-# NOINLINE ptr_glSetFragmentShaderConstantATI #-}
-ptr_glSetFragmentShaderConstantATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glSetFragmentShaderConstantATI = unsafePerformIO $ getCommand "glSetFragmentShaderConstantATI"
-
--- glSetInvariantEXT -----------------------------------------------------------
-
-glSetInvariantEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
-  -> m ()
-glSetInvariantEXT v1 v2 v3 = liftIO $ dyn707 ptr_glSetInvariantEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSetInvariantEXT #-}
-ptr_glSetInvariantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
-ptr_glSetInvariantEXT = unsafePerformIO $ getCommand "glSetInvariantEXT"
-
--- glSetLocalConstantEXT -------------------------------------------------------
-
-glSetLocalConstantEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
-  -> m ()
-glSetLocalConstantEXT v1 v2 v3 = liftIO $ dyn707 ptr_glSetLocalConstantEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSetLocalConstantEXT #-}
-ptr_glSetLocalConstantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
-ptr_glSetLocalConstantEXT = unsafePerformIO $ getCommand "glSetLocalConstantEXT"
-
--- glSetMultisamplefvAMD -------------------------------------------------------
-
-glSetMultisamplefvAMD
-  :: MonadIO m
-  => GLenum -- ^ @pname@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glSetMultisamplefvAMD v1 v2 v3 = liftIO $ dyn267 ptr_glSetMultisamplefvAMD v1 v2 v3
-
-{-# NOINLINE ptr_glSetMultisamplefvAMD #-}
-ptr_glSetMultisamplefvAMD :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
-ptr_glSetMultisamplefvAMD = unsafePerformIO $ getCommand "glSetMultisamplefvAMD"
-
--- glShadeModel ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glShadeModel.xml OpenGL 2.x>.
-glShadeModel
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [ShadingModel](Graphics-GL-Groups.html#ShadingModel).
-  -> m ()
-glShadeModel v1 = liftIO $ dyn4 ptr_glShadeModel v1
-
-{-# NOINLINE ptr_glShadeModel #-}
-ptr_glShadeModel :: FunPtr (GLenum -> IO ())
-ptr_glShadeModel = unsafePerformIO $ getCommand "glShadeModel"
-
--- glShaderBinary --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderBinary.xhtml OpenGL 4.x>.
-glShaderBinary
-  :: MonadIO m
-  => GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @shaders@ pointing to @count@ elements of type @GLuint@.
-  -> GLenum -- ^ @binaryformat@.
-  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
-  -> GLsizei -- ^ @length@.
-  -> m ()
-glShaderBinary v1 v2 v3 v4 v5 = liftIO $ dyn708 ptr_glShaderBinary v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glShaderBinary #-}
-ptr_glShaderBinary :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
-ptr_glShaderBinary = unsafePerformIO $ getCommand "glShaderBinary"
-
--- glShaderOp1EXT --------------------------------------------------------------
-
-glShaderOp1EXT
-  :: MonadIO m
-  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
-  -> GLuint -- ^ @res@.
-  -> GLuint -- ^ @arg1@.
-  -> m ()
-glShaderOp1EXT v1 v2 v3 = liftIO $ dyn17 ptr_glShaderOp1EXT v1 v2 v3
-
-{-# NOINLINE ptr_glShaderOp1EXT #-}
-ptr_glShaderOp1EXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
-ptr_glShaderOp1EXT = unsafePerformIO $ getCommand "glShaderOp1EXT"
-
--- glShaderOp2EXT --------------------------------------------------------------
-
-glShaderOp2EXT
-  :: MonadIO m
-  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
-  -> GLuint -- ^ @res@.
-  -> GLuint -- ^ @arg1@.
-  -> GLuint -- ^ @arg2@.
-  -> m ()
-glShaderOp2EXT v1 v2 v3 v4 = liftIO $ dyn709 ptr_glShaderOp2EXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glShaderOp2EXT #-}
-ptr_glShaderOp2EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glShaderOp2EXT = unsafePerformIO $ getCommand "glShaderOp2EXT"
-
--- glShaderOp3EXT --------------------------------------------------------------
-
-glShaderOp3EXT
-  :: MonadIO m
-  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
-  -> GLuint -- ^ @res@.
-  -> GLuint -- ^ @arg1@.
-  -> GLuint -- ^ @arg2@.
-  -> GLuint -- ^ @arg3@.
-  -> m ()
-glShaderOp3EXT v1 v2 v3 v4 v5 = liftIO $ dyn710 ptr_glShaderOp3EXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glShaderOp3EXT #-}
-ptr_glShaderOp3EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glShaderOp3EXT = unsafePerformIO $ getCommand "glShaderOp3EXT"
-
--- glShaderSource --------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glShaderSource.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glShaderSource.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glShaderSource.xhtml OpenGL 4.x>.
-glShaderSource
-  :: MonadIO m
-  => GLuint -- ^ @shader@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr (Ptr GLchar) -- ^ @string@ pointing to @count@ elements of type @Ptr GLchar@.
-  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
-  -> m ()
-glShaderSource v1 v2 v3 v4 = liftIO $ dyn138 ptr_glShaderSource v1 v2 v3 v4
-
-{-# NOINLINE ptr_glShaderSource #-}
-ptr_glShaderSource :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
-ptr_glShaderSource = unsafePerformIO $ getCommand "glShaderSource"
-
--- glShaderSourceARB -----------------------------------------------------------
-
--- | This command is an alias for 'glShaderSource'.
-glShaderSourceARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @shaderObj@ of type @handleARB@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr (Ptr GLcharARB) -- ^ @string@ pointing to @count@ elements of type @Ptr GLcharARB@.
-  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
-  -> m ()
-glShaderSourceARB v1 v2 v3 v4 = liftIO $ dyn711 ptr_glShaderSourceARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glShaderSourceARB #-}
-ptr_glShaderSourceARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
-ptr_glShaderSourceARB = unsafePerformIO $ getCommand "glShaderSourceARB"
-
--- glShaderStorageBlockBinding -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderStorageBlockBinding.xhtml OpenGL 4.x>.
-glShaderStorageBlockBinding
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLuint -- ^ @storageBlockIndex@.
-  -> GLuint -- ^ @storageBlockBinding@.
-  -> m ()
-glShaderStorageBlockBinding v1 v2 v3 = liftIO $ dyn102 ptr_glShaderStorageBlockBinding v1 v2 v3
-
-{-# NOINLINE ptr_glShaderStorageBlockBinding #-}
-ptr_glShaderStorageBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glShaderStorageBlockBinding = unsafePerformIO $ getCommand "glShaderStorageBlockBinding"
-
--- glSharpenTexFuncSGIS --------------------------------------------------------
-
-glSharpenTexFuncSGIS
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
-  -> m ()
-glSharpenTexFuncSGIS v1 v2 v3 = liftIO $ dyn225 ptr_glSharpenTexFuncSGIS v1 v2 v3
-
-{-# NOINLINE ptr_glSharpenTexFuncSGIS #-}
-ptr_glSharpenTexFuncSGIS :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glSharpenTexFuncSGIS = unsafePerformIO $ getCommand "glSharpenTexFuncSGIS"
-
--- glSpriteParameterfSGIX ------------------------------------------------------
-
-glSpriteParameterfSGIX
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glSpriteParameterfSGIX v1 v2 = liftIO $ dyn0 ptr_glSpriteParameterfSGIX v1 v2
-
-{-# NOINLINE ptr_glSpriteParameterfSGIX #-}
-ptr_glSpriteParameterfSGIX :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glSpriteParameterfSGIX = unsafePerformIO $ getCommand "glSpriteParameterfSGIX"
-
--- glSpriteParameterfvSGIX -----------------------------------------------------
-
-glSpriteParameterfvSGIX
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glSpriteParameterfvSGIX v1 v2 = liftIO $ dyn94 ptr_glSpriteParameterfvSGIX v1 v2
-
-{-# NOINLINE ptr_glSpriteParameterfvSGIX #-}
-ptr_glSpriteParameterfvSGIX :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glSpriteParameterfvSGIX = unsafePerformIO $ getCommand "glSpriteParameterfvSGIX"
-
--- glSpriteParameteriSGIX ------------------------------------------------------
-
-glSpriteParameteriSGIX
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glSpriteParameteriSGIX v1 v2 = liftIO $ dyn55 ptr_glSpriteParameteriSGIX v1 v2
-
-{-# NOINLINE ptr_glSpriteParameteriSGIX #-}
-ptr_glSpriteParameteriSGIX :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glSpriteParameteriSGIX = unsafePerformIO $ getCommand "glSpriteParameteriSGIX"
-
--- glSpriteParameterivSGIX -----------------------------------------------------
-
-glSpriteParameterivSGIX
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glSpriteParameterivSGIX v1 v2 = liftIO $ dyn136 ptr_glSpriteParameterivSGIX v1 v2
-
-{-# NOINLINE ptr_glSpriteParameterivSGIX #-}
-ptr_glSpriteParameterivSGIX :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glSpriteParameterivSGIX = unsafePerformIO $ getCommand "glSpriteParameterivSGIX"
-
--- glStartInstrumentsSGIX ------------------------------------------------------
-
-glStartInstrumentsSGIX
-  :: MonadIO m
-  => m ()
-glStartInstrumentsSGIX = liftIO $ dyn10 ptr_glStartInstrumentsSGIX
-
-{-# NOINLINE ptr_glStartInstrumentsSGIX #-}
-ptr_glStartInstrumentsSGIX :: FunPtr (IO ())
-ptr_glStartInstrumentsSGIX = unsafePerformIO $ getCommand "glStartInstrumentsSGIX"
-
--- glStartTilingQCOM -----------------------------------------------------------
-
-glStartTilingQCOM
-  :: MonadIO m
-  => GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @width@.
-  -> GLuint -- ^ @height@.
-  -> GLbitfield -- ^ @preserveMask@.
-  -> m ()
-glStartTilingQCOM v1 v2 v3 v4 v5 = liftIO $ dyn712 ptr_glStartTilingQCOM v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glStartTilingQCOM #-}
-ptr_glStartTilingQCOM :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
-ptr_glStartTilingQCOM = unsafePerformIO $ getCommand "glStartTilingQCOM"
-
--- glStateCaptureNV ------------------------------------------------------------
-
-glStateCaptureNV
-  :: MonadIO m
-  => GLuint -- ^ @state@.
-  -> GLenum -- ^ @mode@.
-  -> m ()
-glStateCaptureNV v1 v2 = liftIO $ dyn15 ptr_glStateCaptureNV v1 v2
-
-{-# NOINLINE ptr_glStateCaptureNV #-}
-ptr_glStateCaptureNV :: FunPtr (GLuint -> GLenum -> IO ())
-ptr_glStateCaptureNV = unsafePerformIO $ getCommand "glStateCaptureNV"
-
--- glStencilClearTagEXT --------------------------------------------------------
-
-glStencilClearTagEXT
-  :: MonadIO m
-  => GLsizei -- ^ @stencilTagBits@.
-  -> GLuint -- ^ @stencilClearTag@.
-  -> m ()
-glStencilClearTagEXT v1 v2 = liftIO $ dyn713 ptr_glStencilClearTagEXT v1 v2
-
-{-# NOINLINE ptr_glStencilClearTagEXT #-}
-ptr_glStencilClearTagEXT :: FunPtr (GLsizei -> GLuint -> IO ())
-ptr_glStencilClearTagEXT = unsafePerformIO $ getCommand "glStencilClearTagEXT"
-
--- glStencilFillPathInstancedNV ------------------------------------------------
-
-glStencilFillPathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
-  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
-  -> GLuint -- ^ @pathBase@ of type @Path@.
-  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
-  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
-  -> m ()
-glStencilFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn714 ptr_glStencilFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glStencilFillPathInstancedNV #-}
-ptr_glStencilFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilFillPathInstancedNV"
+  glRenderbufferStorageMultisampleEXT,
+  glRenderbufferStorageMultisampleIMG,
+  glRenderbufferStorageMultisampleNV,
+  glRenderbufferStorageOES,
+  glReplacementCodePointerSUN,
+  glReplacementCodeubSUN,
+  glReplacementCodeubvSUN,
+  glReplacementCodeuiColor3fVertex3fSUN,
+  glReplacementCodeuiColor3fVertex3fvSUN,
+  glReplacementCodeuiColor4fNormal3fVertex3fSUN,
+  glReplacementCodeuiColor4fNormal3fVertex3fvSUN,
+  glReplacementCodeuiColor4ubVertex3fSUN,
+  glReplacementCodeuiColor4ubVertex3fvSUN,
+  glReplacementCodeuiNormal3fVertex3fSUN,
+  glReplacementCodeuiNormal3fVertex3fvSUN,
+  glReplacementCodeuiSUN,
+  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN,
+  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,
+  glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN,
+  glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,
+  glReplacementCodeuiTexCoord2fVertex3fSUN,
+  glReplacementCodeuiTexCoord2fVertex3fvSUN,
+  glReplacementCodeuiVertex3fSUN,
+  glReplacementCodeuiVertex3fvSUN,
+  glReplacementCodeuivSUN,
+  glReplacementCodeusSUN,
+  glReplacementCodeusvSUN,
+  glRequestResidentProgramsNV,
+  glResetHistogram,
+  glResetHistogramEXT,
+  glResetMinmax,
+  glResetMinmaxEXT,
+  glResizeBuffersMESA,
+  glResolveDepthValuesNV,
+  glResolveMultisampleFramebufferAPPLE,
+  glResumeTransformFeedback,
+  glResumeTransformFeedbackNV,
+  glRotated,
+  glRotatef,
+  glRotatex,
+  glRotatexOES,
+  glSampleCoverage,
+  glSampleCoverageARB,
+  glSampleCoveragex,
+  glSampleCoveragexOES,
+  glSampleMapATI,
+  glSampleMaskEXT,
+  glSampleMaskIndexedNV,
+  glSampleMaskSGIS,
+  glSampleMaski,
+  glSamplePatternEXT,
+  glSamplePatternSGIS,
+  glSamplerParameterIiv,
+  glSamplerParameterIivEXT,
+  glSamplerParameterIivOES,
+  glSamplerParameterIuiv,
+  glSamplerParameterIuivEXT,
+  glSamplerParameterIuivOES,
+  glSamplerParameterf,
+  glSamplerParameterfv,
+  glSamplerParameteri,
+  glSamplerParameteriv,
+  glScaled,
+  glScalef,
+  glScalex,
+  glScalexOES,
+  glScissor,
+  glScissorArrayv,
+  glScissorArrayvNV,
+  glScissorArrayvOES,
+  glScissorIndexed,
+  glScissorIndexedNV,
+  glScissorIndexedOES,
+  glScissorIndexedv,
+  glScissorIndexedvNV,
+  glScissorIndexedvOES,
+  glSecondaryColor3b,
+  glSecondaryColor3bEXT,
+  glSecondaryColor3bv,
+  glSecondaryColor3bvEXT,
+  glSecondaryColor3d,
+  glSecondaryColor3dEXT,
+  glSecondaryColor3dv,
+  glSecondaryColor3dvEXT,
+  glSecondaryColor3f,
+  glSecondaryColor3fEXT,
+  glSecondaryColor3fv,
+  glSecondaryColor3fvEXT,
+  glSecondaryColor3hNV,
+  glSecondaryColor3hvNV,
+  glSecondaryColor3i,
+  glSecondaryColor3iEXT,
+  glSecondaryColor3iv,
+  glSecondaryColor3ivEXT,
+  glSecondaryColor3s,
+  glSecondaryColor3sEXT,
+  glSecondaryColor3sv,
+  glSecondaryColor3svEXT,
+  glSecondaryColor3ub,
+  glSecondaryColor3ubEXT
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glRenderbufferStorageMultisampleEXT -----------------------------------------
+
+-- | This command is an alias for 'glRenderbufferStorageMultisample'.
+glRenderbufferStorageMultisampleEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisampleEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleEXT #-}
+ptr_glRenderbufferStorageMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleEXT"
+
+-- glRenderbufferStorageMultisampleIMG -----------------------------------------
+
+glRenderbufferStorageMultisampleIMG
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleIMG v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisampleIMG v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleIMG #-}
+ptr_glRenderbufferStorageMultisampleIMG :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleIMG = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleIMG"
+
+-- glRenderbufferStorageMultisampleNV ------------------------------------------
+
+-- | This command is an alias for 'glRenderbufferStorageMultisample'.
+glRenderbufferStorageMultisampleNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleNV v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glRenderbufferStorageMultisampleNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleNV #-}
+ptr_glRenderbufferStorageMultisampleNV :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleNV"
+
+-- glRenderbufferStorageOES ----------------------------------------------------
+
+glRenderbufferStorageOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageOES v1 v2 v3 v4 = liftIO $ dyn704 ptr_glRenderbufferStorageOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRenderbufferStorageOES #-}
+ptr_glRenderbufferStorageOES :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageOES = unsafePerformIO $ getCommand "glRenderbufferStorageOES"
+
+-- glReplacementCodePointerSUN -------------------------------------------------
+
+glReplacementCodePointerSUN
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type @ReplacementCodeTypeSUN@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
+  -> m ()
+glReplacementCodePointerSUN v1 v2 v3 = liftIO $ dyn707 ptr_glReplacementCodePointerSUN v1 v2 v3
+
+{-# NOINLINE ptr_glReplacementCodePointerSUN #-}
+ptr_glReplacementCodePointerSUN :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
+ptr_glReplacementCodePointerSUN = unsafePerformIO $ getCommand "glReplacementCodePointerSUN"
+
+-- glReplacementCodeubSUN ------------------------------------------------------
+
+glReplacementCodeubSUN
+  :: MonadIO m
+  => GLubyte -- ^ @code@.
+  -> m ()
+glReplacementCodeubSUN v1 = liftIO $ dyn476 ptr_glReplacementCodeubSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeubSUN #-}
+ptr_glReplacementCodeubSUN :: FunPtr (GLubyte -> IO ())
+ptr_glReplacementCodeubSUN = unsafePerformIO $ getCommand "glReplacementCodeubSUN"
+
+-- glReplacementCodeubvSUN -----------------------------------------------------
+
+glReplacementCodeubvSUN
+  :: MonadIO m
+  => Ptr GLubyte -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
+  -> m ()
+glReplacementCodeubvSUN v1 = liftIO $ dyn104 ptr_glReplacementCodeubvSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeubvSUN #-}
+ptr_glReplacementCodeubvSUN :: FunPtr (Ptr GLubyte -> IO ())
+ptr_glReplacementCodeubvSUN = unsafePerformIO $ getCommand "glReplacementCodeubvSUN"
+
+-- glReplacementCodeuiColor3fVertex3fSUN ---------------------------------------
+
+glReplacementCodeuiColor3fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn708 ptr_glReplacementCodeuiColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fSUN #-}
+ptr_glReplacementCodeuiColor3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiColor3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fSUN"
+
+-- glReplacementCodeuiColor3fVertex3fvSUN --------------------------------------
+
+glReplacementCodeuiColor3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiColor3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn709 ptr_glReplacementCodeuiColor3fVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fvSUN #-}
+ptr_glReplacementCodeuiColor3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fvSUN"
+
+-- glReplacementCodeuiColor4fNormal3fVertex3fSUN -------------------------------
+
+glReplacementCodeuiColor4fNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @a@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn710 ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN #-}
+ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fSUN"
+
+-- glReplacementCodeuiColor4fNormal3fVertex3fvSUN ------------------------------
+
+glReplacementCodeuiColor4fNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn711 ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN v1 v2 v3 v4
+
+{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN #-}
+ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fvSUN"
+
+-- glReplacementCodeuiColor4ubVertex3fSUN --------------------------------------
+
+glReplacementCodeuiColor4ubVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLubyte -- ^ @r@.
+  -> GLubyte -- ^ @g@.
+  -> GLubyte -- ^ @b@.
+  -> GLubyte -- ^ @a@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn712 ptr_glReplacementCodeuiColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fSUN #-}
+ptr_glReplacementCodeuiColor4ubVertex3fSUN :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fSUN"
+
+-- glReplacementCodeuiColor4ubVertex3fvSUN -------------------------------------
+
+glReplacementCodeuiColor4ubVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiColor4ubVertex3fvSUN v1 v2 v3 = liftIO $ dyn713 ptr_glReplacementCodeuiColor4ubVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fvSUN #-}
+ptr_glReplacementCodeuiColor4ubVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fvSUN"
+
+-- glReplacementCodeuiNormal3fVertex3fSUN --------------------------------------
+
+glReplacementCodeuiNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn708 ptr_glReplacementCodeuiNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fSUN #-}
+ptr_glReplacementCodeuiNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fSUN"
+
+-- glReplacementCodeuiNormal3fVertex3fvSUN -------------------------------------
+
+glReplacementCodeuiNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn709 ptr_glReplacementCodeuiNormal3fVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fvSUN #-}
+ptr_glReplacementCodeuiNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fvSUN"
+
+-- glReplacementCodeuiSUN ------------------------------------------------------
+
+glReplacementCodeuiSUN
+  :: MonadIO m
+  => GLuint -- ^ @code@.
+  -> m ()
+glReplacementCodeuiSUN v1 = liftIO $ dyn3 ptr_glReplacementCodeuiSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeuiSUN #-}
+ptr_glReplacementCodeuiSUN :: FunPtr (GLuint -> IO ())
+ptr_glReplacementCodeuiSUN = unsafePerformIO $ getCommand "glReplacementCodeuiSUN"
+
+-- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN ---------------------
+
+glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @a@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn714 ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN #-}
+ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN"
+
+-- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN --------------------
+
+glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 v5 = liftIO $ dyn715 ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN #-}
+ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN"
+
+-- glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN ----------------------------
+
+glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn716 ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN #-}
+ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN"
+
+-- glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN ---------------------------
+
+glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn711 ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 v4
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN #-}
+ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN"
+
+-- glReplacementCodeuiTexCoord2fVertex3fSUN ------------------------------------
+
+glReplacementCodeuiTexCoord2fVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 v6 = liftIO $ dyn717 ptr_glReplacementCodeuiTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fSUN #-}
+ptr_glReplacementCodeuiTexCoord2fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fSUN"
+
+-- glReplacementCodeuiTexCoord2fVertex3fvSUN -----------------------------------
+
+glReplacementCodeuiTexCoord2fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiTexCoord2fVertex3fvSUN v1 v2 v3 = liftIO $ dyn709 ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN #-}
+ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fvSUN"
+
+-- glReplacementCodeuiVertex3fSUN ----------------------------------------------
+
+glReplacementCodeuiVertex3fSUN
+  :: MonadIO m
+  => GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glReplacementCodeuiVertex3fSUN v1 v2 v3 v4 = liftIO $ dyn718 ptr_glReplacementCodeuiVertex3fSUN v1 v2 v3 v4
+
+{-# NOINLINE ptr_glReplacementCodeuiVertex3fSUN #-}
+ptr_glReplacementCodeuiVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glReplacementCodeuiVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fSUN"
+
+-- glReplacementCodeuiVertex3fvSUN ---------------------------------------------
+
+glReplacementCodeuiVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @rc@ pointing to @1@ element of type @ReplacementCodeSUN@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glReplacementCodeuiVertex3fvSUN v1 v2 = liftIO $ dyn719 ptr_glReplacementCodeuiVertex3fvSUN v1 v2
+
+{-# NOINLINE ptr_glReplacementCodeuiVertex3fvSUN #-}
+ptr_glReplacementCodeuiVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
+ptr_glReplacementCodeuiVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fvSUN"
+
+-- glReplacementCodeuivSUN -----------------------------------------------------
+
+glReplacementCodeuivSUN
+  :: MonadIO m
+  => Ptr GLuint -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLuint@.
+  -> m ()
+glReplacementCodeuivSUN v1 = liftIO $ dyn106 ptr_glReplacementCodeuivSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeuivSUN #-}
+ptr_glReplacementCodeuivSUN :: FunPtr (Ptr GLuint -> IO ())
+ptr_glReplacementCodeuivSUN = unsafePerformIO $ getCommand "glReplacementCodeuivSUN"
+
+-- glReplacementCodeusSUN ------------------------------------------------------
+
+glReplacementCodeusSUN
+  :: MonadIO m
+  => GLushort -- ^ @code@.
+  -> m ()
+glReplacementCodeusSUN v1 = liftIO $ dyn477 ptr_glReplacementCodeusSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeusSUN #-}
+ptr_glReplacementCodeusSUN :: FunPtr (GLushort -> IO ())
+ptr_glReplacementCodeusSUN = unsafePerformIO $ getCommand "glReplacementCodeusSUN"
+
+-- glReplacementCodeusvSUN -----------------------------------------------------
+
+glReplacementCodeusvSUN
+  :: MonadIO m
+  => Ptr GLushort -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLushort@.
+  -> m ()
+glReplacementCodeusvSUN v1 = liftIO $ dyn108 ptr_glReplacementCodeusvSUN v1
+
+{-# NOINLINE ptr_glReplacementCodeusvSUN #-}
+ptr_glReplacementCodeusvSUN :: FunPtr (Ptr GLushort -> IO ())
+ptr_glReplacementCodeusvSUN = unsafePerformIO $ getCommand "glReplacementCodeusvSUN"
+
+-- glRequestResidentProgramsNV -------------------------------------------------
+
+glRequestResidentProgramsNV
+  :: MonadIO m
+  => GLsizei -- ^ @n@.
+  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
+  -> m ()
+glRequestResidentProgramsNV v1 v2 = liftIO $ dyn196 ptr_glRequestResidentProgramsNV v1 v2
+
+{-# NOINLINE ptr_glRequestResidentProgramsNV #-}
+ptr_glRequestResidentProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glRequestResidentProgramsNV = unsafePerformIO $ getCommand "glRequestResidentProgramsNV"
+
+-- glResetHistogram ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetHistogram.xml OpenGL 2.x>.
+glResetHistogram
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @HistogramTarget@.
+  -> m ()
+glResetHistogram v1 = liftIO $ dyn5 ptr_glResetHistogram v1
+
+{-# NOINLINE ptr_glResetHistogram #-}
+ptr_glResetHistogram :: FunPtr (GLenum -> IO ())
+ptr_glResetHistogram = unsafePerformIO $ getCommand "glResetHistogram"
+
+-- glResetHistogramEXT ---------------------------------------------------------
+
+-- | This command is an alias for 'glResetHistogram'.
+glResetHistogramEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [HistogramTargetEXT](Graphics-GL-Groups.html#HistogramTargetEXT).
+  -> m ()
+glResetHistogramEXT v1 = liftIO $ dyn5 ptr_glResetHistogramEXT v1
+
+{-# NOINLINE ptr_glResetHistogramEXT #-}
+ptr_glResetHistogramEXT :: FunPtr (GLenum -> IO ())
+ptr_glResetHistogramEXT = unsafePerformIO $ getCommand "glResetHistogramEXT"
+
+-- glResetMinmax ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetMinmax.xml OpenGL 2.x>.
+glResetMinmax
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @MinmaxTarget@.
+  -> m ()
+glResetMinmax v1 = liftIO $ dyn5 ptr_glResetMinmax v1
+
+{-# NOINLINE ptr_glResetMinmax #-}
+ptr_glResetMinmax :: FunPtr (GLenum -> IO ())
+ptr_glResetMinmax = unsafePerformIO $ getCommand "glResetMinmax"
+
+-- glResetMinmaxEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glResetMinmax'.
+glResetMinmaxEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [MinmaxTargetEXT](Graphics-GL-Groups.html#MinmaxTargetEXT).
+  -> m ()
+glResetMinmaxEXT v1 = liftIO $ dyn5 ptr_glResetMinmaxEXT v1
+
+{-# NOINLINE ptr_glResetMinmaxEXT #-}
+ptr_glResetMinmaxEXT :: FunPtr (GLenum -> IO ())
+ptr_glResetMinmaxEXT = unsafePerformIO $ getCommand "glResetMinmaxEXT"
+
+-- glResizeBuffersMESA ---------------------------------------------------------
+
+glResizeBuffersMESA
+  :: MonadIO m
+  => m ()
+glResizeBuffersMESA = liftIO $ dyn11 ptr_glResizeBuffersMESA
+
+{-# NOINLINE ptr_glResizeBuffersMESA #-}
+ptr_glResizeBuffersMESA :: FunPtr (IO ())
+ptr_glResizeBuffersMESA = unsafePerformIO $ getCommand "glResizeBuffersMESA"
+
+-- glResolveDepthValuesNV ------------------------------------------------------
+
+glResolveDepthValuesNV
+  :: MonadIO m
+  => m ()
+glResolveDepthValuesNV = liftIO $ dyn11 ptr_glResolveDepthValuesNV
+
+{-# NOINLINE ptr_glResolveDepthValuesNV #-}
+ptr_glResolveDepthValuesNV :: FunPtr (IO ())
+ptr_glResolveDepthValuesNV = unsafePerformIO $ getCommand "glResolveDepthValuesNV"
+
+-- glResolveMultisampleFramebufferAPPLE ----------------------------------------
+
+glResolveMultisampleFramebufferAPPLE
+  :: MonadIO m
+  => m ()
+glResolveMultisampleFramebufferAPPLE = liftIO $ dyn11 ptr_glResolveMultisampleFramebufferAPPLE
+
+{-# NOINLINE ptr_glResolveMultisampleFramebufferAPPLE #-}
+ptr_glResolveMultisampleFramebufferAPPLE :: FunPtr (IO ())
+ptr_glResolveMultisampleFramebufferAPPLE = unsafePerformIO $ getCommand "glResolveMultisampleFramebufferAPPLE"
+
+-- glResumeTransformFeedback ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glResumeTransformFeedback.xhtml OpenGL 4.x>.
+glResumeTransformFeedback
+  :: MonadIO m
+  => m ()
+glResumeTransformFeedback = liftIO $ dyn11 ptr_glResumeTransformFeedback
+
+{-# NOINLINE ptr_glResumeTransformFeedback #-}
+ptr_glResumeTransformFeedback :: FunPtr (IO ())
+ptr_glResumeTransformFeedback = unsafePerformIO $ getCommand "glResumeTransformFeedback"
+
+-- glResumeTransformFeedbackNV -------------------------------------------------
+
+-- | This command is an alias for 'glResumeTransformFeedback'.
+glResumeTransformFeedbackNV
+  :: MonadIO m
+  => m ()
+glResumeTransformFeedbackNV = liftIO $ dyn11 ptr_glResumeTransformFeedbackNV
+
+{-# NOINLINE ptr_glResumeTransformFeedbackNV #-}
+ptr_glResumeTransformFeedbackNV :: FunPtr (IO ())
+ptr_glResumeTransformFeedbackNV = unsafePerformIO $ getCommand "glResumeTransformFeedbackNV"
+
+-- glRotated -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>.
+glRotated
+  :: MonadIO m
+  => GLdouble -- ^ @angle@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glRotated v1 v2 v3 v4 = liftIO $ dyn112 ptr_glRotated v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRotated #-}
+ptr_glRotated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glRotated = unsafePerformIO $ getCommand "glRotated"
+
+-- glRotatef -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>.
+glRotatef
+  :: MonadIO m
+  => GLfloat -- ^ @angle@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glRotatef v1 v2 v3 v4 = liftIO $ dyn50 ptr_glRotatef v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRotatef #-}
+ptr_glRotatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glRotatef = unsafePerformIO $ getCommand "glRotatef"
+
+-- glRotatex -------------------------------------------------------------------
+
+glRotatex
+  :: MonadIO m
+  => GLfixed -- ^ @angle@.
+  -> GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glRotatex v1 v2 v3 v4 = liftIO $ dyn51 ptr_glRotatex v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRotatex #-}
+ptr_glRotatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glRotatex = unsafePerformIO $ getCommand "glRotatex"
+
+-- glRotatexOES ----------------------------------------------------------------
+
+glRotatexOES
+  :: MonadIO m
+  => GLfixed -- ^ @angle@.
+  -> GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glRotatexOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glRotatexOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glRotatexOES #-}
+ptr_glRotatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glRotatexOES = unsafePerformIO $ getCommand "glRotatexOES"
+
+-- glSampleCoverage ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glSampleCoverage.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleCoverage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleCoverage.xhtml OpenGL 4.x>.
+glSampleCoverage
+  :: MonadIO m
+  => GLfloat -- ^ @value@.
+  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glSampleCoverage v1 v2 = liftIO $ dyn720 ptr_glSampleCoverage v1 v2
+
+{-# NOINLINE ptr_glSampleCoverage #-}
+ptr_glSampleCoverage :: FunPtr (GLfloat -> GLboolean -> IO ())
+ptr_glSampleCoverage = unsafePerformIO $ getCommand "glSampleCoverage"
+
+-- glSampleCoverageARB ---------------------------------------------------------
+
+-- | This command is an alias for 'glSampleCoverage'.
+glSampleCoverageARB
+  :: MonadIO m
+  => GLfloat -- ^ @value@.
+  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glSampleCoverageARB v1 v2 = liftIO $ dyn720 ptr_glSampleCoverageARB v1 v2
+
+{-# NOINLINE ptr_glSampleCoverageARB #-}
+ptr_glSampleCoverageARB :: FunPtr (GLfloat -> GLboolean -> IO ())
+ptr_glSampleCoverageARB = unsafePerformIO $ getCommand "glSampleCoverageARB"
+
+-- glSampleCoveragex -----------------------------------------------------------
+
+glSampleCoveragex
+  :: MonadIO m
+  => GLclampx -- ^ @value@.
+  -> GLboolean -- ^ @invert@.
+  -> m ()
+glSampleCoveragex v1 v2 = liftIO $ dyn721 ptr_glSampleCoveragex v1 v2
+
+{-# NOINLINE ptr_glSampleCoveragex #-}
+ptr_glSampleCoveragex :: FunPtr (GLclampx -> GLboolean -> IO ())
+ptr_glSampleCoveragex = unsafePerformIO $ getCommand "glSampleCoveragex"
+
+-- glSampleCoveragexOES --------------------------------------------------------
+
+glSampleCoveragexOES
+  :: MonadIO m
+  => GLclampx -- ^ @value@.
+  -> GLboolean -- ^ @invert@.
+  -> m ()
+glSampleCoveragexOES v1 v2 = liftIO $ dyn721 ptr_glSampleCoveragexOES v1 v2
+
+{-# NOINLINE ptr_glSampleCoveragexOES #-}
+ptr_glSampleCoveragexOES :: FunPtr (GLclampx -> GLboolean -> IO ())
+ptr_glSampleCoveragexOES = unsafePerformIO $ getCommand "glSampleCoveragexOES"
+
+-- glSampleMapATI --------------------------------------------------------------
+
+glSampleMapATI
+  :: MonadIO m
+  => GLuint -- ^ @dst@.
+  -> GLuint -- ^ @interp@.
+  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
+  -> m ()
+glSampleMapATI v1 v2 v3 = liftIO $ dyn621 ptr_glSampleMapATI v1 v2 v3
+
+{-# NOINLINE ptr_glSampleMapATI #-}
+ptr_glSampleMapATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
+ptr_glSampleMapATI = unsafePerformIO $ getCommand "glSampleMapATI"
+
+-- glSampleMaskEXT -------------------------------------------------------------
+
+glSampleMaskEXT
+  :: MonadIO m
+  => GLclampf -- ^ @value@ of type @ClampedFloat32@.
+  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glSampleMaskEXT v1 v2 = liftIO $ dyn722 ptr_glSampleMaskEXT v1 v2
+
+{-# NOINLINE ptr_glSampleMaskEXT #-}
+ptr_glSampleMaskEXT :: FunPtr (GLclampf -> GLboolean -> IO ())
+ptr_glSampleMaskEXT = unsafePerformIO $ getCommand "glSampleMaskEXT"
+
+-- glSampleMaskIndexedNV -------------------------------------------------------
+
+glSampleMaskIndexedNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLbitfield -- ^ @mask@ of type @SampleMaskNV@.
+  -> m ()
+glSampleMaskIndexedNV v1 v2 = liftIO $ dyn592 ptr_glSampleMaskIndexedNV v1 v2
+
+{-# NOINLINE ptr_glSampleMaskIndexedNV #-}
+ptr_glSampleMaskIndexedNV :: FunPtr (GLuint -> GLbitfield -> IO ())
+ptr_glSampleMaskIndexedNV = unsafePerformIO $ getCommand "glSampleMaskIndexedNV"
+
+-- glSampleMaskSGIS ------------------------------------------------------------
+
+-- | This command is an alias for 'glSampleMaskEXT'.
+glSampleMaskSGIS
+  :: MonadIO m
+  => GLclampf -- ^ @value@ of type @ClampedFloat32@.
+  -> GLboolean -- ^ @invert@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glSampleMaskSGIS v1 v2 = liftIO $ dyn722 ptr_glSampleMaskSGIS v1 v2
+
+{-# NOINLINE ptr_glSampleMaskSGIS #-}
+ptr_glSampleMaskSGIS :: FunPtr (GLclampf -> GLboolean -> IO ())
+ptr_glSampleMaskSGIS = unsafePerformIO $ getCommand "glSampleMaskSGIS"
+
+-- glSampleMaski ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleMaski.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleMaski.xhtml OpenGL 4.x>.
+glSampleMaski
+  :: MonadIO m
+  => GLuint -- ^ @maskNumber@.
+  -> GLbitfield -- ^ @mask@.
+  -> m ()
+glSampleMaski v1 v2 = liftIO $ dyn592 ptr_glSampleMaski v1 v2
+
+{-# NOINLINE ptr_glSampleMaski #-}
+ptr_glSampleMaski :: FunPtr (GLuint -> GLbitfield -> IO ())
+ptr_glSampleMaski = unsafePerformIO $ getCommand "glSampleMaski"
+
+-- glSamplePatternEXT ----------------------------------------------------------
+
+glSamplePatternEXT
+  :: MonadIO m
+  => GLenum -- ^ @pattern@ of type @SamplePatternEXT@.
+  -> m ()
+glSamplePatternEXT v1 = liftIO $ dyn5 ptr_glSamplePatternEXT v1
+
+{-# NOINLINE ptr_glSamplePatternEXT #-}
+ptr_glSamplePatternEXT :: FunPtr (GLenum -> IO ())
+ptr_glSamplePatternEXT = unsafePerformIO $ getCommand "glSamplePatternEXT"
+
+-- glSamplePatternSGIS ---------------------------------------------------------
+
+-- | This command is an alias for 'glSamplePatternEXT'.
+glSamplePatternSGIS
+  :: MonadIO m
+  => GLenum -- ^ @pattern@ of type [SamplePatternSGIS](Graphics-GL-Groups.html#SamplePatternSGIS).
+  -> m ()
+glSamplePatternSGIS v1 = liftIO $ dyn5 ptr_glSamplePatternSGIS v1
+
+{-# NOINLINE ptr_glSamplePatternSGIS #-}
+ptr_glSamplePatternSGIS :: FunPtr (GLenum -> IO ())
+ptr_glSamplePatternSGIS = unsafePerformIO $ getCommand "glSamplePatternSGIS"
+
+-- glSamplerParameterIiv -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameterIiv
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glSamplerParameterIiv v1 v2 v3 = liftIO $ dyn341 ptr_glSamplerParameterIiv v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIiv #-}
+ptr_glSamplerParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glSamplerParameterIiv = unsafePerformIO $ getCommand "glSamplerParameterIiv"
+
+-- glSamplerParameterIivEXT ----------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIiv'.
+glSamplerParameterIivEXT
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glSamplerParameterIivEXT v1 v2 v3 = liftIO $ dyn341 ptr_glSamplerParameterIivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIivEXT #-}
+ptr_glSamplerParameterIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glSamplerParameterIivEXT = unsafePerformIO $ getCommand "glSamplerParameterIivEXT"
+
+-- glSamplerParameterIivOES ----------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIiv'.
+glSamplerParameterIivOES
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glSamplerParameterIivOES v1 v2 v3 = liftIO $ dyn341 ptr_glSamplerParameterIivOES v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIivOES #-}
+ptr_glSamplerParameterIivOES :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glSamplerParameterIivOES = unsafePerformIO $ getCommand "glSamplerParameterIivOES"
+
+-- glSamplerParameterIuiv ------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameterIuiv
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glSamplerParameterIuiv v1 v2 v3 = liftIO $ dyn384 ptr_glSamplerParameterIuiv v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIuiv #-}
+ptr_glSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glSamplerParameterIuiv = unsafePerformIO $ getCommand "glSamplerParameterIuiv"
+
+-- glSamplerParameterIuivEXT ---------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIuiv'.
+glSamplerParameterIuivEXT
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn384 ptr_glSamplerParameterIuivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIuivEXT #-}
+ptr_glSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glSamplerParameterIuivEXT"
+
+-- glSamplerParameterIuivOES ---------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIuiv'.
+glSamplerParameterIuivOES
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn384 ptr_glSamplerParameterIuivOES v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIuivOES #-}
+ptr_glSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glSamplerParameterIuivOES = unsafePerformIO $ getCommand "glSamplerParameterIuivOES"
+
+-- glSamplerParameterf ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameterf
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glSamplerParameterf v1 v2 v3 = liftIO $ dyn505 ptr_glSamplerParameterf v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterf #-}
+ptr_glSamplerParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+ptr_glSamplerParameterf = unsafePerformIO $ getCommand "glSamplerParameterf"
+
+-- glSamplerParameterfv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameterfv
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glSamplerParameterfv v1 v2 v3 = liftIO $ dyn357 ptr_glSamplerParameterfv v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterfv #-}
+ptr_glSamplerParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glSamplerParameterfv = unsafePerformIO $ getCommand "glSamplerParameterfv"
+
+-- glSamplerParameteri ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameteri
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glSamplerParameteri v1 v2 v3 = liftIO $ dyn481 ptr_glSamplerParameteri v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameteri #-}
+ptr_glSamplerParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glSamplerParameteri = unsafePerformIO $ getCommand "glSamplerParameteri"
+
+-- glSamplerParameteriv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameteriv
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glSamplerParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glSamplerParameteriv v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameteriv #-}
+ptr_glSamplerParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glSamplerParameteriv = unsafePerformIO $ getCommand "glSamplerParameteriv"
+
+-- glScaled --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>.
+glScaled
+  :: MonadIO m
+  => GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glScaled v1 v2 v3 = liftIO $ dyn39 ptr_glScaled v1 v2 v3
+
+{-# NOINLINE ptr_glScaled #-}
+ptr_glScaled :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glScaled = unsafePerformIO $ getCommand "glScaled"
+
+-- glScalef --------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>.
+glScalef
+  :: MonadIO m
+  => GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glScalef v1 v2 v3 = liftIO $ dyn41 ptr_glScalef v1 v2 v3
+
+{-# NOINLINE ptr_glScalef #-}
+ptr_glScalef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glScalef = unsafePerformIO $ getCommand "glScalef"
+
+-- glScalex --------------------------------------------------------------------
+
+glScalex
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glScalex v1 v2 v3 = liftIO $ dyn109 ptr_glScalex v1 v2 v3
+
+{-# NOINLINE ptr_glScalex #-}
+ptr_glScalex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glScalex = unsafePerformIO $ getCommand "glScalex"
+
+-- glScalexOES -----------------------------------------------------------------
+
+glScalexOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glScalexOES v1 v2 v3 = liftIO $ dyn109 ptr_glScalexOES v1 v2 v3
+
+{-# NOINLINE ptr_glScalexOES #-}
+ptr_glScalexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glScalexOES = unsafePerformIO $ getCommand "glScalexOES"
+
+-- glScissor -------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glScissor.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glScissor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glScissor.xhtml OpenGL 4.x>.
+glScissor
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @WinCoord@.
+  -> GLint -- ^ @y@ of type @WinCoord@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glScissor v1 v2 v3 v4 = liftIO $ dyn723 ptr_glScissor v1 v2 v3 v4
+
+{-# NOINLINE ptr_glScissor #-}
+ptr_glScissor :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glScissor = unsafePerformIO $ getCommand "glScissor"
+
+-- glScissorArrayv -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorArray.xhtml OpenGL 4.x>.
+glScissorArrayv
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> m ()
+glScissorArrayv v1 v2 v3 = liftIO $ dyn724 ptr_glScissorArrayv v1 v2 v3
+
+{-# NOINLINE ptr_glScissorArrayv #-}
+ptr_glScissorArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glScissorArrayv = unsafePerformIO $ getCommand "glScissorArrayv"
+
+-- glScissorArrayvNV -----------------------------------------------------------
+
+-- | This command is an alias for 'glScissorArrayv'.
+glScissorArrayvNV
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> m ()
+glScissorArrayvNV v1 v2 v3 = liftIO $ dyn724 ptr_glScissorArrayvNV v1 v2 v3
+
+{-# NOINLINE ptr_glScissorArrayvNV #-}
+ptr_glScissorArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glScissorArrayvNV = unsafePerformIO $ getCommand "glScissorArrayvNV"
+
+-- glScissorArrayvOES ----------------------------------------------------------
+
+-- | This command is an alias for 'glScissorArrayv'.
+glScissorArrayvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> m ()
+glScissorArrayvOES v1 v2 v3 = liftIO $ dyn724 ptr_glScissorArrayvOES v1 v2 v3
+
+{-# NOINLINE ptr_glScissorArrayvOES #-}
+ptr_glScissorArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glScissorArrayvOES = unsafePerformIO $ getCommand "glScissorArrayvOES"
+
+-- glScissorIndexed ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
+glScissorIndexed
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @left@.
+  -> GLint -- ^ @bottom@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glScissorIndexed v1 v2 v3 v4 v5 = liftIO $ dyn725 ptr_glScissorIndexed v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glScissorIndexed #-}
+ptr_glScissorIndexed :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glScissorIndexed = unsafePerformIO $ getCommand "glScissorIndexed"
+
+-- glScissorIndexedNV ----------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexed'.
+glScissorIndexedNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @left@.
+  -> GLint -- ^ @bottom@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glScissorIndexedNV v1 v2 v3 v4 v5 = liftIO $ dyn725 ptr_glScissorIndexedNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glScissorIndexedNV #-}
+ptr_glScissorIndexedNV :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glScissorIndexedNV = unsafePerformIO $ getCommand "glScissorIndexedNV"
+
+-- glScissorIndexedOES ---------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexed'.
+glScissorIndexedOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @left@.
+  -> GLint -- ^ @bottom@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glScissorIndexedOES v1 v2 v3 v4 v5 = liftIO $ dyn725 ptr_glScissorIndexedOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glScissorIndexedOES #-}
+ptr_glScissorIndexedOES :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glScissorIndexedOES = unsafePerformIO $ getCommand "glScissorIndexedOES"
+
+-- glScissorIndexedv -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
+glScissorIndexedv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glScissorIndexedv v1 v2 = liftIO $ dyn726 ptr_glScissorIndexedv v1 v2
+
+{-# NOINLINE ptr_glScissorIndexedv #-}
+ptr_glScissorIndexedv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glScissorIndexedv = unsafePerformIO $ getCommand "glScissorIndexedv"
+
+-- glScissorIndexedvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexedv'.
+glScissorIndexedvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glScissorIndexedvNV v1 v2 = liftIO $ dyn726 ptr_glScissorIndexedvNV v1 v2
+
+{-# NOINLINE ptr_glScissorIndexedvNV #-}
+ptr_glScissorIndexedvNV :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glScissorIndexedvNV = unsafePerformIO $ getCommand "glScissorIndexedvNV"
+
+-- glScissorIndexedvOES --------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexedv'.
+glScissorIndexedvOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glScissorIndexedvOES v1 v2 = liftIO $ dyn726 ptr_glScissorIndexedvOES v1 v2
+
+{-# NOINLINE ptr_glScissorIndexedvOES #-}
+ptr_glScissorIndexedvOES :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glScissorIndexedvOES = unsafePerformIO $ getCommand "glScissorIndexedvOES"
+
+-- glSecondaryColor3b ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3bv'.
+glSecondaryColor3b
+  :: MonadIO m
+  => GLbyte -- ^ @red@ of type @ColorB@.
+  -> GLbyte -- ^ @green@ of type @ColorB@.
+  -> GLbyte -- ^ @blue@ of type @ColorB@.
+  -> m ()
+glSecondaryColor3b v1 v2 v3 = liftIO $ dyn37 ptr_glSecondaryColor3b v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3b #-}
+ptr_glSecondaryColor3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glSecondaryColor3b = unsafePerformIO $ getCommand "glSecondaryColor3b"
+
+-- glSecondaryColor3bEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3bvEXT'. This command is an alias for 'glSecondaryColor3b'.
+glSecondaryColor3bEXT
+  :: MonadIO m
+  => GLbyte -- ^ @red@ of type @ColorB@.
+  -> GLbyte -- ^ @green@ of type @ColorB@.
+  -> GLbyte -- ^ @blue@ of type @ColorB@.
+  -> m ()
+glSecondaryColor3bEXT v1 v2 v3 = liftIO $ dyn37 ptr_glSecondaryColor3bEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3bEXT #-}
+ptr_glSecondaryColor3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glSecondaryColor3bEXT = unsafePerformIO $ getCommand "glSecondaryColor3bEXT"
+
+-- glSecondaryColor3bv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3bv
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
+  -> m ()
+glSecondaryColor3bv v1 = liftIO $ dyn38 ptr_glSecondaryColor3bv v1
+
+{-# NOINLINE ptr_glSecondaryColor3bv #-}
+ptr_glSecondaryColor3bv :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glSecondaryColor3bv = unsafePerformIO $ getCommand "glSecondaryColor3bv"
+
+-- glSecondaryColor3bvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3bv'.
+glSecondaryColor3bvEXT
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
+  -> m ()
+glSecondaryColor3bvEXT v1 = liftIO $ dyn38 ptr_glSecondaryColor3bvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3bvEXT #-}
+ptr_glSecondaryColor3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glSecondaryColor3bvEXT = unsafePerformIO $ getCommand "glSecondaryColor3bvEXT"
+
+-- glSecondaryColor3d ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3dv'.
+glSecondaryColor3d
+  :: MonadIO m
+  => GLdouble -- ^ @red@ of type @ColorD@.
+  -> GLdouble -- ^ @green@ of type @ColorD@.
+  -> GLdouble -- ^ @blue@ of type @ColorD@.
+  -> m ()
+glSecondaryColor3d v1 v2 v3 = liftIO $ dyn39 ptr_glSecondaryColor3d v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3d #-}
+ptr_glSecondaryColor3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glSecondaryColor3d = unsafePerformIO $ getCommand "glSecondaryColor3d"
+
+-- glSecondaryColor3dEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3dvEXT'. This command is an alias for 'glSecondaryColor3d'.
+glSecondaryColor3dEXT
+  :: MonadIO m
+  => GLdouble -- ^ @red@ of type @ColorD@.
+  -> GLdouble -- ^ @green@ of type @ColorD@.
+  -> GLdouble -- ^ @blue@ of type @ColorD@.
+  -> m ()
+glSecondaryColor3dEXT v1 v2 v3 = liftIO $ dyn39 ptr_glSecondaryColor3dEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3dEXT #-}
+ptr_glSecondaryColor3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glSecondaryColor3dEXT = unsafePerformIO $ getCommand "glSecondaryColor3dEXT"
+
+-- glSecondaryColor3dv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
+  -> m ()
+glSecondaryColor3dv v1 = liftIO $ dyn40 ptr_glSecondaryColor3dv v1
+
+{-# NOINLINE ptr_glSecondaryColor3dv #-}
+ptr_glSecondaryColor3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glSecondaryColor3dv = unsafePerformIO $ getCommand "glSecondaryColor3dv"
+
+-- glSecondaryColor3dvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3dv'.
+glSecondaryColor3dvEXT
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
+  -> m ()
+glSecondaryColor3dvEXT v1 = liftIO $ dyn40 ptr_glSecondaryColor3dvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3dvEXT #-}
+ptr_glSecondaryColor3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glSecondaryColor3dvEXT = unsafePerformIO $ getCommand "glSecondaryColor3dvEXT"
+
+-- glSecondaryColor3f ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3fv'.
+glSecondaryColor3f
+  :: MonadIO m
+  => GLfloat -- ^ @red@ of type @ColorF@.
+  -> GLfloat -- ^ @green@ of type @ColorF@.
+  -> GLfloat -- ^ @blue@ of type @ColorF@.
+  -> m ()
+glSecondaryColor3f v1 v2 v3 = liftIO $ dyn41 ptr_glSecondaryColor3f v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3f #-}
+ptr_glSecondaryColor3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glSecondaryColor3f = unsafePerformIO $ getCommand "glSecondaryColor3f"
+
+-- glSecondaryColor3fEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3fvEXT'. This command is an alias for 'glSecondaryColor3f'.
+glSecondaryColor3fEXT
+  :: MonadIO m
+  => GLfloat -- ^ @red@ of type @ColorF@.
+  -> GLfloat -- ^ @green@ of type @ColorF@.
+  -> GLfloat -- ^ @blue@ of type @ColorF@.
+  -> m ()
+glSecondaryColor3fEXT v1 v2 v3 = liftIO $ dyn41 ptr_glSecondaryColor3fEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3fEXT #-}
+ptr_glSecondaryColor3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glSecondaryColor3fEXT = unsafePerformIO $ getCommand "glSecondaryColor3fEXT"
+
+-- glSecondaryColor3fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
+  -> m ()
+glSecondaryColor3fv v1 = liftIO $ dyn42 ptr_glSecondaryColor3fv v1
+
+{-# NOINLINE ptr_glSecondaryColor3fv #-}
+ptr_glSecondaryColor3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glSecondaryColor3fv = unsafePerformIO $ getCommand "glSecondaryColor3fv"
+
+-- glSecondaryColor3fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3fv'.
+glSecondaryColor3fvEXT
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
+  -> m ()
+glSecondaryColor3fvEXT v1 = liftIO $ dyn42 ptr_glSecondaryColor3fvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3fvEXT #-}
+ptr_glSecondaryColor3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glSecondaryColor3fvEXT = unsafePerformIO $ getCommand "glSecondaryColor3fvEXT"
+
+-- glSecondaryColor3hNV --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3hvNV'.
+glSecondaryColor3hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @red@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
+  -> m ()
+glSecondaryColor3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glSecondaryColor3hNV v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3hNV #-}
+ptr_glSecondaryColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glSecondaryColor3hNV = unsafePerformIO $ getCommand "glSecondaryColor3hNV"
+
+-- glSecondaryColor3hvNV -------------------------------------------------------
+
+glSecondaryColor3hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glSecondaryColor3hvNV v1 = liftIO $ dyn102 ptr_glSecondaryColor3hvNV v1
+
+{-# NOINLINE ptr_glSecondaryColor3hvNV #-}
+ptr_glSecondaryColor3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glSecondaryColor3hvNV = unsafePerformIO $ getCommand "glSecondaryColor3hvNV"
+
+-- glSecondaryColor3i ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3iv'.
+glSecondaryColor3i
+  :: MonadIO m
+  => GLint -- ^ @red@ of type @ColorI@.
+  -> GLint -- ^ @green@ of type @ColorI@.
+  -> GLint -- ^ @blue@ of type @ColorI@.
+  -> m ()
+glSecondaryColor3i v1 v2 v3 = liftIO $ dyn43 ptr_glSecondaryColor3i v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3i #-}
+ptr_glSecondaryColor3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glSecondaryColor3i = unsafePerformIO $ getCommand "glSecondaryColor3i"
+
+-- glSecondaryColor3iEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3ivEXT'. This command is an alias for 'glSecondaryColor3i'.
+glSecondaryColor3iEXT
+  :: MonadIO m
+  => GLint -- ^ @red@ of type @ColorI@.
+  -> GLint -- ^ @green@ of type @ColorI@.
+  -> GLint -- ^ @blue@ of type @ColorI@.
+  -> m ()
+glSecondaryColor3iEXT v1 v2 v3 = liftIO $ dyn43 ptr_glSecondaryColor3iEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3iEXT #-}
+ptr_glSecondaryColor3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glSecondaryColor3iEXT = unsafePerformIO $ getCommand "glSecondaryColor3iEXT"
+
+-- glSecondaryColor3iv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
+  -> m ()
+glSecondaryColor3iv v1 = liftIO $ dyn44 ptr_glSecondaryColor3iv v1
+
+{-# NOINLINE ptr_glSecondaryColor3iv #-}
+ptr_glSecondaryColor3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glSecondaryColor3iv = unsafePerformIO $ getCommand "glSecondaryColor3iv"
+
+-- glSecondaryColor3ivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3iv'.
+glSecondaryColor3ivEXT
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
+  -> m ()
+glSecondaryColor3ivEXT v1 = liftIO $ dyn44 ptr_glSecondaryColor3ivEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3ivEXT #-}
+ptr_glSecondaryColor3ivEXT :: FunPtr (Ptr GLint -> IO ())
+ptr_glSecondaryColor3ivEXT = unsafePerformIO $ getCommand "glSecondaryColor3ivEXT"
+
+-- glSecondaryColor3s ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3sv'.
+glSecondaryColor3s
+  :: MonadIO m
+  => GLshort -- ^ @red@ of type @ColorS@.
+  -> GLshort -- ^ @green@ of type @ColorS@.
+  -> GLshort -- ^ @blue@ of type @ColorS@.
+  -> m ()
+glSecondaryColor3s v1 v2 v3 = liftIO $ dyn45 ptr_glSecondaryColor3s v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3s #-}
+ptr_glSecondaryColor3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glSecondaryColor3s = unsafePerformIO $ getCommand "glSecondaryColor3s"
+
+-- glSecondaryColor3sEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3svEXT'. This command is an alias for 'glSecondaryColor3s'.
+glSecondaryColor3sEXT
+  :: MonadIO m
+  => GLshort -- ^ @red@ of type @ColorS@.
+  -> GLshort -- ^ @green@ of type @ColorS@.
+  -> GLshort -- ^ @blue@ of type @ColorS@.
+  -> m ()
+glSecondaryColor3sEXT v1 v2 v3 = liftIO $ dyn45 ptr_glSecondaryColor3sEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3sEXT #-}
+ptr_glSecondaryColor3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glSecondaryColor3sEXT = unsafePerformIO $ getCommand "glSecondaryColor3sEXT"
+
+-- glSecondaryColor3sv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
+  -> m ()
+glSecondaryColor3sv v1 = liftIO $ dyn46 ptr_glSecondaryColor3sv v1
+
+{-# NOINLINE ptr_glSecondaryColor3sv #-}
+ptr_glSecondaryColor3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glSecondaryColor3sv = unsafePerformIO $ getCommand "glSecondaryColor3sv"
+
+-- glSecondaryColor3svEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3sv'.
+glSecondaryColor3svEXT
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
+  -> m ()
+glSecondaryColor3svEXT v1 = liftIO $ dyn46 ptr_glSecondaryColor3svEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3svEXT #-}
+ptr_glSecondaryColor3svEXT :: FunPtr (Ptr GLshort -> IO ())
+ptr_glSecondaryColor3svEXT = unsafePerformIO $ getCommand "glSecondaryColor3svEXT"
+
+-- glSecondaryColor3ub ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3ubv'.
+glSecondaryColor3ub
+  :: MonadIO m
+  => GLubyte -- ^ @red@ of type @ColorUB@.
+  -> GLubyte -- ^ @green@ of type @ColorUB@.
+  -> GLubyte -- ^ @blue@ of type @ColorUB@.
+  -> m ()
+glSecondaryColor3ub v1 v2 v3 = liftIO $ dyn103 ptr_glSecondaryColor3ub v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3ub #-}
+ptr_glSecondaryColor3ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
+ptr_glSecondaryColor3ub = unsafePerformIO $ getCommand "glSecondaryColor3ub"
+
+-- glSecondaryColor3ubEXT ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3ubvEXT'. This command is an alias for 'glSecondaryColor3ub'.
+glSecondaryColor3ubEXT
+  :: MonadIO m
+  => GLubyte -- ^ @red@ of type @ColorUB@.
+  -> GLubyte -- ^ @green@ of type @ColorUB@.
+  -> GLubyte -- ^ @blue@ of type @ColorUB@.
+  -> m ()
+glSecondaryColor3ubEXT v1 v2 v3 = liftIO $ dyn103 ptr_glSecondaryColor3ubEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3ubEXT #-}
+ptr_glSecondaryColor3ubEXT :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
+ptr_glSecondaryColor3ubEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubEXT"
 
diff --git a/src/Graphics/GL/Functions/F24.hs b/src/Graphics/GL/Functions/F24.hs
--- a/src/Graphics/GL/Functions/F24.hs
+++ b/src/Graphics/GL/Functions/F24.hs
@@ -15,1517 +15,1542 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F24 (
-  glStencilFillPathNV,
-  glStencilFunc,
-  glStencilFuncSeparate,
-  glStencilFuncSeparateATI,
-  glStencilMask,
-  glStencilMaskSeparate,
-  glStencilOp,
-  glStencilOpSeparate,
-  glStencilOpSeparateATI,
-  glStencilOpValueAMD,
-  glStencilStrokePathInstancedNV,
-  glStencilStrokePathNV,
-  glStencilThenCoverFillPathInstancedNV,
-  glStencilThenCoverFillPathNV,
-  glStencilThenCoverStrokePathInstancedNV,
-  glStencilThenCoverStrokePathNV,
-  glStopInstrumentsSGIX,
-  glStringMarkerGREMEDY,
-  glSubpixelPrecisionBiasNV,
-  glSwizzleEXT,
-  glSyncTextureINTEL,
-  glTagSampleBufferSGIX,
-  glTangent3bEXT,
-  glTangent3bvEXT,
-  glTangent3dEXT,
-  glTangent3dvEXT,
-  glTangent3fEXT,
-  glTangent3fvEXT,
-  glTangent3iEXT,
-  glTangent3ivEXT,
-  glTangent3sEXT,
-  glTangent3svEXT,
-  glTangentPointerEXT,
-  glTbufferMask3DFX,
-  glTessellationFactorAMD,
-  glTessellationModeAMD,
-  glTestFenceAPPLE,
-  glTestFenceNV,
-  glTestObjectAPPLE,
-  glTexBuffer,
-  glTexBufferARB,
-  glTexBufferEXT,
-  glTexBufferOES,
-  glTexBufferRange,
-  glTexBufferRangeEXT,
-  glTexBufferRangeOES,
-  glTexBumpParameterfvATI,
-  glTexBumpParameterivATI,
-  glTexCoord1bOES,
-  glTexCoord1bvOES,
-  glTexCoord1d,
-  glTexCoord1dv,
-  glTexCoord1f,
-  glTexCoord1fv,
-  glTexCoord1hNV,
-  glTexCoord1hvNV,
-  glTexCoord1i,
-  glTexCoord1iv,
-  glTexCoord1s,
-  glTexCoord1sv,
-  glTexCoord1xOES,
-  glTexCoord1xvOES,
-  glTexCoord2bOES,
-  glTexCoord2bvOES,
-  glTexCoord2d,
-  glTexCoord2dv,
-  glTexCoord2f,
-  glTexCoord2fColor3fVertex3fSUN,
-  glTexCoord2fColor3fVertex3fvSUN,
-  glTexCoord2fColor4fNormal3fVertex3fSUN,
-  glTexCoord2fColor4fNormal3fVertex3fvSUN,
-  glTexCoord2fColor4ubVertex3fSUN,
-  glTexCoord2fColor4ubVertex3fvSUN,
-  glTexCoord2fNormal3fVertex3fSUN,
-  glTexCoord2fNormal3fVertex3fvSUN,
-  glTexCoord2fVertex3fSUN,
-  glTexCoord2fVertex3fvSUN,
-  glTexCoord2fv,
-  glTexCoord2hNV,
-  glTexCoord2hvNV,
-  glTexCoord2i,
-  glTexCoord2iv,
-  glTexCoord2s,
-  glTexCoord2sv,
-  glTexCoord2xOES,
-  glTexCoord2xvOES,
-  glTexCoord3bOES,
-  glTexCoord3bvOES,
-  glTexCoord3d,
-  glTexCoord3dv,
-  glTexCoord3f,
-  glTexCoord3fv,
-  glTexCoord3hNV,
-  glTexCoord3hvNV,
-  glTexCoord3i,
-  glTexCoord3iv,
-  glTexCoord3s,
-  glTexCoord3sv,
-  glTexCoord3xOES,
-  glTexCoord3xvOES
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glStencilFillPathNV ---------------------------------------------------------
-
-glStencilFillPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilFillPathNV v1 v2 v3 = liftIO $ dyn715 ptr_glStencilFillPathNV v1 v2 v3
-
-{-# NOINLINE ptr_glStencilFillPathNV #-}
-ptr_glStencilFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
-ptr_glStencilFillPathNV = unsafePerformIO $ getCommand "glStencilFillPathNV"
-
--- glStencilFunc ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFunc.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFunc.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFunc.xhtml OpenGL 4.x>.
-glStencilFunc
-  :: MonadIO m
-  => GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
-  -> GLint -- ^ @ref@ of type @StencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilFunc v1 v2 v3 = liftIO $ dyn607 ptr_glStencilFunc v1 v2 v3
-
-{-# NOINLINE ptr_glStencilFunc #-}
-ptr_glStencilFunc :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
-ptr_glStencilFunc = unsafePerformIO $ getCommand "glStencilFunc"
-
--- glStencilFuncSeparate -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFuncSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFuncSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFuncSeparate.xhtml OpenGL 4.x>.
-glStencilFuncSeparate
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
-  -> GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
-  -> GLint -- ^ @ref@ of type @StencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilFuncSeparate v1 v2 v3 v4 = liftIO $ dyn716 ptr_glStencilFuncSeparate v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilFuncSeparate #-}
-ptr_glStencilFuncSeparate :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
-ptr_glStencilFuncSeparate = unsafePerformIO $ getCommand "glStencilFuncSeparate"
-
--- glStencilFuncSeparateATI ----------------------------------------------------
-
-glStencilFuncSeparateATI
-  :: MonadIO m
-  => GLenum -- ^ @frontfunc@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
-  -> GLenum -- ^ @backfunc@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
-  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilFuncSeparateATI v1 v2 v3 v4 = liftIO $ dyn716 ptr_glStencilFuncSeparateATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilFuncSeparateATI #-}
-ptr_glStencilFuncSeparateATI :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
-ptr_glStencilFuncSeparateATI = unsafePerformIO $ getCommand "glStencilFuncSeparateATI"
-
--- glStencilMask ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMask.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMask.xhtml OpenGL 4.x>.
-glStencilMask
-  :: MonadIO m
-  => GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilMask v1 = liftIO $ dyn2 ptr_glStencilMask v1
-
-{-# NOINLINE ptr_glStencilMask #-}
-ptr_glStencilMask :: FunPtr (GLuint -> IO ())
-ptr_glStencilMask = unsafePerformIO $ getCommand "glStencilMask"
-
--- glStencilMaskSeparate -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMaskSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMaskSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMaskSeparate.xhtml OpenGL 4.x>.
-glStencilMaskSeparate
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilMaskSeparate v1 v2 = liftIO $ dyn16 ptr_glStencilMaskSeparate v1 v2
-
-{-# NOINLINE ptr_glStencilMaskSeparate #-}
-ptr_glStencilMaskSeparate :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glStencilMaskSeparate = unsafePerformIO $ getCommand "glStencilMaskSeparate"
-
--- glStencilOp -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOp.xhtml OpenGL 4.x>.
-glStencilOp
-  :: MonadIO m
-  => GLenum -- ^ @fail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @zfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @zpass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> m ()
-glStencilOp v1 v2 v3 = liftIO $ dyn717 ptr_glStencilOp v1 v2 v3
-
-{-# NOINLINE ptr_glStencilOp #-}
-ptr_glStencilOp :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
-ptr_glStencilOp = unsafePerformIO $ getCommand "glStencilOp"
-
--- glStencilOpSeparate ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOpSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOpSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOpSeparate.xhtml OpenGL 4.x>.
-glStencilOpSeparate
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
-  -> GLenum -- ^ @sfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @dpfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @dppass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> m ()
-glStencilOpSeparate v1 v2 v3 v4 = liftIO $ dyn53 ptr_glStencilOpSeparate v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilOpSeparate #-}
-ptr_glStencilOpSeparate :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glStencilOpSeparate = unsafePerformIO $ getCommand "glStencilOpSeparate"
-
--- glStencilOpSeparateATI ------------------------------------------------------
-
--- | This command is an alias for 'glStencilOpSeparate'.
-glStencilOpSeparateATI
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
-  -> GLenum -- ^ @sfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @dpfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> GLenum -- ^ @dppass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
-  -> m ()
-glStencilOpSeparateATI v1 v2 v3 v4 = liftIO $ dyn53 ptr_glStencilOpSeparateATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilOpSeparateATI #-}
-ptr_glStencilOpSeparateATI :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glStencilOpSeparateATI = unsafePerformIO $ getCommand "glStencilOpSeparateATI"
-
--- glStencilOpValueAMD ---------------------------------------------------------
-
-glStencilOpValueAMD
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type @StencilFaceDirection@.
-  -> GLuint -- ^ @value@.
-  -> m ()
-glStencilOpValueAMD v1 v2 = liftIO $ dyn16 ptr_glStencilOpValueAMD v1 v2
-
-{-# NOINLINE ptr_glStencilOpValueAMD #-}
-ptr_glStencilOpValueAMD :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glStencilOpValueAMD = unsafePerformIO $ getCommand "glStencilOpValueAMD"
-
--- glStencilStrokePathInstancedNV ----------------------------------------------
-
-glStencilStrokePathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
-  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
-  -> GLuint -- ^ @pathBase@ of type @Path@.
-  -> GLint -- ^ @reference@ of type @StencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
-  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
-  -> m ()
-glStencilStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn718 ptr_glStencilStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glStencilStrokePathInstancedNV #-}
-ptr_glStencilStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilStrokePathInstancedNV"
-
--- glStencilStrokePathNV -------------------------------------------------------
-
-glStencilStrokePathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLint -- ^ @reference@ of type @StencilValue@.
-  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
-  -> m ()
-glStencilStrokePathNV v1 v2 v3 = liftIO $ dyn640 ptr_glStencilStrokePathNV v1 v2 v3
-
-{-# NOINLINE ptr_glStencilStrokePathNV #-}
-ptr_glStencilStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
-ptr_glStencilStrokePathNV = unsafePerformIO $ getCommand "glStencilStrokePathNV"
-
--- glStencilThenCoverFillPathInstancedNV ---------------------------------------
-
-glStencilThenCoverFillPathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@.
-  -> Ptr a -- ^ @paths@.
-  -> GLuint -- ^ @pathBase@.
-  -> GLenum -- ^ @fillMode@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> GLenum -- ^ @transformType@.
-  -> Ptr GLfloat -- ^ @transformValues@.
-  -> m ()
-glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn719 ptr_glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glStencilThenCoverFillPathInstancedNV #-}
-ptr_glStencilThenCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilThenCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathInstancedNV"
-
--- glStencilThenCoverFillPathNV ------------------------------------------------
-
-glStencilThenCoverFillPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@.
-  -> GLenum -- ^ @fillMode@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> m ()
-glStencilThenCoverFillPathNV v1 v2 v3 v4 = liftIO $ dyn720 ptr_glStencilThenCoverFillPathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilThenCoverFillPathNV #-}
-ptr_glStencilThenCoverFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
-ptr_glStencilThenCoverFillPathNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathNV"
-
--- glStencilThenCoverStrokePathInstancedNV -------------------------------------
-
-glStencilThenCoverStrokePathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@.
-  -> Ptr a -- ^ @paths@.
-  -> GLuint -- ^ @pathBase@.
-  -> GLint -- ^ @reference@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> GLenum -- ^ @transformType@.
-  -> Ptr GLfloat -- ^ @transformValues@.
-  -> m ()
-glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn721 ptr_glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glStencilThenCoverStrokePathInstancedNV #-}
-ptr_glStencilThenCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilThenCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathInstancedNV"
-
--- glStencilThenCoverStrokePathNV ----------------------------------------------
-
-glStencilThenCoverStrokePathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@.
-  -> GLint -- ^ @reference@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> m ()
-glStencilThenCoverStrokePathNV v1 v2 v3 v4 = liftIO $ dyn722 ptr_glStencilThenCoverStrokePathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilThenCoverStrokePathNV #-}
-ptr_glStencilThenCoverStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
-ptr_glStencilThenCoverStrokePathNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathNV"
-
--- glStopInstrumentsSGIX -------------------------------------------------------
-
-glStopInstrumentsSGIX
-  :: MonadIO m
-  => GLint -- ^ @marker@.
-  -> m ()
-glStopInstrumentsSGIX v1 = liftIO $ dyn12 ptr_glStopInstrumentsSGIX v1
-
-{-# NOINLINE ptr_glStopInstrumentsSGIX #-}
-ptr_glStopInstrumentsSGIX :: FunPtr (GLint -> IO ())
-ptr_glStopInstrumentsSGIX = unsafePerformIO $ getCommand "glStopInstrumentsSGIX"
-
--- glStringMarkerGREMEDY -------------------------------------------------------
-
-glStringMarkerGREMEDY
-  :: MonadIO m
-  => GLsizei -- ^ @len@.
-  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
-  -> m ()
-glStringMarkerGREMEDY v1 v2 = liftIO $ dyn260 ptr_glStringMarkerGREMEDY v1 v2
-
-{-# NOINLINE ptr_glStringMarkerGREMEDY #-}
-ptr_glStringMarkerGREMEDY :: FunPtr (GLsizei -> Ptr a -> IO ())
-ptr_glStringMarkerGREMEDY = unsafePerformIO $ getCommand "glStringMarkerGREMEDY"
-
--- glSubpixelPrecisionBiasNV ---------------------------------------------------
-
-glSubpixelPrecisionBiasNV
-  :: MonadIO m
-  => GLuint -- ^ @xbits@.
-  -> GLuint -- ^ @ybits@.
-  -> m ()
-glSubpixelPrecisionBiasNV v1 v2 = liftIO $ dyn3 ptr_glSubpixelPrecisionBiasNV v1 v2
-
-{-# NOINLINE ptr_glSubpixelPrecisionBiasNV #-}
-ptr_glSubpixelPrecisionBiasNV :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glSubpixelPrecisionBiasNV = unsafePerformIO $ getCommand "glSubpixelPrecisionBiasNV"
-
--- glSwizzleEXT ----------------------------------------------------------------
-
-glSwizzleEXT
-  :: MonadIO m
-  => GLuint -- ^ @res@.
-  -> GLuint -- ^ @in@.
-  -> GLenum -- ^ @outX@ of type @VertexShaderCoordOutEXT@.
-  -> GLenum -- ^ @outY@ of type @VertexShaderCoordOutEXT@.
-  -> GLenum -- ^ @outZ@ of type @VertexShaderCoordOutEXT@.
-  -> GLenum -- ^ @outW@ of type @VertexShaderCoordOutEXT@.
-  -> m ()
-glSwizzleEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn723 ptr_glSwizzleEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glSwizzleEXT #-}
-ptr_glSwizzleEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glSwizzleEXT = unsafePerformIO $ getCommand "glSwizzleEXT"
-
--- glSyncTextureINTEL ----------------------------------------------------------
-
-glSyncTextureINTEL
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> m ()
-glSyncTextureINTEL v1 = liftIO $ dyn2 ptr_glSyncTextureINTEL v1
-
-{-# NOINLINE ptr_glSyncTextureINTEL #-}
-ptr_glSyncTextureINTEL :: FunPtr (GLuint -> IO ())
-ptr_glSyncTextureINTEL = unsafePerformIO $ getCommand "glSyncTextureINTEL"
-
--- glTagSampleBufferSGIX -------------------------------------------------------
-
-glTagSampleBufferSGIX
-  :: MonadIO m
-  => m ()
-glTagSampleBufferSGIX = liftIO $ dyn10 ptr_glTagSampleBufferSGIX
-
-{-# NOINLINE ptr_glTagSampleBufferSGIX #-}
-ptr_glTagSampleBufferSGIX :: FunPtr (IO ())
-ptr_glTagSampleBufferSGIX = unsafePerformIO $ getCommand "glTagSampleBufferSGIX"
-
--- glTangent3bEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTangent3bvEXT'.
-glTangent3bEXT
-  :: MonadIO m
-  => GLbyte -- ^ @tx@.
-  -> GLbyte -- ^ @ty@.
-  -> GLbyte -- ^ @tz@.
-  -> m ()
-glTangent3bEXT v1 v2 v3 = liftIO $ dyn36 ptr_glTangent3bEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangent3bEXT #-}
-ptr_glTangent3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glTangent3bEXT = unsafePerformIO $ getCommand "glTangent3bEXT"
-
--- glTangent3bvEXT -------------------------------------------------------------
-
-glTangent3bvEXT
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glTangent3bvEXT v1 = liftIO $ dyn37 ptr_glTangent3bvEXT v1
-
-{-# NOINLINE ptr_glTangent3bvEXT #-}
-ptr_glTangent3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glTangent3bvEXT = unsafePerformIO $ getCommand "glTangent3bvEXT"
-
--- glTangent3dEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTangent3dvEXT'.
-glTangent3dEXT
-  :: MonadIO m
-  => GLdouble -- ^ @tx@ of type @CoordD@.
-  -> GLdouble -- ^ @ty@ of type @CoordD@.
-  -> GLdouble -- ^ @tz@ of type @CoordD@.
-  -> m ()
-glTangent3dEXT v1 v2 v3 = liftIO $ dyn38 ptr_glTangent3dEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangent3dEXT #-}
-ptr_glTangent3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glTangent3dEXT = unsafePerformIO $ getCommand "glTangent3dEXT"
-
--- glTangent3dvEXT -------------------------------------------------------------
-
-glTangent3dvEXT
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glTangent3dvEXT v1 = liftIO $ dyn39 ptr_glTangent3dvEXT v1
-
-{-# NOINLINE ptr_glTangent3dvEXT #-}
-ptr_glTangent3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glTangent3dvEXT = unsafePerformIO $ getCommand "glTangent3dvEXT"
-
--- glTangent3fEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTangent3fvEXT'.
-glTangent3fEXT
-  :: MonadIO m
-  => GLfloat -- ^ @tx@ of type @CoordF@.
-  -> GLfloat -- ^ @ty@ of type @CoordF@.
-  -> GLfloat -- ^ @tz@ of type @CoordF@.
-  -> m ()
-glTangent3fEXT v1 v2 v3 = liftIO $ dyn40 ptr_glTangent3fEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangent3fEXT #-}
-ptr_glTangent3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTangent3fEXT = unsafePerformIO $ getCommand "glTangent3fEXT"
-
--- glTangent3fvEXT -------------------------------------------------------------
-
-glTangent3fvEXT
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glTangent3fvEXT v1 = liftIO $ dyn41 ptr_glTangent3fvEXT v1
-
-{-# NOINLINE ptr_glTangent3fvEXT #-}
-ptr_glTangent3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glTangent3fvEXT = unsafePerformIO $ getCommand "glTangent3fvEXT"
-
--- glTangent3iEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTangent3ivEXT'.
-glTangent3iEXT
-  :: MonadIO m
-  => GLint -- ^ @tx@.
-  -> GLint -- ^ @ty@.
-  -> GLint -- ^ @tz@.
-  -> m ()
-glTangent3iEXT v1 v2 v3 = liftIO $ dyn42 ptr_glTangent3iEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangent3iEXT #-}
-ptr_glTangent3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glTangent3iEXT = unsafePerformIO $ getCommand "glTangent3iEXT"
-
--- glTangent3ivEXT -------------------------------------------------------------
-
-glTangent3ivEXT
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glTangent3ivEXT v1 = liftIO $ dyn43 ptr_glTangent3ivEXT v1
-
-{-# NOINLINE ptr_glTangent3ivEXT #-}
-ptr_glTangent3ivEXT :: FunPtr (Ptr GLint -> IO ())
-ptr_glTangent3ivEXT = unsafePerformIO $ getCommand "glTangent3ivEXT"
-
--- glTangent3sEXT --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTangent3svEXT'.
-glTangent3sEXT
-  :: MonadIO m
-  => GLshort -- ^ @tx@.
-  -> GLshort -- ^ @ty@.
-  -> GLshort -- ^ @tz@.
-  -> m ()
-glTangent3sEXT v1 v2 v3 = liftIO $ dyn44 ptr_glTangent3sEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangent3sEXT #-}
-ptr_glTangent3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glTangent3sEXT = unsafePerformIO $ getCommand "glTangent3sEXT"
-
--- glTangent3svEXT -------------------------------------------------------------
-
-glTangent3svEXT
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glTangent3svEXT v1 = liftIO $ dyn45 ptr_glTangent3svEXT v1
-
-{-# NOINLINE ptr_glTangent3svEXT #-}
-ptr_glTangent3svEXT :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTangent3svEXT = unsafePerformIO $ getCommand "glTangent3svEXT"
-
--- glTangentPointerEXT ---------------------------------------------------------
-
-glTangentPointerEXT
-  :: MonadIO m
-  => GLenum -- ^ @type@ of type @TangentPointerTypeEXT@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glTangentPointerEXT v1 v2 v3 = liftIO $ dyn46 ptr_glTangentPointerEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTangentPointerEXT #-}
-ptr_glTangentPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glTangentPointerEXT = unsafePerformIO $ getCommand "glTangentPointerEXT"
-
--- glTbufferMask3DFX -----------------------------------------------------------
-
-glTbufferMask3DFX
-  :: MonadIO m
-  => GLuint -- ^ @mask@.
-  -> m ()
-glTbufferMask3DFX v1 = liftIO $ dyn2 ptr_glTbufferMask3DFX v1
-
-{-# NOINLINE ptr_glTbufferMask3DFX #-}
-ptr_glTbufferMask3DFX :: FunPtr (GLuint -> IO ())
-ptr_glTbufferMask3DFX = unsafePerformIO $ getCommand "glTbufferMask3DFX"
-
--- glTessellationFactorAMD -----------------------------------------------------
-
-glTessellationFactorAMD
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> m ()
-glTessellationFactorAMD v1 = liftIO $ dyn79 ptr_glTessellationFactorAMD v1
-
-{-# NOINLINE ptr_glTessellationFactorAMD #-}
-ptr_glTessellationFactorAMD :: FunPtr (GLfloat -> IO ())
-ptr_glTessellationFactorAMD = unsafePerformIO $ getCommand "glTessellationFactorAMD"
-
--- glTessellationModeAMD -------------------------------------------------------
-
-glTessellationModeAMD
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> m ()
-glTessellationModeAMD v1 = liftIO $ dyn4 ptr_glTessellationModeAMD v1
-
-{-# NOINLINE ptr_glTessellationModeAMD #-}
-ptr_glTessellationModeAMD :: FunPtr (GLenum -> IO ())
-ptr_glTessellationModeAMD = unsafePerformIO $ getCommand "glTessellationModeAMD"
-
--- glTestFenceAPPLE ------------------------------------------------------------
-
-glTestFenceAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glTestFenceAPPLE v1 = liftIO $ dyn273 ptr_glTestFenceAPPLE v1
-
-{-# NOINLINE ptr_glTestFenceAPPLE #-}
-ptr_glTestFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
-ptr_glTestFenceAPPLE = unsafePerformIO $ getCommand "glTestFenceAPPLE"
-
--- glTestFenceNV ---------------------------------------------------------------
-
-glTestFenceNV
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glTestFenceNV v1 = liftIO $ dyn273 ptr_glTestFenceNV v1
-
-{-# NOINLINE ptr_glTestFenceNV #-}
-ptr_glTestFenceNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glTestFenceNV = unsafePerformIO $ getCommand "glTestFenceNV"
-
--- glTestObjectAPPLE -----------------------------------------------------------
-
-glTestObjectAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
-  -> GLuint -- ^ @name@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glTestObjectAPPLE v1 v2 = liftIO $ dyn479 ptr_glTestObjectAPPLE v1 v2
-
-{-# NOINLINE ptr_glTestObjectAPPLE #-}
-ptr_glTestObjectAPPLE :: FunPtr (GLenum -> GLuint -> IO GLboolean)
-ptr_glTestObjectAPPLE = unsafePerformIO $ getCommand "glTestObjectAPPLE"
-
--- glTexBuffer -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
-glTexBuffer
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTexBuffer v1 v2 v3 = liftIO $ dyn29 ptr_glTexBuffer v1 v2 v3
-
-{-# NOINLINE ptr_glTexBuffer #-}
-ptr_glTexBuffer :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glTexBuffer = unsafePerformIO $ getCommand "glTexBuffer"
-
--- glTexBufferARB --------------------------------------------------------------
-
--- | This command is an alias for 'glTexBuffer'.
-glTexBufferARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTexBufferARB v1 v2 v3 = liftIO $ dyn29 ptr_glTexBufferARB v1 v2 v3
-
-{-# NOINLINE ptr_glTexBufferARB #-}
-ptr_glTexBufferARB :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glTexBufferARB = unsafePerformIO $ getCommand "glTexBufferARB"
-
--- glTexBufferEXT --------------------------------------------------------------
-
--- | This command is an alias for 'glTexBuffer'.
-glTexBufferEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTexBufferEXT v1 v2 v3 = liftIO $ dyn29 ptr_glTexBufferEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTexBufferEXT #-}
-ptr_glTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glTexBufferEXT = unsafePerformIO $ getCommand "glTexBufferEXT"
-
--- glTexBufferOES --------------------------------------------------------------
-
--- | This command is an alias for 'glTexBuffer'.
-glTexBufferOES
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTexBufferOES v1 v2 v3 = liftIO $ dyn29 ptr_glTexBufferOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexBufferOES #-}
-ptr_glTexBufferOES :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
-ptr_glTexBufferOES = unsafePerformIO $ getCommand "glTexBufferOES"
-
--- glTexBufferRange ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>.
-glTexBufferRange
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTexBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn724 ptr_glTexBufferRange v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexBufferRange #-}
-ptr_glTexBufferRange :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTexBufferRange = unsafePerformIO $ getCommand "glTexBufferRange"
-
--- glTexBufferRangeEXT ---------------------------------------------------------
-
--- | This command is an alias for 'glTexBufferRange'.
-glTexBufferRangeEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTexBufferRangeEXT v1 v2 v3 v4 v5 = liftIO $ dyn724 ptr_glTexBufferRangeEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexBufferRangeEXT #-}
-ptr_glTexBufferRangeEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTexBufferRangeEXT = unsafePerformIO $ getCommand "glTexBufferRangeEXT"
-
--- glTexBufferRangeOES ---------------------------------------------------------
-
--- | This command is an alias for 'glTexBufferRange'.
-glTexBufferRangeOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTexBufferRangeOES v1 v2 v3 v4 v5 = liftIO $ dyn724 ptr_glTexBufferRangeOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexBufferRangeOES #-}
-ptr_glTexBufferRangeOES :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTexBufferRangeOES = unsafePerformIO $ getCommand "glTexBufferRangeOES"
-
--- glTexBumpParameterfvATI -----------------------------------------------------
-
-glTexBumpParameterfvATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
-  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glTexBumpParameterfvATI v1 v2 = liftIO $ dyn94 ptr_glTexBumpParameterfvATI v1 v2
-
-{-# NOINLINE ptr_glTexBumpParameterfvATI #-}
-ptr_glTexBumpParameterfvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glTexBumpParameterfvATI = unsafePerformIO $ getCommand "glTexBumpParameterfvATI"
-
--- glTexBumpParameterivATI -----------------------------------------------------
-
-glTexBumpParameterivATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
-  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glTexBumpParameterivATI v1 v2 = liftIO $ dyn136 ptr_glTexBumpParameterivATI v1 v2
-
-{-# NOINLINE ptr_glTexBumpParameterivATI #-}
-ptr_glTexBumpParameterivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glTexBumpParameterivATI = unsafePerformIO $ getCommand "glTexBumpParameterivATI"
-
--- glTexCoord1bOES -------------------------------------------------------------
-
-glTexCoord1bOES
-  :: MonadIO m
-  => GLbyte -- ^ @s@.
-  -> m ()
-glTexCoord1bOES v1 = liftIO $ dyn464 ptr_glTexCoord1bOES v1
-
-{-# NOINLINE ptr_glTexCoord1bOES #-}
-ptr_glTexCoord1bOES :: FunPtr (GLbyte -> IO ())
-ptr_glTexCoord1bOES = unsafePerformIO $ getCommand "glTexCoord1bOES"
-
--- glTexCoord1bvOES ------------------------------------------------------------
-
-glTexCoord1bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @1@ element of type @GLbyte@.
-  -> m ()
-glTexCoord1bvOES v1 = liftIO $ dyn37 ptr_glTexCoord1bvOES v1
-
-{-# NOINLINE ptr_glTexCoord1bvOES #-}
-ptr_glTexCoord1bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glTexCoord1bvOES = unsafePerformIO $ getCommand "glTexCoord1bvOES"
-
--- glTexCoord1d ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1dv'.
-glTexCoord1d
-  :: MonadIO m
-  => GLdouble -- ^ @s@ of type @CoordD@.
-  -> m ()
-glTexCoord1d v1 = liftIO $ dyn78 ptr_glTexCoord1d v1
-
-{-# NOINLINE ptr_glTexCoord1d #-}
-ptr_glTexCoord1d :: FunPtr (GLdouble -> IO ())
-ptr_glTexCoord1d = unsafePerformIO $ getCommand "glTexCoord1d"
-
--- glTexCoord1dv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord1dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
-  -> m ()
-glTexCoord1dv v1 = liftIO $ dyn39 ptr_glTexCoord1dv v1
-
-{-# NOINLINE ptr_glTexCoord1dv #-}
-ptr_glTexCoord1dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glTexCoord1dv = unsafePerformIO $ getCommand "glTexCoord1dv"
-
--- glTexCoord1f ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1fv'.
-glTexCoord1f
-  :: MonadIO m
-  => GLfloat -- ^ @s@ of type @CoordF@.
-  -> m ()
-glTexCoord1f v1 = liftIO $ dyn79 ptr_glTexCoord1f v1
-
-{-# NOINLINE ptr_glTexCoord1f #-}
-ptr_glTexCoord1f :: FunPtr (GLfloat -> IO ())
-ptr_glTexCoord1f = unsafePerformIO $ getCommand "glTexCoord1f"
-
--- glTexCoord1fv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord1fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
-  -> m ()
-glTexCoord1fv v1 = liftIO $ dyn41 ptr_glTexCoord1fv v1
-
-{-# NOINLINE ptr_glTexCoord1fv #-}
-ptr_glTexCoord1fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glTexCoord1fv = unsafePerformIO $ getCommand "glTexCoord1fv"
-
--- glTexCoord1hNV --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTexCoord1hvNV'.
-glTexCoord1hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> m ()
-glTexCoord1hNV v1 = liftIO $ dyn281 ptr_glTexCoord1hNV v1
-
-{-# NOINLINE ptr_glTexCoord1hNV #-}
-ptr_glTexCoord1hNV :: FunPtr (GLhalfNV -> IO ())
-ptr_glTexCoord1hNV = unsafePerformIO $ getCommand "glTexCoord1hNV"
-
--- glTexCoord1hvNV -------------------------------------------------------------
-
-glTexCoord1hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
-  -> m ()
-glTexCoord1hvNV v1 = liftIO $ dyn99 ptr_glTexCoord1hvNV v1
-
-{-# NOINLINE ptr_glTexCoord1hvNV #-}
-ptr_glTexCoord1hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glTexCoord1hvNV = unsafePerformIO $ getCommand "glTexCoord1hvNV"
-
--- glTexCoord1i ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1iv'.
-glTexCoord1i
-  :: MonadIO m
-  => GLint -- ^ @s@ of type @CoordI@.
-  -> m ()
-glTexCoord1i v1 = liftIO $ dyn12 ptr_glTexCoord1i v1
-
-{-# NOINLINE ptr_glTexCoord1i #-}
-ptr_glTexCoord1i :: FunPtr (GLint -> IO ())
-ptr_glTexCoord1i = unsafePerformIO $ getCommand "glTexCoord1i"
-
--- glTexCoord1iv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord1iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
-  -> m ()
-glTexCoord1iv v1 = liftIO $ dyn43 ptr_glTexCoord1iv v1
-
-{-# NOINLINE ptr_glTexCoord1iv #-}
-ptr_glTexCoord1iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glTexCoord1iv = unsafePerformIO $ getCommand "glTexCoord1iv"
-
--- glTexCoord1s ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1sv'.
-glTexCoord1s
-  :: MonadIO m
-  => GLshort -- ^ @s@ of type @CoordS@.
-  -> m ()
-glTexCoord1s v1 = liftIO $ dyn465 ptr_glTexCoord1s v1
-
-{-# NOINLINE ptr_glTexCoord1s #-}
-ptr_glTexCoord1s :: FunPtr (GLshort -> IO ())
-ptr_glTexCoord1s = unsafePerformIO $ getCommand "glTexCoord1s"
-
--- glTexCoord1sv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord1sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
-  -> m ()
-glTexCoord1sv v1 = liftIO $ dyn45 ptr_glTexCoord1sv v1
-
-{-# NOINLINE ptr_glTexCoord1sv #-}
-ptr_glTexCoord1sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTexCoord1sv = unsafePerformIO $ getCommand "glTexCoord1sv"
-
--- glTexCoord1xOES -------------------------------------------------------------
-
-glTexCoord1xOES
-  :: MonadIO m
-  => GLfixed -- ^ @s@.
-  -> m ()
-glTexCoord1xOES v1 = liftIO $ dyn81 ptr_glTexCoord1xOES v1
-
-{-# NOINLINE ptr_glTexCoord1xOES #-}
-ptr_glTexCoord1xOES :: FunPtr (GLfixed -> IO ())
-ptr_glTexCoord1xOES = unsafePerformIO $ getCommand "glTexCoord1xOES"
-
--- glTexCoord1xvOES ------------------------------------------------------------
-
-glTexCoord1xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @1@ element of type @GLfixed@.
-  -> m ()
-glTexCoord1xvOES v1 = liftIO $ dyn107 ptr_glTexCoord1xvOES v1
-
-{-# NOINLINE ptr_glTexCoord1xvOES #-}
-ptr_glTexCoord1xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glTexCoord1xvOES = unsafePerformIO $ getCommand "glTexCoord1xvOES"
-
--- glTexCoord2bOES -------------------------------------------------------------
-
-glTexCoord2bOES
-  :: MonadIO m
-  => GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> m ()
-glTexCoord2bOES v1 v2 = liftIO $ dyn725 ptr_glTexCoord2bOES v1 v2
-
-{-# NOINLINE ptr_glTexCoord2bOES #-}
-ptr_glTexCoord2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
-ptr_glTexCoord2bOES = unsafePerformIO $ getCommand "glTexCoord2bOES"
-
--- glTexCoord2bvOES ------------------------------------------------------------
-
-glTexCoord2bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
-  -> m ()
-glTexCoord2bvOES v1 = liftIO $ dyn37 ptr_glTexCoord2bvOES v1
-
-{-# NOINLINE ptr_glTexCoord2bvOES #-}
-ptr_glTexCoord2bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glTexCoord2bvOES = unsafePerformIO $ getCommand "glTexCoord2bvOES"
-
--- glTexCoord2d ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2dv'.
-glTexCoord2d
-  :: MonadIO m
-  => GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> m ()
-glTexCoord2d v1 v2 = liftIO $ dyn217 ptr_glTexCoord2d v1 v2
-
-{-# NOINLINE ptr_glTexCoord2d #-}
-ptr_glTexCoord2d :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glTexCoord2d = unsafePerformIO $ getCommand "glTexCoord2d"
-
--- glTexCoord2dv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord2dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glTexCoord2dv v1 = liftIO $ dyn39 ptr_glTexCoord2dv v1
-
-{-# NOINLINE ptr_glTexCoord2dv #-}
-ptr_glTexCoord2dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glTexCoord2dv = unsafePerformIO $ getCommand "glTexCoord2dv"
-
--- glTexCoord2f ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2fv'.
-glTexCoord2f
-  :: MonadIO m
-  => GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> m ()
-glTexCoord2f v1 v2 = liftIO $ dyn222 ptr_glTexCoord2f v1 v2
-
-{-# NOINLINE ptr_glTexCoord2f #-}
-ptr_glTexCoord2f :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2f = unsafePerformIO $ getCommand "glTexCoord2f"
-
--- glTexCoord2fColor3fVertex3fSUN ----------------------------------------------
-
-glTexCoord2fColor3fVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTexCoord2fColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glTexCoord2fColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fSUN #-}
-ptr_glTexCoord2fColor3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2fColor3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fSUN"
-
--- glTexCoord2fColor3fVertex3fvSUN ---------------------------------------------
-
-glTexCoord2fColor3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord2fColor3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn111 ptr_glTexCoord2fColor3fVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fvSUN #-}
-ptr_glTexCoord2fColor3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord2fColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fvSUN"
-
--- glTexCoord2fColor4fNormal3fVertex3fSUN --------------------------------------
-
-glTexCoord2fColor4fNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @a@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn726 ptr_glTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
-
-{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fSUN #-}
-ptr_glTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fSUN"
-
--- glTexCoord2fColor4fNormal3fVertex3fvSUN -------------------------------------
-
-glTexCoord2fColor4fNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn727 ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN #-}
-ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fvSUN"
-
--- glTexCoord2fColor4ubVertex3fSUN ---------------------------------------------
-
-glTexCoord2fColor4ubVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLubyte -- ^ @r@.
-  -> GLubyte -- ^ @g@.
-  -> GLubyte -- ^ @b@.
-  -> GLubyte -- ^ @a@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTexCoord2fColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn728 ptr_glTexCoord2fColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fSUN #-}
-ptr_glTexCoord2fColor4ubVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2fColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fSUN"
-
--- glTexCoord2fColor4ubVertex3fvSUN --------------------------------------------
-
-glTexCoord2fColor4ubVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord2fColor4ubVertex3fvSUN v1 v2 v3 = liftIO $ dyn729 ptr_glTexCoord2fColor4ubVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fvSUN #-}
-ptr_glTexCoord2fColor4ubVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
-ptr_glTexCoord2fColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fvSUN"
-
--- glTexCoord2fNormal3fVertex3fSUN ---------------------------------------------
-
-glTexCoord2fNormal3fVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fSUN #-}
-ptr_glTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fSUN"
-
--- glTexCoord2fNormal3fVertex3fvSUN --------------------------------------------
-
-glTexCoord2fNormal3fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn111 ptr_glTexCoord2fNormal3fVertex3fvSUN v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fvSUN #-}
-ptr_glTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fvSUN"
-
--- glTexCoord2fVertex3fSUN -----------------------------------------------------
-
-glTexCoord2fVertex3fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 = liftIO $ dyn252 ptr_glTexCoord2fVertex3fSUN v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexCoord2fVertex3fSUN #-}
-ptr_glTexCoord2fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fSUN"
-
--- glTexCoord2fVertex3fvSUN ----------------------------------------------------
-
-glTexCoord2fVertex3fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord2fVertex3fvSUN v1 v2 = liftIO $ dyn97 ptr_glTexCoord2fVertex3fvSUN v1 v2
-
-{-# NOINLINE ptr_glTexCoord2fVertex3fvSUN #-}
-ptr_glTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fvSUN"
-
--- glTexCoord2fv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord2fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glTexCoord2fv v1 = liftIO $ dyn41 ptr_glTexCoord2fv v1
-
-{-# NOINLINE ptr_glTexCoord2fv #-}
-ptr_glTexCoord2fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glTexCoord2fv = unsafePerformIO $ getCommand "glTexCoord2fv"
-
--- glTexCoord2hNV --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTexCoord2hvNV'.
-glTexCoord2hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> m ()
-glTexCoord2hNV v1 v2 = liftIO $ dyn730 ptr_glTexCoord2hNV v1 v2
-
-{-# NOINLINE ptr_glTexCoord2hNV #-}
-ptr_glTexCoord2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
-ptr_glTexCoord2hNV = unsafePerformIO $ getCommand "glTexCoord2hNV"
-
--- glTexCoord2hvNV -------------------------------------------------------------
-
-glTexCoord2hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
-  -> m ()
-glTexCoord2hvNV v1 = liftIO $ dyn99 ptr_glTexCoord2hvNV v1
-
-{-# NOINLINE ptr_glTexCoord2hvNV #-}
-ptr_glTexCoord2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glTexCoord2hvNV = unsafePerformIO $ getCommand "glTexCoord2hvNV"
-
--- glTexCoord2i ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2iv'.
-glTexCoord2i
-  :: MonadIO m
-  => GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> m ()
-glTexCoord2i v1 v2 = liftIO $ dyn266 ptr_glTexCoord2i v1 v2
-
-{-# NOINLINE ptr_glTexCoord2i #-}
-ptr_glTexCoord2i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glTexCoord2i = unsafePerformIO $ getCommand "glTexCoord2i"
-
--- glTexCoord2iv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord2iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glTexCoord2iv v1 = liftIO $ dyn43 ptr_glTexCoord2iv v1
-
-{-# NOINLINE ptr_glTexCoord2iv #-}
-ptr_glTexCoord2iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glTexCoord2iv = unsafePerformIO $ getCommand "glTexCoord2iv"
-
--- glTexCoord2s ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2sv'.
-glTexCoord2s
-  :: MonadIO m
-  => GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> m ()
-glTexCoord2s v1 v2 = liftIO $ dyn672 ptr_glTexCoord2s v1 v2
-
-{-# NOINLINE ptr_glTexCoord2s #-}
-ptr_glTexCoord2s :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glTexCoord2s = unsafePerformIO $ getCommand "glTexCoord2s"
-
--- glTexCoord2sv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord2sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glTexCoord2sv v1 = liftIO $ dyn45 ptr_glTexCoord2sv v1
-
-{-# NOINLINE ptr_glTexCoord2sv #-}
-ptr_glTexCoord2sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTexCoord2sv = unsafePerformIO $ getCommand "glTexCoord2sv"
-
--- glTexCoord2xOES -------------------------------------------------------------
-
-glTexCoord2xOES
-  :: MonadIO m
-  => GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> m ()
-glTexCoord2xOES v1 v2 = liftIO $ dyn224 ptr_glTexCoord2xOES v1 v2
-
-{-# NOINLINE ptr_glTexCoord2xOES #-}
-ptr_glTexCoord2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glTexCoord2xOES = unsafePerformIO $ getCommand "glTexCoord2xOES"
-
--- glTexCoord2xvOES ------------------------------------------------------------
-
-glTexCoord2xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glTexCoord2xvOES v1 = liftIO $ dyn107 ptr_glTexCoord2xvOES v1
-
-{-# NOINLINE ptr_glTexCoord2xvOES #-}
-ptr_glTexCoord2xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glTexCoord2xvOES = unsafePerformIO $ getCommand "glTexCoord2xvOES"
-
--- glTexCoord3bOES -------------------------------------------------------------
-
-glTexCoord3bOES
-  :: MonadIO m
-  => GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> GLbyte -- ^ @r@.
-  -> m ()
-glTexCoord3bOES v1 v2 v3 = liftIO $ dyn36 ptr_glTexCoord3bOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3bOES #-}
-ptr_glTexCoord3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glTexCoord3bOES = unsafePerformIO $ getCommand "glTexCoord3bOES"
-
--- glTexCoord3bvOES ------------------------------------------------------------
-
-glTexCoord3bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glTexCoord3bvOES v1 = liftIO $ dyn37 ptr_glTexCoord3bvOES v1
-
-{-# NOINLINE ptr_glTexCoord3bvOES #-}
-ptr_glTexCoord3bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glTexCoord3bvOES = unsafePerformIO $ getCommand "glTexCoord3bvOES"
-
--- glTexCoord3d ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3dv'.
-glTexCoord3d
-  :: MonadIO m
-  => GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> m ()
-glTexCoord3d v1 v2 v3 = liftIO $ dyn38 ptr_glTexCoord3d v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3d #-}
-ptr_glTexCoord3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glTexCoord3d = unsafePerformIO $ getCommand "glTexCoord3d"
-
--- glTexCoord3dv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glTexCoord3dv v1 = liftIO $ dyn39 ptr_glTexCoord3dv v1
-
-{-# NOINLINE ptr_glTexCoord3dv #-}
-ptr_glTexCoord3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glTexCoord3dv = unsafePerformIO $ getCommand "glTexCoord3dv"
-
--- glTexCoord3f ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3fv'.
-glTexCoord3f
-  :: MonadIO m
-  => GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> m ()
-glTexCoord3f v1 v2 v3 = liftIO $ dyn40 ptr_glTexCoord3f v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3f #-}
-ptr_glTexCoord3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord3f = unsafePerformIO $ getCommand "glTexCoord3f"
-
--- glTexCoord3fv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glTexCoord3fv v1 = liftIO $ dyn41 ptr_glTexCoord3fv v1
-
-{-# NOINLINE ptr_glTexCoord3fv #-}
-ptr_glTexCoord3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glTexCoord3fv = unsafePerformIO $ getCommand "glTexCoord3fv"
-
--- glTexCoord3hNV --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTexCoord3hvNV'.
-glTexCoord3hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
-  -> m ()
-glTexCoord3hNV v1 v2 v3 = liftIO $ dyn98 ptr_glTexCoord3hNV v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3hNV #-}
-ptr_glTexCoord3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glTexCoord3hNV = unsafePerformIO $ getCommand "glTexCoord3hNV"
-
--- glTexCoord3hvNV -------------------------------------------------------------
-
-glTexCoord3hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glTexCoord3hvNV v1 = liftIO $ dyn99 ptr_glTexCoord3hvNV v1
-
-{-# NOINLINE ptr_glTexCoord3hvNV #-}
-ptr_glTexCoord3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glTexCoord3hvNV = unsafePerformIO $ getCommand "glTexCoord3hvNV"
-
--- glTexCoord3i ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3iv'.
-glTexCoord3i
-  :: MonadIO m
-  => GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> m ()
-glTexCoord3i v1 v2 v3 = liftIO $ dyn42 ptr_glTexCoord3i v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3i #-}
-ptr_glTexCoord3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glTexCoord3i = unsafePerformIO $ getCommand "glTexCoord3i"
-
--- glTexCoord3iv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glTexCoord3iv v1 = liftIO $ dyn43 ptr_glTexCoord3iv v1
-
-{-# NOINLINE ptr_glTexCoord3iv #-}
-ptr_glTexCoord3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glTexCoord3iv = unsafePerformIO $ getCommand "glTexCoord3iv"
-
--- glTexCoord3s ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3sv'.
-glTexCoord3s
-  :: MonadIO m
-  => GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> m ()
-glTexCoord3s v1 v2 v3 = liftIO $ dyn44 ptr_glTexCoord3s v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3s #-}
-ptr_glTexCoord3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glTexCoord3s = unsafePerformIO $ getCommand "glTexCoord3s"
-
--- glTexCoord3sv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glTexCoord3sv v1 = liftIO $ dyn45 ptr_glTexCoord3sv v1
-
-{-# NOINLINE ptr_glTexCoord3sv #-}
-ptr_glTexCoord3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTexCoord3sv = unsafePerformIO $ getCommand "glTexCoord3sv"
-
--- glTexCoord3xOES -------------------------------------------------------------
-
-glTexCoord3xOES
-  :: MonadIO m
-  => GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> m ()
-glTexCoord3xOES v1 v2 v3 = liftIO $ dyn106 ptr_glTexCoord3xOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoord3xOES #-}
-ptr_glTexCoord3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glTexCoord3xOES = unsafePerformIO $ getCommand "glTexCoord3xOES"
-
--- glTexCoord3xvOES ------------------------------------------------------------
-
-glTexCoord3xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
-  -> m ()
-glTexCoord3xvOES v1 = liftIO $ dyn107 ptr_glTexCoord3xvOES v1
-
-{-# NOINLINE ptr_glTexCoord3xvOES #-}
-ptr_glTexCoord3xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glTexCoord3xvOES = unsafePerformIO $ getCommand "glTexCoord3xvOES"
+  glSecondaryColor3ubv,
+  glSecondaryColor3ubvEXT,
+  glSecondaryColor3ui,
+  glSecondaryColor3uiEXT,
+  glSecondaryColor3uiv,
+  glSecondaryColor3uivEXT,
+  glSecondaryColor3us,
+  glSecondaryColor3usEXT,
+  glSecondaryColor3usv,
+  glSecondaryColor3usvEXT,
+  glSecondaryColorFormatNV,
+  glSecondaryColorP3ui,
+  glSecondaryColorP3uiv,
+  glSecondaryColorPointer,
+  glSecondaryColorPointerEXT,
+  glSecondaryColorPointerListIBM,
+  glSelectBuffer,
+  glSelectPerfMonitorCountersAMD,
+  glSemaphoreParameterui64vEXT,
+  glSeparableFilter2D,
+  glSeparableFilter2DEXT,
+  glSetFenceAPPLE,
+  glSetFenceNV,
+  glSetFragmentShaderConstantATI,
+  glSetInvariantEXT,
+  glSetLocalConstantEXT,
+  glSetMultisamplefvAMD,
+  glShadeModel,
+  glShaderBinary,
+  glShaderOp1EXT,
+  glShaderOp2EXT,
+  glShaderOp3EXT,
+  glShaderSource,
+  glShaderSourceARB,
+  glShaderStorageBlockBinding,
+  glSharpenTexFuncSGIS,
+  glSignalSemaphoreEXT,
+  glSignalVkFenceNV,
+  glSignalVkSemaphoreNV,
+  glSpecializeShaderARB,
+  glSpriteParameterfSGIX,
+  glSpriteParameterfvSGIX,
+  glSpriteParameteriSGIX,
+  glSpriteParameterivSGIX,
+  glStartInstrumentsSGIX,
+  glStartTilingQCOM,
+  glStateCaptureNV,
+  glStencilClearTagEXT,
+  glStencilFillPathInstancedNV,
+  glStencilFillPathNV,
+  glStencilFunc,
+  glStencilFuncSeparate,
+  glStencilFuncSeparateATI,
+  glStencilMask,
+  glStencilMaskSeparate,
+  glStencilOp,
+  glStencilOpSeparate,
+  glStencilOpSeparateATI,
+  glStencilOpValueAMD,
+  glStencilStrokePathInstancedNV,
+  glStencilStrokePathNV,
+  glStencilThenCoverFillPathInstancedNV,
+  glStencilThenCoverFillPathNV,
+  glStencilThenCoverStrokePathInstancedNV,
+  glStencilThenCoverStrokePathNV,
+  glStopInstrumentsSGIX,
+  glStringMarkerGREMEDY,
+  glSubpixelPrecisionBiasNV,
+  glSwizzleEXT,
+  glSyncTextureINTEL,
+  glTagSampleBufferSGIX,
+  glTangent3bEXT,
+  glTangent3bvEXT,
+  glTangent3dEXT,
+  glTangent3dvEXT,
+  glTangent3fEXT,
+  glTangent3fvEXT,
+  glTangent3iEXT,
+  glTangent3ivEXT,
+  glTangent3sEXT,
+  glTangent3svEXT,
+  glTangentPointerEXT,
+  glTbufferMask3DFX,
+  glTessellationFactorAMD,
+  glTessellationModeAMD,
+  glTestFenceAPPLE,
+  glTestFenceNV,
+  glTestObjectAPPLE,
+  glTexBuffer,
+  glTexBufferARB,
+  glTexBufferEXT,
+  glTexBufferOES,
+  glTexBufferRange,
+  glTexBufferRangeEXT,
+  glTexBufferRangeOES,
+  glTexBumpParameterfvATI,
+  glTexBumpParameterivATI,
+  glTexCoord1bOES,
+  glTexCoord1bvOES,
+  glTexCoord1d
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glSecondaryColor3ubv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3ubv
+  :: MonadIO m
+  => Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
+  -> m ()
+glSecondaryColor3ubv v1 = liftIO $ dyn104 ptr_glSecondaryColor3ubv v1
+
+{-# NOINLINE ptr_glSecondaryColor3ubv #-}
+ptr_glSecondaryColor3ubv :: FunPtr (Ptr GLubyte -> IO ())
+ptr_glSecondaryColor3ubv = unsafePerformIO $ getCommand "glSecondaryColor3ubv"
+
+-- glSecondaryColor3ubvEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3ubv'.
+glSecondaryColor3ubvEXT
+  :: MonadIO m
+  => Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
+  -> m ()
+glSecondaryColor3ubvEXT v1 = liftIO $ dyn104 ptr_glSecondaryColor3ubvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3ubvEXT #-}
+ptr_glSecondaryColor3ubvEXT :: FunPtr (Ptr GLubyte -> IO ())
+ptr_glSecondaryColor3ubvEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubvEXT"
+
+-- glSecondaryColor3ui ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3uiv'.
+glSecondaryColor3ui
+  :: MonadIO m
+  => GLuint -- ^ @red@ of type @ColorUI@.
+  -> GLuint -- ^ @green@ of type @ColorUI@.
+  -> GLuint -- ^ @blue@ of type @ColorUI@.
+  -> m ()
+glSecondaryColor3ui v1 v2 v3 = liftIO $ dyn105 ptr_glSecondaryColor3ui v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3ui #-}
+ptr_glSecondaryColor3ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glSecondaryColor3ui = unsafePerformIO $ getCommand "glSecondaryColor3ui"
+
+-- glSecondaryColor3uiEXT ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3uivEXT'. This command is an alias for 'glSecondaryColor3ui'.
+glSecondaryColor3uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @red@ of type @ColorUI@.
+  -> GLuint -- ^ @green@ of type @ColorUI@.
+  -> GLuint -- ^ @blue@ of type @ColorUI@.
+  -> m ()
+glSecondaryColor3uiEXT v1 v2 v3 = liftIO $ dyn105 ptr_glSecondaryColor3uiEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3uiEXT #-}
+ptr_glSecondaryColor3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glSecondaryColor3uiEXT = unsafePerformIO $ getCommand "glSecondaryColor3uiEXT"
+
+-- glSecondaryColor3uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3uiv
+  :: MonadIO m
+  => Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
+  -> m ()
+glSecondaryColor3uiv v1 = liftIO $ dyn106 ptr_glSecondaryColor3uiv v1
+
+{-# NOINLINE ptr_glSecondaryColor3uiv #-}
+ptr_glSecondaryColor3uiv :: FunPtr (Ptr GLuint -> IO ())
+ptr_glSecondaryColor3uiv = unsafePerformIO $ getCommand "glSecondaryColor3uiv"
+
+-- glSecondaryColor3uivEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3uiv'.
+glSecondaryColor3uivEXT
+  :: MonadIO m
+  => Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
+  -> m ()
+glSecondaryColor3uivEXT v1 = liftIO $ dyn106 ptr_glSecondaryColor3uivEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3uivEXT #-}
+ptr_glSecondaryColor3uivEXT :: FunPtr (Ptr GLuint -> IO ())
+ptr_glSecondaryColor3uivEXT = unsafePerformIO $ getCommand "glSecondaryColor3uivEXT"
+
+-- glSecondaryColor3us ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3usv'.
+glSecondaryColor3us
+  :: MonadIO m
+  => GLushort -- ^ @red@ of type @ColorUS@.
+  -> GLushort -- ^ @green@ of type @ColorUS@.
+  -> GLushort -- ^ @blue@ of type @ColorUS@.
+  -> m ()
+glSecondaryColor3us v1 v2 v3 = liftIO $ dyn107 ptr_glSecondaryColor3us v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3us #-}
+ptr_glSecondaryColor3us :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
+ptr_glSecondaryColor3us = unsafePerformIO $ getCommand "glSecondaryColor3us"
+
+-- glSecondaryColor3usEXT ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3usvEXT'. This command is an alias for 'glSecondaryColor3us'.
+glSecondaryColor3usEXT
+  :: MonadIO m
+  => GLushort -- ^ @red@ of type @ColorUS@.
+  -> GLushort -- ^ @green@ of type @ColorUS@.
+  -> GLushort -- ^ @blue@ of type @ColorUS@.
+  -> m ()
+glSecondaryColor3usEXT v1 v2 v3 = liftIO $ dyn107 ptr_glSecondaryColor3usEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3usEXT #-}
+ptr_glSecondaryColor3usEXT :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
+ptr_glSecondaryColor3usEXT = unsafePerformIO $ getCommand "glSecondaryColor3usEXT"
+
+-- glSecondaryColor3usv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>.
+glSecondaryColor3usv
+  :: MonadIO m
+  => Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
+  -> m ()
+glSecondaryColor3usv v1 = liftIO $ dyn108 ptr_glSecondaryColor3usv v1
+
+{-# NOINLINE ptr_glSecondaryColor3usv #-}
+ptr_glSecondaryColor3usv :: FunPtr (Ptr GLushort -> IO ())
+ptr_glSecondaryColor3usv = unsafePerformIO $ getCommand "glSecondaryColor3usv"
+
+-- glSecondaryColor3usvEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3usv'.
+glSecondaryColor3usvEXT
+  :: MonadIO m
+  => Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
+  -> m ()
+glSecondaryColor3usvEXT v1 = liftIO $ dyn108 ptr_glSecondaryColor3usvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3usvEXT #-}
+ptr_glSecondaryColor3usvEXT :: FunPtr (Ptr GLushort -> IO ())
+ptr_glSecondaryColor3usvEXT = unsafePerformIO $ getCommand "glSecondaryColor3usvEXT"
+
+-- glSecondaryColorFormatNV ----------------------------------------------------
+
+glSecondaryColorFormatNV
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glSecondaryColorFormatNV v1 v2 v3 = liftIO $ dyn122 ptr_glSecondaryColorFormatNV v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColorFormatNV #-}
+ptr_glSecondaryColorFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
+ptr_glSecondaryColorFormatNV = unsafePerformIO $ getCommand "glSecondaryColorFormatNV"
+
+-- glSecondaryColorP3ui --------------------------------------------------------
+
+glSecondaryColorP3ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @color@.
+  -> m ()
+glSecondaryColorP3ui v1 v2 = liftIO $ dyn17 ptr_glSecondaryColorP3ui v1 v2
+
+{-# NOINLINE ptr_glSecondaryColorP3ui #-}
+ptr_glSecondaryColorP3ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glSecondaryColorP3ui = unsafePerformIO $ getCommand "glSecondaryColorP3ui"
+
+-- glSecondaryColorP3uiv -------------------------------------------------------
+
+glSecondaryColorP3uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @color@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glSecondaryColorP3uiv v1 v2 = liftIO $ dyn128 ptr_glSecondaryColorP3uiv v1 v2
+
+{-# NOINLINE ptr_glSecondaryColorP3uiv #-}
+ptr_glSecondaryColorP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glSecondaryColorP3uiv = unsafePerformIO $ getCommand "glSecondaryColorP3uiv"
+
+-- glSecondaryColorPointer -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColorPointer.xml OpenGL 2.x>.
+glSecondaryColorPointer
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glSecondaryColorPointer v1 v2 v3 v4 = liftIO $ dyn129 ptr_glSecondaryColorPointer v1 v2 v3 v4
+
+{-# NOINLINE ptr_glSecondaryColorPointer #-}
+ptr_glSecondaryColorPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glSecondaryColorPointer = unsafePerformIO $ getCommand "glSecondaryColorPointer"
+
+-- glSecondaryColorPointerEXT --------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColorPointer'.
+glSecondaryColorPointerEXT
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glSecondaryColorPointerEXT v1 v2 v3 v4 = liftIO $ dyn129 ptr_glSecondaryColorPointerEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glSecondaryColorPointerEXT #-}
+ptr_glSecondaryColorPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glSecondaryColorPointerEXT = unsafePerformIO $ getCommand "glSecondaryColorPointerEXT"
+
+-- glSecondaryColorPointerListIBM ----------------------------------------------
+
+glSecondaryColorPointerListIBM
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @SecondaryColorPointerTypeIBM@.
+  -> GLint -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glSecondaryColorPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn131 ptr_glSecondaryColorPointerListIBM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glSecondaryColorPointerListIBM #-}
+ptr_glSecondaryColorPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+ptr_glSecondaryColorPointerListIBM = unsafePerformIO $ getCommand "glSecondaryColorPointerListIBM"
+
+-- glSelectBuffer --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSelectBuffer.xml OpenGL 2.x>.
+glSelectBuffer
+  :: MonadIO m
+  => GLsizei -- ^ @size@.
+  -> Ptr GLuint -- ^ @buffer@ pointing to @size@ elements of type @SelectName@.
+  -> m ()
+glSelectBuffer v1 v2 = liftIO $ dyn196 ptr_glSelectBuffer v1 v2
+
+{-# NOINLINE ptr_glSelectBuffer #-}
+ptr_glSelectBuffer :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
+ptr_glSelectBuffer = unsafePerformIO $ getCommand "glSelectBuffer"
+
+-- glSelectPerfMonitorCountersAMD ----------------------------------------------
+
+glSelectPerfMonitorCountersAMD
+  :: MonadIO m
+  => GLuint -- ^ @monitor@.
+  -> GLboolean -- ^ @enable@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @group@.
+  -> GLint -- ^ @numCounters@.
+  -> Ptr GLuint -- ^ @counterList@ pointing to @numCounters@ elements of type @GLuint@.
+  -> m ()
+glSelectPerfMonitorCountersAMD v1 v2 v3 v4 v5 = liftIO $ dyn727 ptr_glSelectPerfMonitorCountersAMD v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glSelectPerfMonitorCountersAMD #-}
+ptr_glSelectPerfMonitorCountersAMD :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
+ptr_glSelectPerfMonitorCountersAMD = unsafePerformIO $ getCommand "glSelectPerfMonitorCountersAMD"
+
+-- glSemaphoreParameterui64vEXT ------------------------------------------------
+
+glSemaphoreParameterui64vEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLenum -- ^ @pname@ of type [SemaphoreParameterName](Graphics-GL-Groups.html#SemaphoreParameterName).
+  -> Ptr GLuint64 -- ^ @params@.
+  -> m ()
+glSemaphoreParameterui64vEXT v1 v2 v3 = liftIO $ dyn411 ptr_glSemaphoreParameterui64vEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSemaphoreParameterui64vEXT #-}
+ptr_glSemaphoreParameterui64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
+ptr_glSemaphoreParameterui64vEXT = unsafePerformIO $ getCommand "glSemaphoreParameterui64vEXT"
+
+-- glSeparableFilter2D ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSeparableFilter2D.xml OpenGL 2.x>.
+glSeparableFilter2D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @SeparableTarget@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
+  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
+  -> m ()
+glSeparableFilter2D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn728 ptr_glSeparableFilter2D v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glSeparableFilter2D #-}
+ptr_glSeparableFilter2D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
+ptr_glSeparableFilter2D = unsafePerformIO $ getCommand "glSeparableFilter2D"
+
+-- glSeparableFilter2DEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSeparableFilter2D'.
+glSeparableFilter2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [SeparableTargetEXT](Graphics-GL-Groups.html#SeparableTargetEXT).
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
+  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
+  -> m ()
+glSeparableFilter2DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn728 ptr_glSeparableFilter2DEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glSeparableFilter2DEXT #-}
+ptr_glSeparableFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
+ptr_glSeparableFilter2DEXT = unsafePerformIO $ getCommand "glSeparableFilter2DEXT"
+
+-- glSetFenceAPPLE -------------------------------------------------------------
+
+glSetFenceAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> m ()
+glSetFenceAPPLE v1 = liftIO $ dyn3 ptr_glSetFenceAPPLE v1
+
+{-# NOINLINE ptr_glSetFenceAPPLE #-}
+ptr_glSetFenceAPPLE :: FunPtr (GLuint -> IO ())
+ptr_glSetFenceAPPLE = unsafePerformIO $ getCommand "glSetFenceAPPLE"
+
+-- glSetFenceNV ----------------------------------------------------------------
+
+glSetFenceNV
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> GLenum -- ^ @condition@ of type @FenceConditionNV@.
+  -> m ()
+glSetFenceNV v1 v2 = liftIO $ dyn16 ptr_glSetFenceNV v1 v2
+
+{-# NOINLINE ptr_glSetFenceNV #-}
+ptr_glSetFenceNV :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glSetFenceNV = unsafePerformIO $ getCommand "glSetFenceNV"
+
+-- glSetFragmentShaderConstantATI ----------------------------------------------
+
+glSetFragmentShaderConstantATI
+  :: MonadIO m
+  => GLuint -- ^ @dst@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glSetFragmentShaderConstantATI v1 v2 = liftIO $ dyn386 ptr_glSetFragmentShaderConstantATI v1 v2
+
+{-# NOINLINE ptr_glSetFragmentShaderConstantATI #-}
+ptr_glSetFragmentShaderConstantATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glSetFragmentShaderConstantATI = unsafePerformIO $ getCommand "glSetFragmentShaderConstantATI"
+
+-- glSetInvariantEXT -----------------------------------------------------------
+
+glSetInvariantEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
+  -> m ()
+glSetInvariantEXT v1 v2 v3 = liftIO $ dyn482 ptr_glSetInvariantEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSetInvariantEXT #-}
+ptr_glSetInvariantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
+ptr_glSetInvariantEXT = unsafePerformIO $ getCommand "glSetInvariantEXT"
+
+-- glSetLocalConstantEXT -------------------------------------------------------
+
+glSetLocalConstantEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
+  -> m ()
+glSetLocalConstantEXT v1 v2 v3 = liftIO $ dyn482 ptr_glSetLocalConstantEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSetLocalConstantEXT #-}
+ptr_glSetLocalConstantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
+ptr_glSetLocalConstantEXT = unsafePerformIO $ getCommand "glSetLocalConstantEXT"
+
+-- glSetMultisamplefvAMD -------------------------------------------------------
+
+glSetMultisamplefvAMD
+  :: MonadIO m
+  => GLenum -- ^ @pname@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glSetMultisamplefvAMD v1 v2 v3 = liftIO $ dyn271 ptr_glSetMultisamplefvAMD v1 v2 v3
+
+{-# NOINLINE ptr_glSetMultisamplefvAMD #-}
+ptr_glSetMultisamplefvAMD :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glSetMultisamplefvAMD = unsafePerformIO $ getCommand "glSetMultisamplefvAMD"
+
+-- glShadeModel ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glShadeModel.xml OpenGL 2.x>.
+glShadeModel
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [ShadingModel](Graphics-GL-Groups.html#ShadingModel).
+  -> m ()
+glShadeModel v1 = liftIO $ dyn5 ptr_glShadeModel v1
+
+{-# NOINLINE ptr_glShadeModel #-}
+ptr_glShadeModel :: FunPtr (GLenum -> IO ())
+ptr_glShadeModel = unsafePerformIO $ getCommand "glShadeModel"
+
+-- glShaderBinary --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderBinary.xhtml OpenGL 4.x>.
+glShaderBinary
+  :: MonadIO m
+  => GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @shaders@ pointing to @count@ elements of type @GLuint@.
+  -> GLenum -- ^ @binaryformat@.
+  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
+  -> GLsizei -- ^ @length@.
+  -> m ()
+glShaderBinary v1 v2 v3 v4 v5 = liftIO $ dyn729 ptr_glShaderBinary v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glShaderBinary #-}
+ptr_glShaderBinary :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
+ptr_glShaderBinary = unsafePerformIO $ getCommand "glShaderBinary"
+
+-- glShaderOp1EXT --------------------------------------------------------------
+
+glShaderOp1EXT
+  :: MonadIO m
+  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
+  -> GLuint -- ^ @res@.
+  -> GLuint -- ^ @arg1@.
+  -> m ()
+glShaderOp1EXT v1 v2 v3 = liftIO $ dyn18 ptr_glShaderOp1EXT v1 v2 v3
+
+{-# NOINLINE ptr_glShaderOp1EXT #-}
+ptr_glShaderOp1EXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
+ptr_glShaderOp1EXT = unsafePerformIO $ getCommand "glShaderOp1EXT"
+
+-- glShaderOp2EXT --------------------------------------------------------------
+
+glShaderOp2EXT
+  :: MonadIO m
+  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
+  -> GLuint -- ^ @res@.
+  -> GLuint -- ^ @arg1@.
+  -> GLuint -- ^ @arg2@.
+  -> m ()
+glShaderOp2EXT v1 v2 v3 v4 = liftIO $ dyn730 ptr_glShaderOp2EXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glShaderOp2EXT #-}
+ptr_glShaderOp2EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glShaderOp2EXT = unsafePerformIO $ getCommand "glShaderOp2EXT"
+
+-- glShaderOp3EXT --------------------------------------------------------------
+
+glShaderOp3EXT
+  :: MonadIO m
+  => GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
+  -> GLuint -- ^ @res@.
+  -> GLuint -- ^ @arg1@.
+  -> GLuint -- ^ @arg2@.
+  -> GLuint -- ^ @arg3@.
+  -> m ()
+glShaderOp3EXT v1 v2 v3 v4 v5 = liftIO $ dyn731 ptr_glShaderOp3EXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glShaderOp3EXT #-}
+ptr_glShaderOp3EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glShaderOp3EXT = unsafePerformIO $ getCommand "glShaderOp3EXT"
+
+-- glShaderSource --------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glShaderSource.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glShaderSource.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glShaderSource.xhtml OpenGL 4.x>.
+glShaderSource
+  :: MonadIO m
+  => GLuint -- ^ @shader@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr (Ptr GLchar) -- ^ @string@ pointing to @count@ elements of type @Ptr GLchar@.
+  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
+  -> m ()
+glShaderSource v1 v2 v3 v4 = liftIO $ dyn141 ptr_glShaderSource v1 v2 v3 v4
+
+{-# NOINLINE ptr_glShaderSource #-}
+ptr_glShaderSource :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
+ptr_glShaderSource = unsafePerformIO $ getCommand "glShaderSource"
+
+-- glShaderSourceARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glShaderSource'.
+glShaderSourceARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @shaderObj@ of type @handleARB@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr (Ptr GLcharARB) -- ^ @string@ pointing to @count@ elements of type @Ptr GLcharARB@.
+  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
+  -> m ()
+glShaderSourceARB v1 v2 v3 v4 = liftIO $ dyn732 ptr_glShaderSourceARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glShaderSourceARB #-}
+ptr_glShaderSourceARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
+ptr_glShaderSourceARB = unsafePerformIO $ getCommand "glShaderSourceARB"
+
+-- glShaderStorageBlockBinding -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderStorageBlockBinding.xhtml OpenGL 4.x>.
+glShaderStorageBlockBinding
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLuint -- ^ @storageBlockIndex@.
+  -> GLuint -- ^ @storageBlockBinding@.
+  -> m ()
+glShaderStorageBlockBinding v1 v2 v3 = liftIO $ dyn105 ptr_glShaderStorageBlockBinding v1 v2 v3
+
+{-# NOINLINE ptr_glShaderStorageBlockBinding #-}
+ptr_glShaderStorageBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glShaderStorageBlockBinding = unsafePerformIO $ getCommand "glShaderStorageBlockBinding"
+
+-- glSharpenTexFuncSGIS --------------------------------------------------------
+
+glSharpenTexFuncSGIS
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
+  -> m ()
+glSharpenTexFuncSGIS v1 v2 v3 = liftIO $ dyn228 ptr_glSharpenTexFuncSGIS v1 v2 v3
+
+{-# NOINLINE ptr_glSharpenTexFuncSGIS #-}
+ptr_glSharpenTexFuncSGIS :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glSharpenTexFuncSGIS = unsafePerformIO $ getCommand "glSharpenTexFuncSGIS"
+
+-- glSignalSemaphoreEXT --------------------------------------------------------
+
+glSignalSemaphoreEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLuint -- ^ @numBufferBarriers@.
+  -> Ptr GLuint -- ^ @buffers@ pointing to @COMPSIZE(numBufferBarriers)@ elements of type @GLuint@.
+  -> GLuint -- ^ @numTextureBarriers@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @COMPSIZE(numTextureBarriers)@ elements of type @GLuint@.
+  -> Ptr GLenum -- ^ @dstLayouts@ pointing to @COMPSIZE(numTextureBarriers)@ elements of type [TextureLayout](Graphics-GL-Groups.html#TextureLayout).
+  -> m ()
+glSignalSemaphoreEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn733 ptr_glSignalSemaphoreEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glSignalSemaphoreEXT #-}
+ptr_glSignalSemaphoreEXT :: FunPtr (GLuint -> GLuint -> Ptr GLuint -> GLuint -> Ptr GLuint -> Ptr GLenum -> IO ())
+ptr_glSignalSemaphoreEXT = unsafePerformIO $ getCommand "glSignalSemaphoreEXT"
+
+-- glSignalVkFenceNV -----------------------------------------------------------
+
+glSignalVkFenceNV
+  :: MonadIO m
+  => GLuint64 -- ^ @vkFence@.
+  -> m ()
+glSignalVkFenceNV v1 = liftIO $ dyn508 ptr_glSignalVkFenceNV v1
+
+{-# NOINLINE ptr_glSignalVkFenceNV #-}
+ptr_glSignalVkFenceNV :: FunPtr (GLuint64 -> IO ())
+ptr_glSignalVkFenceNV = unsafePerformIO $ getCommand "glSignalVkFenceNV"
+
+-- glSignalVkSemaphoreNV -------------------------------------------------------
+
+glSignalVkSemaphoreNV
+  :: MonadIO m
+  => GLuint64 -- ^ @vkSemaphore@.
+  -> m ()
+glSignalVkSemaphoreNV v1 = liftIO $ dyn508 ptr_glSignalVkSemaphoreNV v1
+
+{-# NOINLINE ptr_glSignalVkSemaphoreNV #-}
+ptr_glSignalVkSemaphoreNV :: FunPtr (GLuint64 -> IO ())
+ptr_glSignalVkSemaphoreNV = unsafePerformIO $ getCommand "glSignalVkSemaphoreNV"
+
+-- glSpecializeShaderARB -------------------------------------------------------
+
+glSpecializeShaderARB
+  :: MonadIO m
+  => GLuint -- ^ @shader@.
+  -> Ptr GLchar -- ^ @pEntryPoint@.
+  -> GLuint -- ^ @numSpecializationConstants@.
+  -> Ptr GLuint -- ^ @pConstantIndex@.
+  -> Ptr GLuint -- ^ @pConstantValue@.
+  -> m ()
+glSpecializeShaderARB v1 v2 v3 v4 v5 = liftIO $ dyn734 ptr_glSpecializeShaderARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glSpecializeShaderARB #-}
+ptr_glSpecializeShaderARB :: FunPtr (GLuint -> Ptr GLchar -> GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
+ptr_glSpecializeShaderARB = unsafePerformIO $ getCommand "glSpecializeShaderARB"
+
+-- glSpriteParameterfSGIX ------------------------------------------------------
+
+glSpriteParameterfSGIX
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glSpriteParameterfSGIX v1 v2 = liftIO $ dyn0 ptr_glSpriteParameterfSGIX v1 v2
+
+{-# NOINLINE ptr_glSpriteParameterfSGIX #-}
+ptr_glSpriteParameterfSGIX :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glSpriteParameterfSGIX = unsafePerformIO $ getCommand "glSpriteParameterfSGIX"
+
+-- glSpriteParameterfvSGIX -----------------------------------------------------
+
+glSpriteParameterfvSGIX
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glSpriteParameterfvSGIX v1 v2 = liftIO $ dyn97 ptr_glSpriteParameterfvSGIX v1 v2
+
+{-# NOINLINE ptr_glSpriteParameterfvSGIX #-}
+ptr_glSpriteParameterfvSGIX :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glSpriteParameterfvSGIX = unsafePerformIO $ getCommand "glSpriteParameterfvSGIX"
+
+-- glSpriteParameteriSGIX ------------------------------------------------------
+
+glSpriteParameteriSGIX
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glSpriteParameteriSGIX v1 v2 = liftIO $ dyn56 ptr_glSpriteParameteriSGIX v1 v2
+
+{-# NOINLINE ptr_glSpriteParameteriSGIX #-}
+ptr_glSpriteParameteriSGIX :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glSpriteParameteriSGIX = unsafePerformIO $ getCommand "glSpriteParameteriSGIX"
+
+-- glSpriteParameterivSGIX -----------------------------------------------------
+
+glSpriteParameterivSGIX
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glSpriteParameterivSGIX v1 v2 = liftIO $ dyn139 ptr_glSpriteParameterivSGIX v1 v2
+
+{-# NOINLINE ptr_glSpriteParameterivSGIX #-}
+ptr_glSpriteParameterivSGIX :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glSpriteParameterivSGIX = unsafePerformIO $ getCommand "glSpriteParameterivSGIX"
+
+-- glStartInstrumentsSGIX ------------------------------------------------------
+
+glStartInstrumentsSGIX
+  :: MonadIO m
+  => m ()
+glStartInstrumentsSGIX = liftIO $ dyn11 ptr_glStartInstrumentsSGIX
+
+{-# NOINLINE ptr_glStartInstrumentsSGIX #-}
+ptr_glStartInstrumentsSGIX :: FunPtr (IO ())
+ptr_glStartInstrumentsSGIX = unsafePerformIO $ getCommand "glStartInstrumentsSGIX"
+
+-- glStartTilingQCOM -----------------------------------------------------------
+
+glStartTilingQCOM
+  :: MonadIO m
+  => GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @width@.
+  -> GLuint -- ^ @height@.
+  -> GLbitfield -- ^ @preserveMask@.
+  -> m ()
+glStartTilingQCOM v1 v2 v3 v4 v5 = liftIO $ dyn735 ptr_glStartTilingQCOM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glStartTilingQCOM #-}
+ptr_glStartTilingQCOM :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
+ptr_glStartTilingQCOM = unsafePerformIO $ getCommand "glStartTilingQCOM"
+
+-- glStateCaptureNV ------------------------------------------------------------
+
+glStateCaptureNV
+  :: MonadIO m
+  => GLuint -- ^ @state@.
+  -> GLenum -- ^ @mode@.
+  -> m ()
+glStateCaptureNV v1 v2 = liftIO $ dyn16 ptr_glStateCaptureNV v1 v2
+
+{-# NOINLINE ptr_glStateCaptureNV #-}
+ptr_glStateCaptureNV :: FunPtr (GLuint -> GLenum -> IO ())
+ptr_glStateCaptureNV = unsafePerformIO $ getCommand "glStateCaptureNV"
+
+-- glStencilClearTagEXT --------------------------------------------------------
+
+glStencilClearTagEXT
+  :: MonadIO m
+  => GLsizei -- ^ @stencilTagBits@.
+  -> GLuint -- ^ @stencilClearTag@.
+  -> m ()
+glStencilClearTagEXT v1 v2 = liftIO $ dyn736 ptr_glStencilClearTagEXT v1 v2
+
+{-# NOINLINE ptr_glStencilClearTagEXT #-}
+ptr_glStencilClearTagEXT :: FunPtr (GLsizei -> GLuint -> IO ())
+ptr_glStencilClearTagEXT = unsafePerformIO $ getCommand "glStencilClearTagEXT"
+
+-- glStencilFillPathInstancedNV ------------------------------------------------
+
+glStencilFillPathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
+  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
+  -> GLuint -- ^ @pathBase@ of type @Path@.
+  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
+  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
+  -> m ()
+glStencilFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn737 ptr_glStencilFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glStencilFillPathInstancedNV #-}
+ptr_glStencilFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilFillPathInstancedNV"
+
+-- glStencilFillPathNV ---------------------------------------------------------
+
+glStencilFillPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilFillPathNV v1 v2 v3 = liftIO $ dyn738 ptr_glStencilFillPathNV v1 v2 v3
+
+{-# NOINLINE ptr_glStencilFillPathNV #-}
+ptr_glStencilFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
+ptr_glStencilFillPathNV = unsafePerformIO $ getCommand "glStencilFillPathNV"
+
+-- glStencilFunc ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFunc.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFunc.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFunc.xhtml OpenGL 4.x>.
+glStencilFunc
+  :: MonadIO m
+  => GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
+  -> GLint -- ^ @ref@ of type @StencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilFunc v1 v2 v3 = liftIO $ dyn629 ptr_glStencilFunc v1 v2 v3
+
+{-# NOINLINE ptr_glStencilFunc #-}
+ptr_glStencilFunc :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
+ptr_glStencilFunc = unsafePerformIO $ getCommand "glStencilFunc"
+
+-- glStencilFuncSeparate -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFuncSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFuncSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFuncSeparate.xhtml OpenGL 4.x>.
+glStencilFuncSeparate
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
+  -> GLenum -- ^ @func@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
+  -> GLint -- ^ @ref@ of type @StencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilFuncSeparate v1 v2 v3 v4 = liftIO $ dyn739 ptr_glStencilFuncSeparate v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilFuncSeparate #-}
+ptr_glStencilFuncSeparate :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
+ptr_glStencilFuncSeparate = unsafePerformIO $ getCommand "glStencilFuncSeparate"
+
+-- glStencilFuncSeparateATI ----------------------------------------------------
+
+glStencilFuncSeparateATI
+  :: MonadIO m
+  => GLenum -- ^ @frontfunc@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
+  -> GLenum -- ^ @backfunc@ of type [StencilFunction](Graphics-GL-Groups.html#StencilFunction).
+  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilFuncSeparateATI v1 v2 v3 v4 = liftIO $ dyn739 ptr_glStencilFuncSeparateATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilFuncSeparateATI #-}
+ptr_glStencilFuncSeparateATI :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
+ptr_glStencilFuncSeparateATI = unsafePerformIO $ getCommand "glStencilFuncSeparateATI"
+
+-- glStencilMask ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMask.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMask.xhtml OpenGL 4.x>.
+glStencilMask
+  :: MonadIO m
+  => GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilMask v1 = liftIO $ dyn3 ptr_glStencilMask v1
+
+{-# NOINLINE ptr_glStencilMask #-}
+ptr_glStencilMask :: FunPtr (GLuint -> IO ())
+ptr_glStencilMask = unsafePerformIO $ getCommand "glStencilMask"
+
+-- glStencilMaskSeparate -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMaskSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMaskSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMaskSeparate.xhtml OpenGL 4.x>.
+glStencilMaskSeparate
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilMaskSeparate v1 v2 = liftIO $ dyn17 ptr_glStencilMaskSeparate v1 v2
+
+{-# NOINLINE ptr_glStencilMaskSeparate #-}
+ptr_glStencilMaskSeparate :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glStencilMaskSeparate = unsafePerformIO $ getCommand "glStencilMaskSeparate"
+
+-- glStencilOp -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOp.xhtml OpenGL 4.x>.
+glStencilOp
+  :: MonadIO m
+  => GLenum -- ^ @fail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @zfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @zpass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> m ()
+glStencilOp v1 v2 v3 = liftIO $ dyn740 ptr_glStencilOp v1 v2 v3
+
+{-# NOINLINE ptr_glStencilOp #-}
+ptr_glStencilOp :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
+ptr_glStencilOp = unsafePerformIO $ getCommand "glStencilOp"
+
+-- glStencilOpSeparate ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOpSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOpSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOpSeparate.xhtml OpenGL 4.x>.
+glStencilOpSeparate
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
+  -> GLenum -- ^ @sfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @dpfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @dppass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> m ()
+glStencilOpSeparate v1 v2 v3 v4 = liftIO $ dyn54 ptr_glStencilOpSeparate v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilOpSeparate #-}
+ptr_glStencilOpSeparate :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glStencilOpSeparate = unsafePerformIO $ getCommand "glStencilOpSeparate"
+
+-- glStencilOpSeparateATI ------------------------------------------------------
+
+-- | This command is an alias for 'glStencilOpSeparate'.
+glStencilOpSeparateATI
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
+  -> GLenum -- ^ @sfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @dpfail@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> GLenum -- ^ @dppass@ of type [StencilOp](Graphics-GL-Groups.html#StencilOp).
+  -> m ()
+glStencilOpSeparateATI v1 v2 v3 v4 = liftIO $ dyn54 ptr_glStencilOpSeparateATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilOpSeparateATI #-}
+ptr_glStencilOpSeparateATI :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glStencilOpSeparateATI = unsafePerformIO $ getCommand "glStencilOpSeparateATI"
+
+-- glStencilOpValueAMD ---------------------------------------------------------
+
+glStencilOpValueAMD
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
+  -> GLuint -- ^ @value@.
+  -> m ()
+glStencilOpValueAMD v1 v2 = liftIO $ dyn17 ptr_glStencilOpValueAMD v1 v2
+
+{-# NOINLINE ptr_glStencilOpValueAMD #-}
+ptr_glStencilOpValueAMD :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glStencilOpValueAMD = unsafePerformIO $ getCommand "glStencilOpValueAMD"
+
+-- glStencilStrokePathInstancedNV ----------------------------------------------
+
+glStencilStrokePathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
+  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
+  -> GLuint -- ^ @pathBase@ of type @Path@.
+  -> GLint -- ^ @reference@ of type @StencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
+  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
+  -> m ()
+glStencilStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn741 ptr_glStencilStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glStencilStrokePathInstancedNV #-}
+ptr_glStencilStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilStrokePathInstancedNV"
+
+-- glStencilStrokePathNV -------------------------------------------------------
+
+glStencilStrokePathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLint -- ^ @reference@ of type @StencilValue@.
+  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
+  -> m ()
+glStencilStrokePathNV v1 v2 v3 = liftIO $ dyn662 ptr_glStencilStrokePathNV v1 v2 v3
+
+{-# NOINLINE ptr_glStencilStrokePathNV #-}
+ptr_glStencilStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
+ptr_glStencilStrokePathNV = unsafePerformIO $ getCommand "glStencilStrokePathNV"
+
+-- glStencilThenCoverFillPathInstancedNV ---------------------------------------
+
+glStencilThenCoverFillPathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@.
+  -> Ptr a -- ^ @paths@.
+  -> GLuint -- ^ @pathBase@.
+  -> GLenum -- ^ @fillMode@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> GLenum -- ^ @transformType@.
+  -> Ptr GLfloat -- ^ @transformValues@.
+  -> m ()
+glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn742 ptr_glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glStencilThenCoverFillPathInstancedNV #-}
+ptr_glStencilThenCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilThenCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathInstancedNV"
+
+-- glStencilThenCoverFillPathNV ------------------------------------------------
+
+glStencilThenCoverFillPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@.
+  -> GLenum -- ^ @fillMode@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> m ()
+glStencilThenCoverFillPathNV v1 v2 v3 v4 = liftIO $ dyn743 ptr_glStencilThenCoverFillPathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilThenCoverFillPathNV #-}
+ptr_glStencilThenCoverFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
+ptr_glStencilThenCoverFillPathNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathNV"
+
+-- glStencilThenCoverStrokePathInstancedNV -------------------------------------
+
+glStencilThenCoverStrokePathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@.
+  -> Ptr a -- ^ @paths@.
+  -> GLuint -- ^ @pathBase@.
+  -> GLint -- ^ @reference@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> GLenum -- ^ @transformType@.
+  -> Ptr GLfloat -- ^ @transformValues@.
+  -> m ()
+glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn744 ptr_glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glStencilThenCoverStrokePathInstancedNV #-}
+ptr_glStencilThenCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilThenCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathInstancedNV"
+
+-- glStencilThenCoverStrokePathNV ----------------------------------------------
+
+glStencilThenCoverStrokePathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@.
+  -> GLint -- ^ @reference@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> m ()
+glStencilThenCoverStrokePathNV v1 v2 v3 v4 = liftIO $ dyn745 ptr_glStencilThenCoverStrokePathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilThenCoverStrokePathNV #-}
+ptr_glStencilThenCoverStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
+ptr_glStencilThenCoverStrokePathNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathNV"
+
+-- glStopInstrumentsSGIX -------------------------------------------------------
+
+glStopInstrumentsSGIX
+  :: MonadIO m
+  => GLint -- ^ @marker@.
+  -> m ()
+glStopInstrumentsSGIX v1 = liftIO $ dyn13 ptr_glStopInstrumentsSGIX v1
+
+{-# NOINLINE ptr_glStopInstrumentsSGIX #-}
+ptr_glStopInstrumentsSGIX :: FunPtr (GLint -> IO ())
+ptr_glStopInstrumentsSGIX = unsafePerformIO $ getCommand "glStopInstrumentsSGIX"
+
+-- glStringMarkerGREMEDY -------------------------------------------------------
+
+glStringMarkerGREMEDY
+  :: MonadIO m
+  => GLsizei -- ^ @len@.
+  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
+  -> m ()
+glStringMarkerGREMEDY v1 v2 = liftIO $ dyn264 ptr_glStringMarkerGREMEDY v1 v2
+
+{-# NOINLINE ptr_glStringMarkerGREMEDY #-}
+ptr_glStringMarkerGREMEDY :: FunPtr (GLsizei -> Ptr a -> IO ())
+ptr_glStringMarkerGREMEDY = unsafePerformIO $ getCommand "glStringMarkerGREMEDY"
+
+-- glSubpixelPrecisionBiasNV ---------------------------------------------------
+
+glSubpixelPrecisionBiasNV
+  :: MonadIO m
+  => GLuint -- ^ @xbits@.
+  -> GLuint -- ^ @ybits@.
+  -> m ()
+glSubpixelPrecisionBiasNV v1 v2 = liftIO $ dyn4 ptr_glSubpixelPrecisionBiasNV v1 v2
+
+{-# NOINLINE ptr_glSubpixelPrecisionBiasNV #-}
+ptr_glSubpixelPrecisionBiasNV :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glSubpixelPrecisionBiasNV = unsafePerformIO $ getCommand "glSubpixelPrecisionBiasNV"
+
+-- glSwizzleEXT ----------------------------------------------------------------
+
+glSwizzleEXT
+  :: MonadIO m
+  => GLuint -- ^ @res@.
+  -> GLuint -- ^ @in@.
+  -> GLenum -- ^ @outX@ of type @VertexShaderCoordOutEXT@.
+  -> GLenum -- ^ @outY@ of type @VertexShaderCoordOutEXT@.
+  -> GLenum -- ^ @outZ@ of type @VertexShaderCoordOutEXT@.
+  -> GLenum -- ^ @outW@ of type @VertexShaderCoordOutEXT@.
+  -> m ()
+glSwizzleEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn746 ptr_glSwizzleEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glSwizzleEXT #-}
+ptr_glSwizzleEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glSwizzleEXT = unsafePerformIO $ getCommand "glSwizzleEXT"
+
+-- glSyncTextureINTEL ----------------------------------------------------------
+
+glSyncTextureINTEL
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> m ()
+glSyncTextureINTEL v1 = liftIO $ dyn3 ptr_glSyncTextureINTEL v1
+
+{-# NOINLINE ptr_glSyncTextureINTEL #-}
+ptr_glSyncTextureINTEL :: FunPtr (GLuint -> IO ())
+ptr_glSyncTextureINTEL = unsafePerformIO $ getCommand "glSyncTextureINTEL"
+
+-- glTagSampleBufferSGIX -------------------------------------------------------
+
+glTagSampleBufferSGIX
+  :: MonadIO m
+  => m ()
+glTagSampleBufferSGIX = liftIO $ dyn11 ptr_glTagSampleBufferSGIX
+
+{-# NOINLINE ptr_glTagSampleBufferSGIX #-}
+ptr_glTagSampleBufferSGIX :: FunPtr (IO ())
+ptr_glTagSampleBufferSGIX = unsafePerformIO $ getCommand "glTagSampleBufferSGIX"
+
+-- glTangent3bEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTangent3bvEXT'.
+glTangent3bEXT
+  :: MonadIO m
+  => GLbyte -- ^ @tx@.
+  -> GLbyte -- ^ @ty@.
+  -> GLbyte -- ^ @tz@.
+  -> m ()
+glTangent3bEXT v1 v2 v3 = liftIO $ dyn37 ptr_glTangent3bEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangent3bEXT #-}
+ptr_glTangent3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glTangent3bEXT = unsafePerformIO $ getCommand "glTangent3bEXT"
+
+-- glTangent3bvEXT -------------------------------------------------------------
+
+glTangent3bvEXT
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glTangent3bvEXT v1 = liftIO $ dyn38 ptr_glTangent3bvEXT v1
+
+{-# NOINLINE ptr_glTangent3bvEXT #-}
+ptr_glTangent3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glTangent3bvEXT = unsafePerformIO $ getCommand "glTangent3bvEXT"
+
+-- glTangent3dEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTangent3dvEXT'.
+glTangent3dEXT
+  :: MonadIO m
+  => GLdouble -- ^ @tx@ of type @CoordD@.
+  -> GLdouble -- ^ @ty@ of type @CoordD@.
+  -> GLdouble -- ^ @tz@ of type @CoordD@.
+  -> m ()
+glTangent3dEXT v1 v2 v3 = liftIO $ dyn39 ptr_glTangent3dEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangent3dEXT #-}
+ptr_glTangent3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glTangent3dEXT = unsafePerformIO $ getCommand "glTangent3dEXT"
+
+-- glTangent3dvEXT -------------------------------------------------------------
+
+glTangent3dvEXT
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glTangent3dvEXT v1 = liftIO $ dyn40 ptr_glTangent3dvEXT v1
+
+{-# NOINLINE ptr_glTangent3dvEXT #-}
+ptr_glTangent3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glTangent3dvEXT = unsafePerformIO $ getCommand "glTangent3dvEXT"
+
+-- glTangent3fEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTangent3fvEXT'.
+glTangent3fEXT
+  :: MonadIO m
+  => GLfloat -- ^ @tx@ of type @CoordF@.
+  -> GLfloat -- ^ @ty@ of type @CoordF@.
+  -> GLfloat -- ^ @tz@ of type @CoordF@.
+  -> m ()
+glTangent3fEXT v1 v2 v3 = liftIO $ dyn41 ptr_glTangent3fEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangent3fEXT #-}
+ptr_glTangent3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTangent3fEXT = unsafePerformIO $ getCommand "glTangent3fEXT"
+
+-- glTangent3fvEXT -------------------------------------------------------------
+
+glTangent3fvEXT
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glTangent3fvEXT v1 = liftIO $ dyn42 ptr_glTangent3fvEXT v1
+
+{-# NOINLINE ptr_glTangent3fvEXT #-}
+ptr_glTangent3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glTangent3fvEXT = unsafePerformIO $ getCommand "glTangent3fvEXT"
+
+-- glTangent3iEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTangent3ivEXT'.
+glTangent3iEXT
+  :: MonadIO m
+  => GLint -- ^ @tx@.
+  -> GLint -- ^ @ty@.
+  -> GLint -- ^ @tz@.
+  -> m ()
+glTangent3iEXT v1 v2 v3 = liftIO $ dyn43 ptr_glTangent3iEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangent3iEXT #-}
+ptr_glTangent3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glTangent3iEXT = unsafePerformIO $ getCommand "glTangent3iEXT"
+
+-- glTangent3ivEXT -------------------------------------------------------------
+
+glTangent3ivEXT
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glTangent3ivEXT v1 = liftIO $ dyn44 ptr_glTangent3ivEXT v1
+
+{-# NOINLINE ptr_glTangent3ivEXT #-}
+ptr_glTangent3ivEXT :: FunPtr (Ptr GLint -> IO ())
+ptr_glTangent3ivEXT = unsafePerformIO $ getCommand "glTangent3ivEXT"
+
+-- glTangent3sEXT --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTangent3svEXT'.
+glTangent3sEXT
+  :: MonadIO m
+  => GLshort -- ^ @tx@.
+  -> GLshort -- ^ @ty@.
+  -> GLshort -- ^ @tz@.
+  -> m ()
+glTangent3sEXT v1 v2 v3 = liftIO $ dyn45 ptr_glTangent3sEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangent3sEXT #-}
+ptr_glTangent3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glTangent3sEXT = unsafePerformIO $ getCommand "glTangent3sEXT"
+
+-- glTangent3svEXT -------------------------------------------------------------
+
+glTangent3svEXT
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glTangent3svEXT v1 = liftIO $ dyn46 ptr_glTangent3svEXT v1
+
+{-# NOINLINE ptr_glTangent3svEXT #-}
+ptr_glTangent3svEXT :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTangent3svEXT = unsafePerformIO $ getCommand "glTangent3svEXT"
+
+-- glTangentPointerEXT ---------------------------------------------------------
+
+glTangentPointerEXT
+  :: MonadIO m
+  => GLenum -- ^ @type@ of type @TangentPointerTypeEXT@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glTangentPointerEXT v1 v2 v3 = liftIO $ dyn47 ptr_glTangentPointerEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTangentPointerEXT #-}
+ptr_glTangentPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glTangentPointerEXT = unsafePerformIO $ getCommand "glTangentPointerEXT"
+
+-- glTbufferMask3DFX -----------------------------------------------------------
+
+glTbufferMask3DFX
+  :: MonadIO m
+  => GLuint -- ^ @mask@.
+  -> m ()
+glTbufferMask3DFX v1 = liftIO $ dyn3 ptr_glTbufferMask3DFX v1
+
+{-# NOINLINE ptr_glTbufferMask3DFX #-}
+ptr_glTbufferMask3DFX :: FunPtr (GLuint -> IO ())
+ptr_glTbufferMask3DFX = unsafePerformIO $ getCommand "glTbufferMask3DFX"
+
+-- glTessellationFactorAMD -----------------------------------------------------
+
+glTessellationFactorAMD
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> m ()
+glTessellationFactorAMD v1 = liftIO $ dyn82 ptr_glTessellationFactorAMD v1
+
+{-# NOINLINE ptr_glTessellationFactorAMD #-}
+ptr_glTessellationFactorAMD :: FunPtr (GLfloat -> IO ())
+ptr_glTessellationFactorAMD = unsafePerformIO $ getCommand "glTessellationFactorAMD"
+
+-- glTessellationModeAMD -------------------------------------------------------
+
+glTessellationModeAMD
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> m ()
+glTessellationModeAMD v1 = liftIO $ dyn5 ptr_glTessellationModeAMD v1
+
+{-# NOINLINE ptr_glTessellationModeAMD #-}
+ptr_glTessellationModeAMD :: FunPtr (GLenum -> IO ())
+ptr_glTessellationModeAMD = unsafePerformIO $ getCommand "glTessellationModeAMD"
+
+-- glTestFenceAPPLE ------------------------------------------------------------
+
+glTestFenceAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glTestFenceAPPLE v1 = liftIO $ dyn277 ptr_glTestFenceAPPLE v1
+
+{-# NOINLINE ptr_glTestFenceAPPLE #-}
+ptr_glTestFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
+ptr_glTestFenceAPPLE = unsafePerformIO $ getCommand "glTestFenceAPPLE"
+
+-- glTestFenceNV ---------------------------------------------------------------
+
+glTestFenceNV
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glTestFenceNV v1 = liftIO $ dyn277 ptr_glTestFenceNV v1
+
+{-# NOINLINE ptr_glTestFenceNV #-}
+ptr_glTestFenceNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glTestFenceNV = unsafePerformIO $ getCommand "glTestFenceNV"
+
+-- glTestObjectAPPLE -----------------------------------------------------------
+
+glTestObjectAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
+  -> GLuint -- ^ @name@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glTestObjectAPPLE v1 v2 = liftIO $ dyn493 ptr_glTestObjectAPPLE v1 v2
+
+{-# NOINLINE ptr_glTestObjectAPPLE #-}
+ptr_glTestObjectAPPLE :: FunPtr (GLenum -> GLuint -> IO GLboolean)
+ptr_glTestObjectAPPLE = unsafePerformIO $ getCommand "glTestObjectAPPLE"
+
+-- glTexBuffer -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
+glTexBuffer
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTexBuffer v1 v2 v3 = liftIO $ dyn30 ptr_glTexBuffer v1 v2 v3
+
+{-# NOINLINE ptr_glTexBuffer #-}
+ptr_glTexBuffer :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glTexBuffer = unsafePerformIO $ getCommand "glTexBuffer"
+
+-- glTexBufferARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glTexBuffer'.
+glTexBufferARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTexBufferARB v1 v2 v3 = liftIO $ dyn30 ptr_glTexBufferARB v1 v2 v3
+
+{-# NOINLINE ptr_glTexBufferARB #-}
+ptr_glTexBufferARB :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glTexBufferARB = unsafePerformIO $ getCommand "glTexBufferARB"
+
+-- glTexBufferEXT --------------------------------------------------------------
+
+-- | This command is an alias for 'glTexBuffer'.
+glTexBufferEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTexBufferEXT v1 v2 v3 = liftIO $ dyn30 ptr_glTexBufferEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTexBufferEXT #-}
+ptr_glTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glTexBufferEXT = unsafePerformIO $ getCommand "glTexBufferEXT"
+
+-- glTexBufferOES --------------------------------------------------------------
+
+-- | This command is an alias for 'glTexBuffer'.
+glTexBufferOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTexBufferOES v1 v2 v3 = liftIO $ dyn30 ptr_glTexBufferOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexBufferOES #-}
+ptr_glTexBufferOES :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
+ptr_glTexBufferOES = unsafePerformIO $ getCommand "glTexBufferOES"
+
+-- glTexBufferRange ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>.
+glTexBufferRange
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTexBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn747 ptr_glTexBufferRange v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexBufferRange #-}
+ptr_glTexBufferRange :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTexBufferRange = unsafePerformIO $ getCommand "glTexBufferRange"
+
+-- glTexBufferRangeEXT ---------------------------------------------------------
+
+-- | This command is an alias for 'glTexBufferRange'.
+glTexBufferRangeEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTexBufferRangeEXT v1 v2 v3 v4 v5 = liftIO $ dyn747 ptr_glTexBufferRangeEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexBufferRangeEXT #-}
+ptr_glTexBufferRangeEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTexBufferRangeEXT = unsafePerformIO $ getCommand "glTexBufferRangeEXT"
+
+-- glTexBufferRangeOES ---------------------------------------------------------
+
+-- | This command is an alias for 'glTexBufferRange'.
+glTexBufferRangeOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTexBufferRangeOES v1 v2 v3 v4 v5 = liftIO $ dyn747 ptr_glTexBufferRangeOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexBufferRangeOES #-}
+ptr_glTexBufferRangeOES :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTexBufferRangeOES = unsafePerformIO $ getCommand "glTexBufferRangeOES"
+
+-- glTexBumpParameterfvATI -----------------------------------------------------
+
+glTexBumpParameterfvATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
+  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glTexBumpParameterfvATI v1 v2 = liftIO $ dyn97 ptr_glTexBumpParameterfvATI v1 v2
+
+{-# NOINLINE ptr_glTexBumpParameterfvATI #-}
+ptr_glTexBumpParameterfvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glTexBumpParameterfvATI = unsafePerformIO $ getCommand "glTexBumpParameterfvATI"
+
+-- glTexBumpParameterivATI -----------------------------------------------------
+
+glTexBumpParameterivATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
+  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glTexBumpParameterivATI v1 v2 = liftIO $ dyn139 ptr_glTexBumpParameterivATI v1 v2
+
+{-# NOINLINE ptr_glTexBumpParameterivATI #-}
+ptr_glTexBumpParameterivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glTexBumpParameterivATI = unsafePerformIO $ getCommand "glTexBumpParameterivATI"
+
+-- glTexCoord1bOES -------------------------------------------------------------
+
+glTexCoord1bOES
+  :: MonadIO m
+  => GLbyte -- ^ @s@.
+  -> m ()
+glTexCoord1bOES v1 = liftIO $ dyn474 ptr_glTexCoord1bOES v1
+
+{-# NOINLINE ptr_glTexCoord1bOES #-}
+ptr_glTexCoord1bOES :: FunPtr (GLbyte -> IO ())
+ptr_glTexCoord1bOES = unsafePerformIO $ getCommand "glTexCoord1bOES"
+
+-- glTexCoord1bvOES ------------------------------------------------------------
+
+glTexCoord1bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @1@ element of type @GLbyte@.
+  -> m ()
+glTexCoord1bvOES v1 = liftIO $ dyn38 ptr_glTexCoord1bvOES v1
+
+{-# NOINLINE ptr_glTexCoord1bvOES #-}
+ptr_glTexCoord1bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glTexCoord1bvOES = unsafePerformIO $ getCommand "glTexCoord1bvOES"
+
+-- glTexCoord1d ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1dv'.
+glTexCoord1d
+  :: MonadIO m
+  => GLdouble -- ^ @s@ of type @CoordD@.
+  -> m ()
+glTexCoord1d v1 = liftIO $ dyn81 ptr_glTexCoord1d v1
+
+{-# NOINLINE ptr_glTexCoord1d #-}
+ptr_glTexCoord1d :: FunPtr (GLdouble -> IO ())
+ptr_glTexCoord1d = unsafePerformIO $ getCommand "glTexCoord1d"
 
diff --git a/src/Graphics/GL/Functions/F25.hs b/src/Graphics/GL/Functions/F25.hs
--- a/src/Graphics/GL/Functions/F25.hs
+++ b/src/Graphics/GL/Functions/F25.hs
@@ -15,1717 +15,1535 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F25 (
-  glTexCoord4bOES,
-  glTexCoord4bvOES,
-  glTexCoord4d,
-  glTexCoord4dv,
-  glTexCoord4f,
-  glTexCoord4fColor4fNormal3fVertex4fSUN,
-  glTexCoord4fColor4fNormal3fVertex4fvSUN,
-  glTexCoord4fVertex4fSUN,
-  glTexCoord4fVertex4fvSUN,
-  glTexCoord4fv,
-  glTexCoord4hNV,
-  glTexCoord4hvNV,
-  glTexCoord4i,
-  glTexCoord4iv,
-  glTexCoord4s,
-  glTexCoord4sv,
-  glTexCoord4xOES,
-  glTexCoord4xvOES,
-  glTexCoordFormatNV,
-  glTexCoordP1ui,
-  glTexCoordP1uiv,
-  glTexCoordP2ui,
-  glTexCoordP2uiv,
-  glTexCoordP3ui,
-  glTexCoordP3uiv,
-  glTexCoordP4ui,
-  glTexCoordP4uiv,
-  glTexCoordPointer,
-  glTexCoordPointerEXT,
-  glTexCoordPointerListIBM,
-  glTexCoordPointervINTEL,
-  glTexEnvf,
-  glTexEnvfv,
-  glTexEnvi,
-  glTexEnviv,
-  glTexEnvx,
-  glTexEnvxOES,
-  glTexEnvxv,
-  glTexEnvxvOES,
-  glTexFilterFuncSGIS,
-  glTexGend,
-  glTexGendv,
-  glTexGenf,
-  glTexGenfOES,
-  glTexGenfv,
-  glTexGenfvOES,
-  glTexGeni,
-  glTexGeniOES,
-  glTexGeniv,
-  glTexGenivOES,
-  glTexGenxOES,
-  glTexGenxvOES,
-  glTexImage1D,
-  glTexImage2D,
-  glTexImage2DMultisample,
-  glTexImage2DMultisampleCoverageNV,
-  glTexImage3D,
-  glTexImage3DEXT,
-  glTexImage3DMultisample,
-  glTexImage3DMultisampleCoverageNV,
-  glTexImage3DOES,
-  glTexImage4DSGIS,
-  glTexPageCommitmentARB,
-  glTexPageCommitmentEXT,
-  glTexParameterIiv,
-  glTexParameterIivEXT,
-  glTexParameterIivOES,
-  glTexParameterIuiv,
-  glTexParameterIuivEXT,
-  glTexParameterIuivOES,
-  glTexParameterf,
-  glTexParameterfv,
-  glTexParameteri,
-  glTexParameteriv,
-  glTexParameterx,
-  glTexParameterxOES,
-  glTexParameterxv,
-  glTexParameterxvOES,
-  glTexRenderbufferNV,
-  glTexStorage1D,
-  glTexStorage1DEXT,
-  glTexStorage2D,
-  glTexStorage2DEXT,
-  glTexStorage2DMultisample,
-  glTexStorage3D,
-  glTexStorage3DEXT,
-  glTexStorage3DMultisample,
-  glTexStorage3DMultisampleOES,
-  glTexStorageSparseAMD,
-  glTexSubImage1D,
-  glTexSubImage1DEXT,
-  glTexSubImage2D,
-  glTexSubImage2DEXT,
-  glTexSubImage3D,
-  glTexSubImage3DEXT,
-  glTexSubImage3DOES,
-  glTexSubImage4DSGIS,
-  glTextureBarrier,
-  glTextureBarrierNV,
-  glTextureBuffer
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glTexCoord4bOES -------------------------------------------------------------
-
-glTexCoord4bOES
-  :: MonadIO m
-  => GLbyte -- ^ @s@.
-  -> GLbyte -- ^ @t@.
-  -> GLbyte -- ^ @r@.
-  -> GLbyte -- ^ @q@.
-  -> m ()
-glTexCoord4bOES v1 v2 v3 v4 = liftIO $ dyn108 ptr_glTexCoord4bOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4bOES #-}
-ptr_glTexCoord4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glTexCoord4bOES = unsafePerformIO $ getCommand "glTexCoord4bOES"
-
--- glTexCoord4bvOES ------------------------------------------------------------
-
-glTexCoord4bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glTexCoord4bvOES v1 = liftIO $ dyn37 ptr_glTexCoord4bvOES v1
-
-{-# NOINLINE ptr_glTexCoord4bvOES #-}
-ptr_glTexCoord4bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glTexCoord4bvOES = unsafePerformIO $ getCommand "glTexCoord4bvOES"
-
--- glTexCoord4d ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4dv'.
-glTexCoord4d
-  :: MonadIO m
-  => GLdouble -- ^ @s@ of type @CoordD@.
-  -> GLdouble -- ^ @t@ of type @CoordD@.
-  -> GLdouble -- ^ @r@ of type @CoordD@.
-  -> GLdouble -- ^ @q@ of type @CoordD@.
-  -> m ()
-glTexCoord4d v1 v2 v3 v4 = liftIO $ dyn109 ptr_glTexCoord4d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4d #-}
-ptr_glTexCoord4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glTexCoord4d = unsafePerformIO $ getCommand "glTexCoord4d"
-
--- glTexCoord4dv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glTexCoord4dv v1 = liftIO $ dyn39 ptr_glTexCoord4dv v1
-
-{-# NOINLINE ptr_glTexCoord4dv #-}
-ptr_glTexCoord4dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glTexCoord4dv = unsafePerformIO $ getCommand "glTexCoord4dv"
-
--- glTexCoord4f ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4fv'.
-glTexCoord4f
-  :: MonadIO m
-  => GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> GLfloat -- ^ @r@ of type @CoordF@.
-  -> GLfloat -- ^ @q@ of type @CoordF@.
-  -> m ()
-glTexCoord4f v1 v2 v3 v4 = liftIO $ dyn49 ptr_glTexCoord4f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4f #-}
-ptr_glTexCoord4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord4f = unsafePerformIO $ getCommand "glTexCoord4f"
-
--- glTexCoord4fColor4fNormal3fVertex4fSUN --------------------------------------
-
-glTexCoord4fColor4fNormal3fVertex4fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @p@.
-  -> GLfloat -- ^ @q@.
-  -> GLfloat -- ^ @r@.
-  -> GLfloat -- ^ @g@.
-  -> GLfloat -- ^ @b@.
-  -> GLfloat -- ^ @a@.
-  -> GLfloat -- ^ @nx@.
-  -> GLfloat -- ^ @ny@.
-  -> GLfloat -- ^ @nz@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glTexCoord4fColor4fNormal3fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn731 ptr_glTexCoord4fColor4fNormal3fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
-
-{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fSUN #-}
-ptr_glTexCoord4fColor4fNormal3fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord4fColor4fNormal3fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fSUN"
-
--- glTexCoord4fColor4fNormal3fVertex4fvSUN -------------------------------------
-
-glTexCoord4fColor4fNormal3fVertex4fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord4fColor4fNormal3fVertex4fvSUN v1 v2 v3 v4 = liftIO $ dyn727 ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN #-}
-ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fvSUN"
-
--- glTexCoord4fVertex4fSUN -----------------------------------------------------
-
-glTexCoord4fVertex4fSUN
-  :: MonadIO m
-  => GLfloat -- ^ @s@.
-  -> GLfloat -- ^ @t@.
-  -> GLfloat -- ^ @p@.
-  -> GLfloat -- ^ @q@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glTexCoord4fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn616 ptr_glTexCoord4fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTexCoord4fVertex4fSUN #-}
-ptr_glTexCoord4fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTexCoord4fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fSUN"
-
--- glTexCoord4fVertex4fvSUN ----------------------------------------------------
-
-glTexCoord4fVertex4fvSUN
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glTexCoord4fVertex4fvSUN v1 v2 = liftIO $ dyn97 ptr_glTexCoord4fVertex4fvSUN v1 v2
-
-{-# NOINLINE ptr_glTexCoord4fVertex4fvSUN #-}
-ptr_glTexCoord4fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
-ptr_glTexCoord4fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fvSUN"
-
--- glTexCoord4fv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glTexCoord4fv v1 = liftIO $ dyn41 ptr_glTexCoord4fv v1
-
-{-# NOINLINE ptr_glTexCoord4fv #-}
-ptr_glTexCoord4fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glTexCoord4fv = unsafePerformIO $ getCommand "glTexCoord4fv"
-
--- glTexCoord4hNV --------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTexCoord4hvNV'.
-glTexCoord4hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @s@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
-  -> m ()
-glTexCoord4hNV v1 v2 v3 v4 = liftIO $ dyn112 ptr_glTexCoord4hNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4hNV #-}
-ptr_glTexCoord4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glTexCoord4hNV = unsafePerformIO $ getCommand "glTexCoord4hNV"
-
--- glTexCoord4hvNV -------------------------------------------------------------
-
-glTexCoord4hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
-  -> m ()
-glTexCoord4hvNV v1 = liftIO $ dyn99 ptr_glTexCoord4hvNV v1
-
-{-# NOINLINE ptr_glTexCoord4hvNV #-}
-ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glTexCoord4hvNV = unsafePerformIO $ getCommand "glTexCoord4hvNV"
-
--- glTexCoord4i ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4iv'.
-glTexCoord4i
-  :: MonadIO m
-  => GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> GLint -- ^ @q@ of type @CoordI@.
-  -> m ()
-glTexCoord4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glTexCoord4i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4i #-}
-ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glTexCoord4i = unsafePerformIO $ getCommand "glTexCoord4i"
-
--- glTexCoord4iv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glTexCoord4iv v1 = liftIO $ dyn43 ptr_glTexCoord4iv v1
-
-{-# NOINLINE ptr_glTexCoord4iv #-}
-ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glTexCoord4iv = unsafePerformIO $ getCommand "glTexCoord4iv"
-
--- glTexCoord4s ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4sv'.
-glTexCoord4s
-  :: MonadIO m
-  => GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> GLshort -- ^ @q@ of type @CoordS@.
-  -> m ()
-glTexCoord4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glTexCoord4s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4s #-}
-ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glTexCoord4s = unsafePerformIO $ getCommand "glTexCoord4s"
-
--- glTexCoord4sv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glTexCoord4sv v1 = liftIO $ dyn45 ptr_glTexCoord4sv v1
-
-{-# NOINLINE ptr_glTexCoord4sv #-}
-ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTexCoord4sv = unsafePerformIO $ getCommand "glTexCoord4sv"
-
--- glTexCoord4xOES -------------------------------------------------------------
-
-glTexCoord4xOES
-  :: MonadIO m
-  => GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @q@.
-  -> m ()
-glTexCoord4xOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glTexCoord4xOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4xOES #-}
-ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glTexCoord4xOES = unsafePerformIO $ getCommand "glTexCoord4xOES"
-
--- glTexCoord4xvOES ------------------------------------------------------------
-
-glTexCoord4xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
-  -> m ()
-glTexCoord4xvOES v1 = liftIO $ dyn107 ptr_glTexCoord4xvOES v1
-
-{-# NOINLINE ptr_glTexCoord4xvOES #-}
-ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glTexCoord4xvOES = unsafePerformIO $ getCommand "glTexCoord4xvOES"
-
--- glTexCoordFormatNV ----------------------------------------------------------
-
-glTexCoordFormatNV
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glTexCoordFormatNV v1 v2 v3 = liftIO $ dyn119 ptr_glTexCoordFormatNV v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoordFormatNV #-}
-ptr_glTexCoordFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
-ptr_glTexCoordFormatNV = unsafePerformIO $ getCommand "glTexCoordFormatNV"
-
--- glTexCoordP1ui --------------------------------------------------------------
-
-glTexCoordP1ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glTexCoordP1ui v1 v2 = liftIO $ dyn16 ptr_glTexCoordP1ui v1 v2
-
-{-# NOINLINE ptr_glTexCoordP1ui #-}
-ptr_glTexCoordP1ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glTexCoordP1ui = unsafePerformIO $ getCommand "glTexCoordP1ui"
-
--- glTexCoordP1uiv -------------------------------------------------------------
-
-glTexCoordP1uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glTexCoordP1uiv v1 v2 = liftIO $ dyn125 ptr_glTexCoordP1uiv v1 v2
-
-{-# NOINLINE ptr_glTexCoordP1uiv #-}
-ptr_glTexCoordP1uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glTexCoordP1uiv = unsafePerformIO $ getCommand "glTexCoordP1uiv"
-
--- glTexCoordP2ui --------------------------------------------------------------
-
-glTexCoordP2ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glTexCoordP2ui v1 v2 = liftIO $ dyn16 ptr_glTexCoordP2ui v1 v2
-
-{-# NOINLINE ptr_glTexCoordP2ui #-}
-ptr_glTexCoordP2ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glTexCoordP2ui = unsafePerformIO $ getCommand "glTexCoordP2ui"
-
--- glTexCoordP2uiv -------------------------------------------------------------
-
-glTexCoordP2uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glTexCoordP2uiv v1 v2 = liftIO $ dyn125 ptr_glTexCoordP2uiv v1 v2
-
-{-# NOINLINE ptr_glTexCoordP2uiv #-}
-ptr_glTexCoordP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glTexCoordP2uiv = unsafePerformIO $ getCommand "glTexCoordP2uiv"
-
--- glTexCoordP3ui --------------------------------------------------------------
-
-glTexCoordP3ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glTexCoordP3ui v1 v2 = liftIO $ dyn16 ptr_glTexCoordP3ui v1 v2
-
-{-# NOINLINE ptr_glTexCoordP3ui #-}
-ptr_glTexCoordP3ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glTexCoordP3ui = unsafePerformIO $ getCommand "glTexCoordP3ui"
-
--- glTexCoordP3uiv -------------------------------------------------------------
-
-glTexCoordP3uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glTexCoordP3uiv v1 v2 = liftIO $ dyn125 ptr_glTexCoordP3uiv v1 v2
-
-{-# NOINLINE ptr_glTexCoordP3uiv #-}
-ptr_glTexCoordP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glTexCoordP3uiv = unsafePerformIO $ getCommand "glTexCoordP3uiv"
-
--- glTexCoordP4ui --------------------------------------------------------------
-
-glTexCoordP4ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @coords@.
-  -> m ()
-glTexCoordP4ui v1 v2 = liftIO $ dyn16 ptr_glTexCoordP4ui v1 v2
-
-{-# NOINLINE ptr_glTexCoordP4ui #-}
-ptr_glTexCoordP4ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glTexCoordP4ui = unsafePerformIO $ getCommand "glTexCoordP4ui"
-
--- glTexCoordP4uiv -------------------------------------------------------------
-
-glTexCoordP4uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glTexCoordP4uiv v1 v2 = liftIO $ dyn125 ptr_glTexCoordP4uiv v1 v2
-
-{-# NOINLINE ptr_glTexCoordP4uiv #-}
-ptr_glTexCoordP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glTexCoordP4uiv = unsafePerformIO $ getCommand "glTexCoordP4uiv"
-
--- glTexCoordPointer -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoordPointer.xml OpenGL 2.x>.
-glTexCoordPointer
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glTexCoordPointer v1 v2 v3 v4 = liftIO $ dyn126 ptr_glTexCoordPointer v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoordPointer #-}
-ptr_glTexCoordPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glTexCoordPointer = unsafePerformIO $ getCommand "glTexCoordPointer"
-
--- glTexCoordPointerEXT --------------------------------------------------------
-
-glTexCoordPointerEXT
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
-  -> m ()
-glTexCoordPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glTexCoordPointerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexCoordPointerEXT #-}
-ptr_glTexCoordPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
-ptr_glTexCoordPointerEXT = unsafePerformIO $ getCommand "glTexCoordPointerEXT"
-
--- glTexCoordPointerListIBM ----------------------------------------------------
-
-glTexCoordPointerListIBM
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLint -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glTexCoordPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn128 ptr_glTexCoordPointerListIBM v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexCoordPointerListIBM #-}
-ptr_glTexCoordPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-ptr_glTexCoordPointerListIBM = unsafePerformIO $ getCommand "glTexCoordPointerListIBM"
-
--- glTexCoordPointervINTEL -----------------------------------------------------
-
-glTexCoordPointervINTEL
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
-  -> m ()
-glTexCoordPointervINTEL v1 v2 v3 = liftIO $ dyn129 ptr_glTexCoordPointervINTEL v1 v2 v3
-
-{-# NOINLINE ptr_glTexCoordPointervINTEL #-}
-ptr_glTexCoordPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
-ptr_glTexCoordPointervINTEL = unsafePerformIO $ getCommand "glTexCoordPointervINTEL"
-
--- glTexEnvf -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
-glTexEnvf
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glTexEnvf v1 v2 v3 = liftIO $ dyn161 ptr_glTexEnvf v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvf #-}
-ptr_glTexEnvf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glTexEnvf = unsafePerformIO $ getCommand "glTexEnvf"
-
--- glTexEnvfv ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
-glTexEnvfv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glTexEnvfv v1 v2 v3 = liftIO $ dyn132 ptr_glTexEnvfv v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvfv #-}
-ptr_glTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTexEnvfv = unsafePerformIO $ getCommand "glTexEnvfv"
-
--- glTexEnvi -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
-glTexEnvi
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glTexEnvi v1 v2 v3 = liftIO $ dyn62 ptr_glTexEnvi v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvi #-}
-ptr_glTexEnvi :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glTexEnvi = unsafePerformIO $ getCommand "glTexEnvi"
-
--- glTexEnviv ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
-glTexEnviv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTexEnviv v1 v2 v3 = liftIO $ dyn133 ptr_glTexEnviv v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnviv #-}
-ptr_glTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexEnviv = unsafePerformIO $ getCommand "glTexEnviv"
-
--- glTexEnvx -------------------------------------------------------------------
-
-glTexEnvx
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glTexEnvx v1 v2 v3 = liftIO $ dyn162 ptr_glTexEnvx v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvx #-}
-ptr_glTexEnvx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glTexEnvx = unsafePerformIO $ getCommand "glTexEnvx"
-
--- glTexEnvxOES ----------------------------------------------------------------
-
-glTexEnvxOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glTexEnvxOES v1 v2 v3 = liftIO $ dyn162 ptr_glTexEnvxOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvxOES #-}
-ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glTexEnvxOES = unsafePerformIO $ getCommand "glTexEnvxOES"
-
--- glTexEnvxv ------------------------------------------------------------------
-
-glTexEnvxv
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexEnvxv v1 v2 v3 = liftIO $ dyn163 ptr_glTexEnvxv v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvxv #-}
-ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexEnvxv = unsafePerformIO $ getCommand "glTexEnvxv"
-
--- glTexEnvxvOES ---------------------------------------------------------------
-
-glTexEnvxvOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexEnvxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glTexEnvxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvxvOES #-}
-ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexEnvxvOES = unsafePerformIO $ getCommand "glTexEnvxvOES"
-
--- glTexFilterFuncSGIS ---------------------------------------------------------
-
-glTexFilterFuncSGIS
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @filter@ of type @TextureFilterSGIS@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLfloat -- ^ @weights@ pointing to @n@ elements of type @GLfloat@.
-  -> m ()
-glTexFilterFuncSGIS v1 v2 v3 v4 = liftIO $ dyn452 ptr_glTexFilterFuncSGIS v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexFilterFuncSGIS #-}
-ptr_glTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glTexFilterFuncSGIS = unsafePerformIO $ getCommand "glTexFilterFuncSGIS"
-
--- glTexGend -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGend
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLdouble -- ^ @param@.
-  -> m ()
-glTexGend v1 v2 v3 = liftIO $ dyn732 ptr_glTexGend v1 v2 v3
-
-{-# NOINLINE ptr_glTexGend #-}
-ptr_glTexGend :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
-ptr_glTexGend = unsafePerformIO $ getCommand "glTexGend"
-
--- glTexGendv ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGendv
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
-  -> m ()
-glTexGendv v1 v2 v3 = liftIO $ dyn355 ptr_glTexGendv v1 v2 v3
-
-{-# NOINLINE ptr_glTexGendv #-}
-ptr_glTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
-ptr_glTexGendv = unsafePerformIO $ getCommand "glTexGendv"
-
--- glTexGenf -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGenf
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glTexGenf v1 v2 v3 = liftIO $ dyn161 ptr_glTexGenf v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenf #-}
-ptr_glTexGenf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glTexGenf = unsafePerformIO $ getCommand "glTexGenf"
-
--- glTexGenfOES ----------------------------------------------------------------
-
-glTexGenfOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glTexGenfOES v1 v2 v3 = liftIO $ dyn161 ptr_glTexGenfOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenfOES #-}
-ptr_glTexGenfOES :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glTexGenfOES = unsafePerformIO $ getCommand "glTexGenfOES"
-
--- glTexGenfv ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGenfv
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glTexGenfv v1 v2 v3 = liftIO $ dyn132 ptr_glTexGenfv v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenfv #-}
-ptr_glTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTexGenfv = unsafePerformIO $ getCommand "glTexGenfv"
-
--- glTexGenfvOES ---------------------------------------------------------------
-
-glTexGenfvOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glTexGenfvOES v1 v2 v3 = liftIO $ dyn132 ptr_glTexGenfvOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenfvOES #-}
-ptr_glTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTexGenfvOES = unsafePerformIO $ getCommand "glTexGenfvOES"
-
--- glTexGeni -------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGeni
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glTexGeni v1 v2 v3 = liftIO $ dyn62 ptr_glTexGeni v1 v2 v3
-
-{-# NOINLINE ptr_glTexGeni #-}
-ptr_glTexGeni :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glTexGeni = unsafePerformIO $ getCommand "glTexGeni"
-
--- glTexGeniOES ----------------------------------------------------------------
-
-glTexGeniOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glTexGeniOES v1 v2 v3 = liftIO $ dyn62 ptr_glTexGeniOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGeniOES #-}
-ptr_glTexGeniOES :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glTexGeniOES = unsafePerformIO $ getCommand "glTexGeniOES"
-
--- glTexGeniv ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
-glTexGeniv
-  :: MonadIO m
-  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
-  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTexGeniv v1 v2 v3 = liftIO $ dyn133 ptr_glTexGeniv v1 v2 v3
-
-{-# NOINLINE ptr_glTexGeniv #-}
-ptr_glTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexGeniv = unsafePerformIO $ getCommand "glTexGeniv"
-
--- glTexGenivOES ---------------------------------------------------------------
-
-glTexGenivOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glTexGenivOES v1 v2 v3 = liftIO $ dyn133 ptr_glTexGenivOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenivOES #-}
-ptr_glTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexGenivOES = unsafePerformIO $ getCommand "glTexGenivOES"
-
--- glTexGenxOES ----------------------------------------------------------------
-
-glTexGenxOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glTexGenxOES v1 v2 v3 = liftIO $ dyn162 ptr_glTexGenxOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenxOES #-}
-ptr_glTexGenxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glTexGenxOES = unsafePerformIO $ getCommand "glTexGenxOES"
-
--- glTexGenxvOES ---------------------------------------------------------------
-
-glTexGenxvOES
-  :: MonadIO m
-  => GLenum -- ^ @coord@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexGenxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glTexGenxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexGenxvOES #-}
-ptr_glTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexGenxvOES = unsafePerformIO $ getCommand "glTexGenxvOES"
-
--- glTexImage1D ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage1D.xhtml OpenGL 4.x>.
-glTexImage1D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glTexImage1D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn733 ptr_glTexImage1D v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTexImage1D #-}
-ptr_glTexImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage1D = unsafePerformIO $ getCommand "glTexImage1D"
-
--- glTexImage2D ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2D.xhtml OpenGL 4.x>.
-glTexImage2D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn734 ptr_glTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexImage2D #-}
-ptr_glTexImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage2D = unsafePerformIO $ getCommand "glTexImage2D"
-
--- glTexImage2DMultisample -----------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2DMultisample.xhtml OpenGL 4.x>.
-glTexImage2DMultisample
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexImage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn735 ptr_glTexImage2DMultisample v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTexImage2DMultisample #-}
-ptr_glTexImage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexImage2DMultisample = unsafePerformIO $ getCommand "glTexImage2DMultisample"
-
--- glTexImage2DMultisampleCoverageNV -------------------------------------------
-
-glTexImage2DMultisampleCoverageNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn736 ptr_glTexImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexImage2DMultisampleCoverageNV #-}
-ptr_glTexImage2DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage2DMultisampleCoverageNV"
-
--- glTexImage3D ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3D.xhtml OpenGL 4.x>.
-glTexImage3D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn737 ptr_glTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glTexImage3D #-}
-ptr_glTexImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage3D = unsafePerformIO $ getCommand "glTexImage3D"
-
--- glTexImage3DEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glTexImage3D'.
-glTexImage3DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn738 ptr_glTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glTexImage3DEXT #-}
-ptr_glTexImage3DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage3DEXT = unsafePerformIO $ getCommand "glTexImage3DEXT"
-
--- glTexImage3DMultisample -----------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3DMultisample.xhtml OpenGL 4.x>.
-glTexImage3DMultisample
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexImage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn739 ptr_glTexImage3DMultisample v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexImage3DMultisample #-}
-ptr_glTexImage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexImage3DMultisample = unsafePerformIO $ getCommand "glTexImage3DMultisample"
-
--- glTexImage3DMultisampleCoverageNV -------------------------------------------
-
-glTexImage3DMultisampleCoverageNV
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn740 ptr_glTexImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTexImage3DMultisampleCoverageNV #-}
-ptr_glTexImage3DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage3DMultisampleCoverageNV"
-
--- glTexImage3DOES -------------------------------------------------------------
-
--- | This command is an alias for 'glTexImage3D'.
-glTexImage3DOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLint -- ^ @border@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn738 ptr_glTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glTexImage3DOES #-}
-ptr_glTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage3DOES = unsafePerformIO $ getCommand "glTexImage3DOES"
-
--- glTexImage4DSGIS ------------------------------------------------------------
-
-glTexImage4DSGIS
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLsizei -- ^ @size4d@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
-  -> m ()
-glTexImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn741 ptr_glTexImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTexImage4DSGIS #-}
-ptr_glTexImage4DSGIS :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexImage4DSGIS = unsafePerformIO $ getCommand "glTexImage4DSGIS"
-
--- glTexPageCommitmentARB ------------------------------------------------------
-
-glTexPageCommitmentARB
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glTexPageCommitmentARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn742 ptr_glTexPageCommitmentARB v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexPageCommitmentARB #-}
-ptr_glTexPageCommitmentARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexPageCommitmentARB = unsafePerformIO $ getCommand "glTexPageCommitmentARB"
-
--- glTexPageCommitmentEXT ------------------------------------------------------
-
--- | This command is an alias for 'glTexPageCommitmentARB'.
-glTexPageCommitmentEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glTexPageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn742 ptr_glTexPageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexPageCommitmentEXT #-}
-ptr_glTexPageCommitmentEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexPageCommitmentEXT = unsafePerformIO $ getCommand "glTexPageCommitmentEXT"
-
--- glTexParameterIiv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameterIiv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glTexParameterIiv v1 v2 v3 = liftIO $ dyn133 ptr_glTexParameterIiv v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIiv #-}
-ptr_glTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexParameterIiv = unsafePerformIO $ getCommand "glTexParameterIiv"
-
--- glTexParameterIivEXT --------------------------------------------------------
-
--- | This command is an alias for 'glTexParameterIiv'.
-glTexParameterIivEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glTexParameterIivEXT v1 v2 v3 = liftIO $ dyn133 ptr_glTexParameterIivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIivEXT #-}
-ptr_glTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexParameterIivEXT = unsafePerformIO $ getCommand "glTexParameterIivEXT"
-
--- glTexParameterIivOES --------------------------------------------------------
-
--- | This command is an alias for 'glTexParameterIiv'.
-glTexParameterIivOES
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glTexParameterIivOES v1 v2 v3 = liftIO $ dyn133 ptr_glTexParameterIivOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIivOES #-}
-ptr_glTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexParameterIivOES = unsafePerformIO $ getCommand "glTexParameterIivOES"
-
--- glTexParameterIuiv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameterIuiv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glTexParameterIuiv v1 v2 v3 = liftIO $ dyn415 ptr_glTexParameterIuiv v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIuiv #-}
-ptr_glTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTexParameterIuiv = unsafePerformIO $ getCommand "glTexParameterIuiv"
-
--- glTexParameterIuivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glTexParameterIuiv'.
-glTexParameterIuivEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glTexParameterIuivEXT v1 v2 v3 = liftIO $ dyn415 ptr_glTexParameterIuivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIuivEXT #-}
-ptr_glTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTexParameterIuivEXT = unsafePerformIO $ getCommand "glTexParameterIuivEXT"
-
--- glTexParameterIuivOES -------------------------------------------------------
-
--- | This command is an alias for 'glTexParameterIuiv'.
-glTexParameterIuivOES
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glTexParameterIuivOES v1 v2 v3 = liftIO $ dyn415 ptr_glTexParameterIuivOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterIuivOES #-}
-ptr_glTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTexParameterIuivOES = unsafePerformIO $ getCommand "glTexParameterIuivOES"
-
--- glTexParameterf -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameterf
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glTexParameterf v1 v2 v3 = liftIO $ dyn161 ptr_glTexParameterf v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterf #-}
-ptr_glTexParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glTexParameterf = unsafePerformIO $ getCommand "glTexParameterf"
-
--- glTexParameterfv ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameterfv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glTexParameterfv v1 v2 v3 = liftIO $ dyn132 ptr_glTexParameterfv v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterfv #-}
-ptr_glTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTexParameterfv = unsafePerformIO $ getCommand "glTexParameterfv"
-
--- glTexParameteri -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameteri
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glTexParameteri v1 v2 v3 = liftIO $ dyn62 ptr_glTexParameteri v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameteri #-}
-ptr_glTexParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
-ptr_glTexParameteri = unsafePerformIO $ getCommand "glTexParameteri"
-
--- glTexParameteriv ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTexParameteriv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTexParameteriv v1 v2 v3 = liftIO $ dyn133 ptr_glTexParameteriv v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameteriv #-}
-ptr_glTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTexParameteriv = unsafePerformIO $ getCommand "glTexParameteriv"
-
--- glTexParameterx -------------------------------------------------------------
-
-glTexParameterx
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glTexParameterx v1 v2 v3 = liftIO $ dyn162 ptr_glTexParameterx v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterx #-}
-ptr_glTexParameterx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glTexParameterx = unsafePerformIO $ getCommand "glTexParameterx"
-
--- glTexParameterxOES ----------------------------------------------------------
-
-glTexParameterxOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> GLfixed -- ^ @param@.
-  -> m ()
-glTexParameterxOES v1 v2 v3 = liftIO $ dyn162 ptr_glTexParameterxOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterxOES #-}
-ptr_glTexParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
-ptr_glTexParameterxOES = unsafePerformIO $ getCommand "glTexParameterxOES"
-
--- glTexParameterxv ------------------------------------------------------------
-
-glTexParameterxv
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexParameterxv v1 v2 v3 = liftIO $ dyn163 ptr_glTexParameterxv v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterxv #-}
-ptr_glTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexParameterxv = unsafePerformIO $ getCommand "glTexParameterxv"
-
--- glTexParameterxvOES ---------------------------------------------------------
-
-glTexParameterxvOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexParameterxvOES v1 v2 v3 = liftIO $ dyn163 ptr_glTexParameterxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexParameterxvOES #-}
-ptr_glTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexParameterxvOES = unsafePerformIO $ getCommand "glTexParameterxvOES"
-
--- glTexRenderbufferNV ---------------------------------------------------------
-
-glTexRenderbufferNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @renderbuffer@.
-  -> m ()
-glTexRenderbufferNV v1 v2 = liftIO $ dyn16 ptr_glTexRenderbufferNV v1 v2
-
-{-# NOINLINE ptr_glTexRenderbufferNV #-}
-ptr_glTexRenderbufferNV :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glTexRenderbufferNV = unsafePerformIO $ getCommand "glTexRenderbufferNV"
-
--- glTexStorage1D --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>.
-glTexStorage1D
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> m ()
-glTexStorage1D v1 v2 v3 v4 = liftIO $ dyn743 ptr_glTexStorage1D v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexStorage1D #-}
-ptr_glTexStorage1D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
-ptr_glTexStorage1D = unsafePerformIO $ getCommand "glTexStorage1D"
-
--- glTexStorage1DEXT -----------------------------------------------------------
-
--- | This command is an alias for 'glTexStorage1D'.
-glTexStorage1DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> m ()
-glTexStorage1DEXT v1 v2 v3 v4 = liftIO $ dyn743 ptr_glTexStorage1DEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexStorage1DEXT #-}
-ptr_glTexStorage1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
-ptr_glTexStorage1DEXT = unsafePerformIO $ getCommand "glTexStorage1DEXT"
-
--- glTexStorage2D --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
-glTexStorage2D
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTexStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glTexStorage2D v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexStorage2D #-}
-ptr_glTexStorage2D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTexStorage2D = unsafePerformIO $ getCommand "glTexStorage2D"
-
--- glTexStorage2DEXT -----------------------------------------------------------
-
--- | This command is an alias for 'glTexStorage2D'.
-glTexStorage2DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTexStorage2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn682 ptr_glTexStorage2DEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTexStorage2DEXT #-}
-ptr_glTexStorage2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTexStorage2DEXT = unsafePerformIO $ getCommand "glTexStorage2DEXT"
-
--- glTexStorage2DMultisample ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
-glTexStorage2DMultisample
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexStorage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn735 ptr_glTexStorage2DMultisample v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTexStorage2DMultisample #-}
-ptr_glTexStorage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexStorage2DMultisample = unsafePerformIO $ getCommand "glTexStorage2DMultisample"
-
--- glTexStorage3D --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>.
-glTexStorage3D
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> m ()
-glTexStorage3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn744 ptr_glTexStorage3D v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTexStorage3D #-}
-ptr_glTexStorage3D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-ptr_glTexStorage3D = unsafePerformIO $ getCommand "glTexStorage3D"
-
--- glTexStorage3DEXT -----------------------------------------------------------
-
--- | This command is an alias for 'glTexStorage3D'.
-glTexStorage3DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> m ()
-glTexStorage3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn744 ptr_glTexStorage3DEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTexStorage3DEXT #-}
-ptr_glTexStorage3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-ptr_glTexStorage3DEXT = unsafePerformIO $ getCommand "glTexStorage3DEXT"
-
--- glTexStorage3DMultisample ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>.
-glTexStorage3DMultisample
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexStorage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn739 ptr_glTexStorage3DMultisample v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexStorage3DMultisample #-}
-ptr_glTexStorage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexStorage3DMultisample = unsafePerformIO $ getCommand "glTexStorage3DMultisample"
-
--- glTexStorage3DMultisampleOES ------------------------------------------------
-
--- | This command is an alias for 'glTexStorage3DMultisample'.
-glTexStorage3DMultisampleOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTexStorage3DMultisampleOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn739 ptr_glTexStorage3DMultisampleOES v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexStorage3DMultisampleOES #-}
-ptr_glTexStorage3DMultisampleOES :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexStorage3DMultisampleOES = unsafePerformIO $ getCommand "glTexStorage3DMultisampleOES"
-
--- glTexStorageSparseAMD -------------------------------------------------------
-
-glTexStorageSparseAMD
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLsizei -- ^ @layers@.
-  -> GLbitfield -- ^ @flags@.
-  -> m ()
-glTexStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn745 ptr_glTexStorageSparseAMD v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexStorageSparseAMD #-}
-ptr_glTexStorageSparseAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
-ptr_glTexStorageSparseAMD = unsafePerformIO $ getCommand "glTexStorageSparseAMD"
-
--- glTexSubImage1D -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>.
-glTexSubImage1D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glTexSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn746 ptr_glTexSubImage1D v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexSubImage1D #-}
-ptr_glTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage1D = unsafePerformIO $ getCommand "glTexSubImage1D"
-
--- glTexSubImage1DEXT ----------------------------------------------------------
-
--- | This command is an alias for 'glTexSubImage1D'.
-glTexSubImage1DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn746 ptr_glTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTexSubImage1DEXT #-}
-ptr_glTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage1DEXT = unsafePerformIO $ getCommand "glTexSubImage1DEXT"
-
--- glTexSubImage2D -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>.
-glTexSubImage2D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn747 ptr_glTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexSubImage2D #-}
-ptr_glTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage2D = unsafePerformIO $ getCommand "glTexSubImage2D"
-
--- glTexSubImage2DEXT ----------------------------------------------------------
-
--- | This command is an alias for 'glTexSubImage2D'.
-glTexSubImage2DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn747 ptr_glTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexSubImage2DEXT #-}
-ptr_glTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage2DEXT = unsafePerformIO $ getCommand "glTexSubImage2DEXT"
-
--- glTexSubImage3D -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>.
-glTexSubImage3D
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn272 ptr_glTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTexSubImage3D #-}
-ptr_glTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage3D = unsafePerformIO $ getCommand "glTexSubImage3D"
-
--- glTexSubImage3DEXT ----------------------------------------------------------
-
--- | This command is an alias for 'glTexSubImage3D'.
-glTexSubImage3DEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn272 ptr_glTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTexSubImage3DEXT #-}
-ptr_glTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage3DEXT = unsafePerformIO $ getCommand "glTexSubImage3DEXT"
-
--- glTexSubImage3DOES ----------------------------------------------------------
-
--- | This command is an alias for 'glTexSubImage3D'.
-glTexSubImage3DOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn272 ptr_glTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTexSubImage3DOES #-}
-ptr_glTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage3DOES = unsafePerformIO $ getCommand "glTexSubImage3DOES"
-
--- glTexSubImage4DSGIS ---------------------------------------------------------
-
-glTexSubImage4DSGIS
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @woffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLsizei -- ^ @size4d@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
-  -> m ()
-glTexSubImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn748 ptr_glTexSubImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
-
-{-# NOINLINE ptr_glTexSubImage4DSGIS #-}
-ptr_glTexSubImage4DSGIS :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTexSubImage4DSGIS = unsafePerformIO $ getCommand "glTexSubImage4DSGIS"
-
--- glTextureBarrier ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureBarrier.xhtml OpenGL 4.x>.
-glTextureBarrier
-  :: MonadIO m
-  => m ()
-glTextureBarrier = liftIO $ dyn10 ptr_glTextureBarrier
-
-{-# NOINLINE ptr_glTextureBarrier #-}
-ptr_glTextureBarrier :: FunPtr (IO ())
-ptr_glTextureBarrier = unsafePerformIO $ getCommand "glTextureBarrier"
-
--- glTextureBarrierNV ----------------------------------------------------------
-
-glTextureBarrierNV
-  :: MonadIO m
-  => m ()
-glTextureBarrierNV = liftIO $ dyn10 ptr_glTextureBarrierNV
-
-{-# NOINLINE ptr_glTextureBarrierNV #-}
-ptr_glTextureBarrierNV :: FunPtr (IO ())
-ptr_glTextureBarrierNV = unsafePerformIO $ getCommand "glTextureBarrierNV"
-
--- glTextureBuffer -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
-glTextureBuffer
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTextureBuffer v1 v2 v3 = liftIO $ dyn715 ptr_glTextureBuffer v1 v2 v3
-
-{-# NOINLINE ptr_glTextureBuffer #-}
-ptr_glTextureBuffer :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
-ptr_glTextureBuffer = unsafePerformIO $ getCommand "glTextureBuffer"
+  glTexCoord1dv,
+  glTexCoord1f,
+  glTexCoord1fv,
+  glTexCoord1hNV,
+  glTexCoord1hvNV,
+  glTexCoord1i,
+  glTexCoord1iv,
+  glTexCoord1s,
+  glTexCoord1sv,
+  glTexCoord1xOES,
+  glTexCoord1xvOES,
+  glTexCoord2bOES,
+  glTexCoord2bvOES,
+  glTexCoord2d,
+  glTexCoord2dv,
+  glTexCoord2f,
+  glTexCoord2fColor3fVertex3fSUN,
+  glTexCoord2fColor3fVertex3fvSUN,
+  glTexCoord2fColor4fNormal3fVertex3fSUN,
+  glTexCoord2fColor4fNormal3fVertex3fvSUN,
+  glTexCoord2fColor4ubVertex3fSUN,
+  glTexCoord2fColor4ubVertex3fvSUN,
+  glTexCoord2fNormal3fVertex3fSUN,
+  glTexCoord2fNormal3fVertex3fvSUN,
+  glTexCoord2fVertex3fSUN,
+  glTexCoord2fVertex3fvSUN,
+  glTexCoord2fv,
+  glTexCoord2hNV,
+  glTexCoord2hvNV,
+  glTexCoord2i,
+  glTexCoord2iv,
+  glTexCoord2s,
+  glTexCoord2sv,
+  glTexCoord2xOES,
+  glTexCoord2xvOES,
+  glTexCoord3bOES,
+  glTexCoord3bvOES,
+  glTexCoord3d,
+  glTexCoord3dv,
+  glTexCoord3f,
+  glTexCoord3fv,
+  glTexCoord3hNV,
+  glTexCoord3hvNV,
+  glTexCoord3i,
+  glTexCoord3iv,
+  glTexCoord3s,
+  glTexCoord3sv,
+  glTexCoord3xOES,
+  glTexCoord3xvOES,
+  glTexCoord4bOES,
+  glTexCoord4bvOES,
+  glTexCoord4d,
+  glTexCoord4dv,
+  glTexCoord4f,
+  glTexCoord4fColor4fNormal3fVertex4fSUN,
+  glTexCoord4fColor4fNormal3fVertex4fvSUN,
+  glTexCoord4fVertex4fSUN,
+  glTexCoord4fVertex4fvSUN,
+  glTexCoord4fv,
+  glTexCoord4hNV,
+  glTexCoord4hvNV,
+  glTexCoord4i,
+  glTexCoord4iv,
+  glTexCoord4s,
+  glTexCoord4sv,
+  glTexCoord4xOES,
+  glTexCoord4xvOES,
+  glTexCoordFormatNV,
+  glTexCoordP1ui,
+  glTexCoordP1uiv,
+  glTexCoordP2ui,
+  glTexCoordP2uiv,
+  glTexCoordP3ui,
+  glTexCoordP3uiv,
+  glTexCoordP4ui,
+  glTexCoordP4uiv,
+  glTexCoordPointer,
+  glTexCoordPointerEXT,
+  glTexCoordPointerListIBM,
+  glTexCoordPointervINTEL,
+  glTexEnvf,
+  glTexEnvfv,
+  glTexEnvi,
+  glTexEnviv,
+  glTexEnvx,
+  glTexEnvxOES,
+  glTexEnvxv,
+  glTexEnvxvOES,
+  glTexFilterFuncSGIS,
+  glTexGend,
+  glTexGendv,
+  glTexGenf,
+  glTexGenfOES,
+  glTexGenfv,
+  glTexGenfvOES,
+  glTexGeni,
+  glTexGeniOES,
+  glTexGeniv,
+  glTexGenivOES,
+  glTexGenxOES
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glTexCoord1dv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord1dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @CoordD@.
+  -> m ()
+glTexCoord1dv v1 = liftIO $ dyn40 ptr_glTexCoord1dv v1
+
+{-# NOINLINE ptr_glTexCoord1dv #-}
+ptr_glTexCoord1dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glTexCoord1dv = unsafePerformIO $ getCommand "glTexCoord1dv"
+
+-- glTexCoord1f ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1fv'.
+glTexCoord1f
+  :: MonadIO m
+  => GLfloat -- ^ @s@ of type @CoordF@.
+  -> m ()
+glTexCoord1f v1 = liftIO $ dyn82 ptr_glTexCoord1f v1
+
+{-# NOINLINE ptr_glTexCoord1f #-}
+ptr_glTexCoord1f :: FunPtr (GLfloat -> IO ())
+ptr_glTexCoord1f = unsafePerformIO $ getCommand "glTexCoord1f"
+
+-- glTexCoord1fv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord1fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @CoordF@.
+  -> m ()
+glTexCoord1fv v1 = liftIO $ dyn42 ptr_glTexCoord1fv v1
+
+{-# NOINLINE ptr_glTexCoord1fv #-}
+ptr_glTexCoord1fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glTexCoord1fv = unsafePerformIO $ getCommand "glTexCoord1fv"
+
+-- glTexCoord1hNV --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTexCoord1hvNV'.
+glTexCoord1hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> m ()
+glTexCoord1hNV v1 = liftIO $ dyn285 ptr_glTexCoord1hNV v1
+
+{-# NOINLINE ptr_glTexCoord1hNV #-}
+ptr_glTexCoord1hNV :: FunPtr (GLhalfNV -> IO ())
+ptr_glTexCoord1hNV = unsafePerformIO $ getCommand "glTexCoord1hNV"
+
+-- glTexCoord1hvNV -------------------------------------------------------------
+
+glTexCoord1hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
+  -> m ()
+glTexCoord1hvNV v1 = liftIO $ dyn102 ptr_glTexCoord1hvNV v1
+
+{-# NOINLINE ptr_glTexCoord1hvNV #-}
+ptr_glTexCoord1hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glTexCoord1hvNV = unsafePerformIO $ getCommand "glTexCoord1hvNV"
+
+-- glTexCoord1i ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1iv'.
+glTexCoord1i
+  :: MonadIO m
+  => GLint -- ^ @s@ of type @CoordI@.
+  -> m ()
+glTexCoord1i v1 = liftIO $ dyn13 ptr_glTexCoord1i v1
+
+{-# NOINLINE ptr_glTexCoord1i #-}
+ptr_glTexCoord1i :: FunPtr (GLint -> IO ())
+ptr_glTexCoord1i = unsafePerformIO $ getCommand "glTexCoord1i"
+
+-- glTexCoord1iv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord1iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @1@ element of type @CoordI@.
+  -> m ()
+glTexCoord1iv v1 = liftIO $ dyn44 ptr_glTexCoord1iv v1
+
+{-# NOINLINE ptr_glTexCoord1iv #-}
+ptr_glTexCoord1iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glTexCoord1iv = unsafePerformIO $ getCommand "glTexCoord1iv"
+
+-- glTexCoord1s ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord1sv'.
+glTexCoord1s
+  :: MonadIO m
+  => GLshort -- ^ @s@ of type @CoordS@.
+  -> m ()
+glTexCoord1s v1 = liftIO $ dyn475 ptr_glTexCoord1s v1
+
+{-# NOINLINE ptr_glTexCoord1s #-}
+ptr_glTexCoord1s :: FunPtr (GLshort -> IO ())
+ptr_glTexCoord1s = unsafePerformIO $ getCommand "glTexCoord1s"
+
+-- glTexCoord1sv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord1sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @1@ element of type @CoordS@.
+  -> m ()
+glTexCoord1sv v1 = liftIO $ dyn46 ptr_glTexCoord1sv v1
+
+{-# NOINLINE ptr_glTexCoord1sv #-}
+ptr_glTexCoord1sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTexCoord1sv = unsafePerformIO $ getCommand "glTexCoord1sv"
+
+-- glTexCoord1xOES -------------------------------------------------------------
+
+glTexCoord1xOES
+  :: MonadIO m
+  => GLfixed -- ^ @s@.
+  -> m ()
+glTexCoord1xOES v1 = liftIO $ dyn84 ptr_glTexCoord1xOES v1
+
+{-# NOINLINE ptr_glTexCoord1xOES #-}
+ptr_glTexCoord1xOES :: FunPtr (GLfixed -> IO ())
+ptr_glTexCoord1xOES = unsafePerformIO $ getCommand "glTexCoord1xOES"
+
+-- glTexCoord1xvOES ------------------------------------------------------------
+
+glTexCoord1xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @1@ element of type @GLfixed@.
+  -> m ()
+glTexCoord1xvOES v1 = liftIO $ dyn110 ptr_glTexCoord1xvOES v1
+
+{-# NOINLINE ptr_glTexCoord1xvOES #-}
+ptr_glTexCoord1xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glTexCoord1xvOES = unsafePerformIO $ getCommand "glTexCoord1xvOES"
+
+-- glTexCoord2bOES -------------------------------------------------------------
+
+glTexCoord2bOES
+  :: MonadIO m
+  => GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> m ()
+glTexCoord2bOES v1 v2 = liftIO $ dyn748 ptr_glTexCoord2bOES v1 v2
+
+{-# NOINLINE ptr_glTexCoord2bOES #-}
+ptr_glTexCoord2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
+ptr_glTexCoord2bOES = unsafePerformIO $ getCommand "glTexCoord2bOES"
+
+-- glTexCoord2bvOES ------------------------------------------------------------
+
+glTexCoord2bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
+  -> m ()
+glTexCoord2bvOES v1 = liftIO $ dyn38 ptr_glTexCoord2bvOES v1
+
+{-# NOINLINE ptr_glTexCoord2bvOES #-}
+ptr_glTexCoord2bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glTexCoord2bvOES = unsafePerformIO $ getCommand "glTexCoord2bvOES"
+
+-- glTexCoord2d ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2dv'.
+glTexCoord2d
+  :: MonadIO m
+  => GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> m ()
+glTexCoord2d v1 v2 = liftIO $ dyn220 ptr_glTexCoord2d v1 v2
+
+{-# NOINLINE ptr_glTexCoord2d #-}
+ptr_glTexCoord2d :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glTexCoord2d = unsafePerformIO $ getCommand "glTexCoord2d"
+
+-- glTexCoord2dv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord2dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glTexCoord2dv v1 = liftIO $ dyn40 ptr_glTexCoord2dv v1
+
+{-# NOINLINE ptr_glTexCoord2dv #-}
+ptr_glTexCoord2dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glTexCoord2dv = unsafePerformIO $ getCommand "glTexCoord2dv"
+
+-- glTexCoord2f ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2fv'.
+glTexCoord2f
+  :: MonadIO m
+  => GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> m ()
+glTexCoord2f v1 v2 = liftIO $ dyn225 ptr_glTexCoord2f v1 v2
+
+{-# NOINLINE ptr_glTexCoord2f #-}
+ptr_glTexCoord2f :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2f = unsafePerformIO $ getCommand "glTexCoord2f"
+
+-- glTexCoord2fColor3fVertex3fSUN ----------------------------------------------
+
+glTexCoord2fColor3fVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTexCoord2fColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glTexCoord2fColor3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fSUN #-}
+ptr_glTexCoord2fColor3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2fColor3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fSUN"
+
+-- glTexCoord2fColor3fVertex3fvSUN ---------------------------------------------
+
+glTexCoord2fColor3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord2fColor3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn114 ptr_glTexCoord2fColor3fVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fvSUN #-}
+ptr_glTexCoord2fColor3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord2fColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fvSUN"
+
+-- glTexCoord2fColor4fNormal3fVertex3fSUN --------------------------------------
+
+glTexCoord2fColor4fNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @a@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn749 ptr_glTexCoord2fColor4fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+
+{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fSUN #-}
+ptr_glTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fSUN"
+
+-- glTexCoord2fColor4fNormal3fVertex3fvSUN -------------------------------------
+
+glTexCoord2fColor4fNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4 = liftIO $ dyn750 ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN #-}
+ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fvSUN"
+
+-- glTexCoord2fColor4ubVertex3fSUN ---------------------------------------------
+
+glTexCoord2fColor4ubVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLubyte -- ^ @r@.
+  -> GLubyte -- ^ @g@.
+  -> GLubyte -- ^ @b@.
+  -> GLubyte -- ^ @a@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTexCoord2fColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn751 ptr_glTexCoord2fColor4ubVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fSUN #-}
+ptr_glTexCoord2fColor4ubVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2fColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fSUN"
+
+-- glTexCoord2fColor4ubVertex3fvSUN --------------------------------------------
+
+glTexCoord2fColor4ubVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord2fColor4ubVertex3fvSUN v1 v2 v3 = liftIO $ dyn752 ptr_glTexCoord2fColor4ubVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fvSUN #-}
+ptr_glTexCoord2fColor4ubVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
+ptr_glTexCoord2fColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fvSUN"
+
+-- glTexCoord2fNormal3fVertex3fSUN ---------------------------------------------
+
+glTexCoord2fNormal3fVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glTexCoord2fNormal3fVertex3fSUN v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fSUN #-}
+ptr_glTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fSUN"
+
+-- glTexCoord2fNormal3fVertex3fvSUN --------------------------------------------
+
+glTexCoord2fNormal3fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord2fNormal3fVertex3fvSUN v1 v2 v3 = liftIO $ dyn114 ptr_glTexCoord2fNormal3fVertex3fvSUN v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fvSUN #-}
+ptr_glTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fvSUN"
+
+-- glTexCoord2fVertex3fSUN -----------------------------------------------------
+
+glTexCoord2fVertex3fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTexCoord2fVertex3fSUN v1 v2 v3 v4 v5 = liftIO $ dyn255 ptr_glTexCoord2fVertex3fSUN v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexCoord2fVertex3fSUN #-}
+ptr_glTexCoord2fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fSUN"
+
+-- glTexCoord2fVertex3fvSUN ----------------------------------------------------
+
+glTexCoord2fVertex3fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord2fVertex3fvSUN v1 v2 = liftIO $ dyn100 ptr_glTexCoord2fVertex3fvSUN v1 v2
+
+{-# NOINLINE ptr_glTexCoord2fVertex3fvSUN #-}
+ptr_glTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fvSUN"
+
+-- glTexCoord2fv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord2fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glTexCoord2fv v1 = liftIO $ dyn42 ptr_glTexCoord2fv v1
+
+{-# NOINLINE ptr_glTexCoord2fv #-}
+ptr_glTexCoord2fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glTexCoord2fv = unsafePerformIO $ getCommand "glTexCoord2fv"
+
+-- glTexCoord2hNV --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTexCoord2hvNV'.
+glTexCoord2hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> m ()
+glTexCoord2hNV v1 v2 = liftIO $ dyn753 ptr_glTexCoord2hNV v1 v2
+
+{-# NOINLINE ptr_glTexCoord2hNV #-}
+ptr_glTexCoord2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
+ptr_glTexCoord2hNV = unsafePerformIO $ getCommand "glTexCoord2hNV"
+
+-- glTexCoord2hvNV -------------------------------------------------------------
+
+glTexCoord2hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
+  -> m ()
+glTexCoord2hvNV v1 = liftIO $ dyn102 ptr_glTexCoord2hvNV v1
+
+{-# NOINLINE ptr_glTexCoord2hvNV #-}
+ptr_glTexCoord2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glTexCoord2hvNV = unsafePerformIO $ getCommand "glTexCoord2hvNV"
+
+-- glTexCoord2i ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2iv'.
+glTexCoord2i
+  :: MonadIO m
+  => GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> m ()
+glTexCoord2i v1 v2 = liftIO $ dyn270 ptr_glTexCoord2i v1 v2
+
+{-# NOINLINE ptr_glTexCoord2i #-}
+ptr_glTexCoord2i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glTexCoord2i = unsafePerformIO $ getCommand "glTexCoord2i"
+
+-- glTexCoord2iv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord2iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glTexCoord2iv v1 = liftIO $ dyn44 ptr_glTexCoord2iv v1
+
+{-# NOINLINE ptr_glTexCoord2iv #-}
+ptr_glTexCoord2iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glTexCoord2iv = unsafePerformIO $ getCommand "glTexCoord2iv"
+
+-- glTexCoord2s ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord2sv'.
+glTexCoord2s
+  :: MonadIO m
+  => GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> m ()
+glTexCoord2s v1 v2 = liftIO $ dyn694 ptr_glTexCoord2s v1 v2
+
+{-# NOINLINE ptr_glTexCoord2s #-}
+ptr_glTexCoord2s :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glTexCoord2s = unsafePerformIO $ getCommand "glTexCoord2s"
+
+-- glTexCoord2sv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord2sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glTexCoord2sv v1 = liftIO $ dyn46 ptr_glTexCoord2sv v1
+
+{-# NOINLINE ptr_glTexCoord2sv #-}
+ptr_glTexCoord2sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTexCoord2sv = unsafePerformIO $ getCommand "glTexCoord2sv"
+
+-- glTexCoord2xOES -------------------------------------------------------------
+
+glTexCoord2xOES
+  :: MonadIO m
+  => GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> m ()
+glTexCoord2xOES v1 v2 = liftIO $ dyn227 ptr_glTexCoord2xOES v1 v2
+
+{-# NOINLINE ptr_glTexCoord2xOES #-}
+ptr_glTexCoord2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glTexCoord2xOES = unsafePerformIO $ getCommand "glTexCoord2xOES"
+
+-- glTexCoord2xvOES ------------------------------------------------------------
+
+glTexCoord2xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glTexCoord2xvOES v1 = liftIO $ dyn110 ptr_glTexCoord2xvOES v1
+
+{-# NOINLINE ptr_glTexCoord2xvOES #-}
+ptr_glTexCoord2xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glTexCoord2xvOES = unsafePerformIO $ getCommand "glTexCoord2xvOES"
+
+-- glTexCoord3bOES -------------------------------------------------------------
+
+glTexCoord3bOES
+  :: MonadIO m
+  => GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> GLbyte -- ^ @r@.
+  -> m ()
+glTexCoord3bOES v1 v2 v3 = liftIO $ dyn37 ptr_glTexCoord3bOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3bOES #-}
+ptr_glTexCoord3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glTexCoord3bOES = unsafePerformIO $ getCommand "glTexCoord3bOES"
+
+-- glTexCoord3bvOES ------------------------------------------------------------
+
+glTexCoord3bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glTexCoord3bvOES v1 = liftIO $ dyn38 ptr_glTexCoord3bvOES v1
+
+{-# NOINLINE ptr_glTexCoord3bvOES #-}
+ptr_glTexCoord3bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glTexCoord3bvOES = unsafePerformIO $ getCommand "glTexCoord3bvOES"
+
+-- glTexCoord3d ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3dv'.
+glTexCoord3d
+  :: MonadIO m
+  => GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> m ()
+glTexCoord3d v1 v2 v3 = liftIO $ dyn39 ptr_glTexCoord3d v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3d #-}
+ptr_glTexCoord3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glTexCoord3d = unsafePerformIO $ getCommand "glTexCoord3d"
+
+-- glTexCoord3dv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glTexCoord3dv v1 = liftIO $ dyn40 ptr_glTexCoord3dv v1
+
+{-# NOINLINE ptr_glTexCoord3dv #-}
+ptr_glTexCoord3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glTexCoord3dv = unsafePerformIO $ getCommand "glTexCoord3dv"
+
+-- glTexCoord3f ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3fv'.
+glTexCoord3f
+  :: MonadIO m
+  => GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> m ()
+glTexCoord3f v1 v2 v3 = liftIO $ dyn41 ptr_glTexCoord3f v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3f #-}
+ptr_glTexCoord3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord3f = unsafePerformIO $ getCommand "glTexCoord3f"
+
+-- glTexCoord3fv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glTexCoord3fv v1 = liftIO $ dyn42 ptr_glTexCoord3fv v1
+
+{-# NOINLINE ptr_glTexCoord3fv #-}
+ptr_glTexCoord3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glTexCoord3fv = unsafePerformIO $ getCommand "glTexCoord3fv"
+
+-- glTexCoord3hNV --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTexCoord3hvNV'.
+glTexCoord3hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
+  -> m ()
+glTexCoord3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glTexCoord3hNV v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3hNV #-}
+ptr_glTexCoord3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glTexCoord3hNV = unsafePerformIO $ getCommand "glTexCoord3hNV"
+
+-- glTexCoord3hvNV -------------------------------------------------------------
+
+glTexCoord3hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glTexCoord3hvNV v1 = liftIO $ dyn102 ptr_glTexCoord3hvNV v1
+
+{-# NOINLINE ptr_glTexCoord3hvNV #-}
+ptr_glTexCoord3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glTexCoord3hvNV = unsafePerformIO $ getCommand "glTexCoord3hvNV"
+
+-- glTexCoord3i ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3iv'.
+glTexCoord3i
+  :: MonadIO m
+  => GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> m ()
+glTexCoord3i v1 v2 v3 = liftIO $ dyn43 ptr_glTexCoord3i v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3i #-}
+ptr_glTexCoord3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glTexCoord3i = unsafePerformIO $ getCommand "glTexCoord3i"
+
+-- glTexCoord3iv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glTexCoord3iv v1 = liftIO $ dyn44 ptr_glTexCoord3iv v1
+
+{-# NOINLINE ptr_glTexCoord3iv #-}
+ptr_glTexCoord3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glTexCoord3iv = unsafePerformIO $ getCommand "glTexCoord3iv"
+
+-- glTexCoord3s ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord3sv'.
+glTexCoord3s
+  :: MonadIO m
+  => GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> m ()
+glTexCoord3s v1 v2 v3 = liftIO $ dyn45 ptr_glTexCoord3s v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3s #-}
+ptr_glTexCoord3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glTexCoord3s = unsafePerformIO $ getCommand "glTexCoord3s"
+
+-- glTexCoord3sv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glTexCoord3sv v1 = liftIO $ dyn46 ptr_glTexCoord3sv v1
+
+{-# NOINLINE ptr_glTexCoord3sv #-}
+ptr_glTexCoord3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTexCoord3sv = unsafePerformIO $ getCommand "glTexCoord3sv"
+
+-- glTexCoord3xOES -------------------------------------------------------------
+
+glTexCoord3xOES
+  :: MonadIO m
+  => GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> m ()
+glTexCoord3xOES v1 v2 v3 = liftIO $ dyn109 ptr_glTexCoord3xOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoord3xOES #-}
+ptr_glTexCoord3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glTexCoord3xOES = unsafePerformIO $ getCommand "glTexCoord3xOES"
+
+-- glTexCoord3xvOES ------------------------------------------------------------
+
+glTexCoord3xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
+  -> m ()
+glTexCoord3xvOES v1 = liftIO $ dyn110 ptr_glTexCoord3xvOES v1
+
+{-# NOINLINE ptr_glTexCoord3xvOES #-}
+ptr_glTexCoord3xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glTexCoord3xvOES = unsafePerformIO $ getCommand "glTexCoord3xvOES"
+
+-- glTexCoord4bOES -------------------------------------------------------------
+
+glTexCoord4bOES
+  :: MonadIO m
+  => GLbyte -- ^ @s@.
+  -> GLbyte -- ^ @t@.
+  -> GLbyte -- ^ @r@.
+  -> GLbyte -- ^ @q@.
+  -> m ()
+glTexCoord4bOES v1 v2 v3 v4 = liftIO $ dyn111 ptr_glTexCoord4bOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4bOES #-}
+ptr_glTexCoord4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glTexCoord4bOES = unsafePerformIO $ getCommand "glTexCoord4bOES"
+
+-- glTexCoord4bvOES ------------------------------------------------------------
+
+glTexCoord4bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glTexCoord4bvOES v1 = liftIO $ dyn38 ptr_glTexCoord4bvOES v1
+
+{-# NOINLINE ptr_glTexCoord4bvOES #-}
+ptr_glTexCoord4bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glTexCoord4bvOES = unsafePerformIO $ getCommand "glTexCoord4bvOES"
+
+-- glTexCoord4d ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4dv'.
+glTexCoord4d
+  :: MonadIO m
+  => GLdouble -- ^ @s@ of type @CoordD@.
+  -> GLdouble -- ^ @t@ of type @CoordD@.
+  -> GLdouble -- ^ @r@ of type @CoordD@.
+  -> GLdouble -- ^ @q@ of type @CoordD@.
+  -> m ()
+glTexCoord4d v1 v2 v3 v4 = liftIO $ dyn112 ptr_glTexCoord4d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4d #-}
+ptr_glTexCoord4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glTexCoord4d = unsafePerformIO $ getCommand "glTexCoord4d"
+
+-- glTexCoord4dv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glTexCoord4dv v1 = liftIO $ dyn40 ptr_glTexCoord4dv v1
+
+{-# NOINLINE ptr_glTexCoord4dv #-}
+ptr_glTexCoord4dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glTexCoord4dv = unsafePerformIO $ getCommand "glTexCoord4dv"
+
+-- glTexCoord4f ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4fv'.
+glTexCoord4f
+  :: MonadIO m
+  => GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> GLfloat -- ^ @r@ of type @CoordF@.
+  -> GLfloat -- ^ @q@ of type @CoordF@.
+  -> m ()
+glTexCoord4f v1 v2 v3 v4 = liftIO $ dyn50 ptr_glTexCoord4f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4f #-}
+ptr_glTexCoord4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord4f = unsafePerformIO $ getCommand "glTexCoord4f"
+
+-- glTexCoord4fColor4fNormal3fVertex4fSUN --------------------------------------
+
+glTexCoord4fColor4fNormal3fVertex4fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @p@.
+  -> GLfloat -- ^ @q@.
+  -> GLfloat -- ^ @r@.
+  -> GLfloat -- ^ @g@.
+  -> GLfloat -- ^ @b@.
+  -> GLfloat -- ^ @a@.
+  -> GLfloat -- ^ @nx@.
+  -> GLfloat -- ^ @ny@.
+  -> GLfloat -- ^ @nz@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glTexCoord4fColor4fNormal3fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 = liftIO $ dyn754 ptr_glTexCoord4fColor4fNormal3fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15
+
+{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fSUN #-}
+ptr_glTexCoord4fColor4fNormal3fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord4fColor4fNormal3fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fSUN"
+
+-- glTexCoord4fColor4fNormal3fVertex4fvSUN -------------------------------------
+
+glTexCoord4fColor4fNormal3fVertex4fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord4fColor4fNormal3fVertex4fvSUN v1 v2 v3 v4 = liftIO $ dyn750 ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN #-}
+ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fvSUN"
+
+-- glTexCoord4fVertex4fSUN -----------------------------------------------------
+
+glTexCoord4fVertex4fSUN
+  :: MonadIO m
+  => GLfloat -- ^ @s@.
+  -> GLfloat -- ^ @t@.
+  -> GLfloat -- ^ @p@.
+  -> GLfloat -- ^ @q@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glTexCoord4fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn638 ptr_glTexCoord4fVertex4fSUN v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexCoord4fVertex4fSUN #-}
+ptr_glTexCoord4fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTexCoord4fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fSUN"
+
+-- glTexCoord4fVertex4fvSUN ----------------------------------------------------
+
+glTexCoord4fVertex4fvSUN
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glTexCoord4fVertex4fvSUN v1 v2 = liftIO $ dyn100 ptr_glTexCoord4fVertex4fvSUN v1 v2
+
+{-# NOINLINE ptr_glTexCoord4fVertex4fvSUN #-}
+ptr_glTexCoord4fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
+ptr_glTexCoord4fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fvSUN"
+
+-- glTexCoord4fv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glTexCoord4fv v1 = liftIO $ dyn42 ptr_glTexCoord4fv v1
+
+{-# NOINLINE ptr_glTexCoord4fv #-}
+ptr_glTexCoord4fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glTexCoord4fv = unsafePerformIO $ getCommand "glTexCoord4fv"
+
+-- glTexCoord4hNV --------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTexCoord4hvNV'.
+glTexCoord4hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @s@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
+  -> m ()
+glTexCoord4hNV v1 v2 v3 v4 = liftIO $ dyn115 ptr_glTexCoord4hNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4hNV #-}
+ptr_glTexCoord4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glTexCoord4hNV = unsafePerformIO $ getCommand "glTexCoord4hNV"
+
+-- glTexCoord4hvNV -------------------------------------------------------------
+
+glTexCoord4hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
+  -> m ()
+glTexCoord4hvNV v1 = liftIO $ dyn102 ptr_glTexCoord4hvNV v1
+
+{-# NOINLINE ptr_glTexCoord4hvNV #-}
+ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glTexCoord4hvNV = unsafePerformIO $ getCommand "glTexCoord4hvNV"
+
+-- glTexCoord4i ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4iv'.
+glTexCoord4i
+  :: MonadIO m
+  => GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> GLint -- ^ @q@ of type @CoordI@.
+  -> m ()
+glTexCoord4i v1 v2 v3 v4 = liftIO $ dyn79 ptr_glTexCoord4i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4i #-}
+ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glTexCoord4i = unsafePerformIO $ getCommand "glTexCoord4i"
+
+-- glTexCoord4iv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glTexCoord4iv v1 = liftIO $ dyn44 ptr_glTexCoord4iv v1
+
+{-# NOINLINE ptr_glTexCoord4iv #-}
+ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glTexCoord4iv = unsafePerformIO $ getCommand "glTexCoord4iv"
+
+-- glTexCoord4s ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4sv'.
+glTexCoord4s
+  :: MonadIO m
+  => GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> GLshort -- ^ @q@ of type @CoordS@.
+  -> m ()
+glTexCoord4s v1 v2 v3 v4 = liftIO $ dyn116 ptr_glTexCoord4s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4s #-}
+ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glTexCoord4s = unsafePerformIO $ getCommand "glTexCoord4s"
+
+-- glTexCoord4sv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glTexCoord4sv v1 = liftIO $ dyn46 ptr_glTexCoord4sv v1
+
+{-# NOINLINE ptr_glTexCoord4sv #-}
+ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTexCoord4sv = unsafePerformIO $ getCommand "glTexCoord4sv"
+
+-- glTexCoord4xOES -------------------------------------------------------------
+
+glTexCoord4xOES
+  :: MonadIO m
+  => GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @q@.
+  -> m ()
+glTexCoord4xOES v1 v2 v3 v4 = liftIO $ dyn51 ptr_glTexCoord4xOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4xOES #-}
+ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glTexCoord4xOES = unsafePerformIO $ getCommand "glTexCoord4xOES"
+
+-- glTexCoord4xvOES ------------------------------------------------------------
+
+glTexCoord4xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
+  -> m ()
+glTexCoord4xvOES v1 = liftIO $ dyn110 ptr_glTexCoord4xvOES v1
+
+{-# NOINLINE ptr_glTexCoord4xvOES #-}
+ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glTexCoord4xvOES = unsafePerformIO $ getCommand "glTexCoord4xvOES"
+
+-- glTexCoordFormatNV ----------------------------------------------------------
+
+glTexCoordFormatNV
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glTexCoordFormatNV v1 v2 v3 = liftIO $ dyn122 ptr_glTexCoordFormatNV v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoordFormatNV #-}
+ptr_glTexCoordFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
+ptr_glTexCoordFormatNV = unsafePerformIO $ getCommand "glTexCoordFormatNV"
+
+-- glTexCoordP1ui --------------------------------------------------------------
+
+glTexCoordP1ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glTexCoordP1ui v1 v2 = liftIO $ dyn17 ptr_glTexCoordP1ui v1 v2
+
+{-# NOINLINE ptr_glTexCoordP1ui #-}
+ptr_glTexCoordP1ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glTexCoordP1ui = unsafePerformIO $ getCommand "glTexCoordP1ui"
+
+-- glTexCoordP1uiv -------------------------------------------------------------
+
+glTexCoordP1uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glTexCoordP1uiv v1 v2 = liftIO $ dyn128 ptr_glTexCoordP1uiv v1 v2
+
+{-# NOINLINE ptr_glTexCoordP1uiv #-}
+ptr_glTexCoordP1uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glTexCoordP1uiv = unsafePerformIO $ getCommand "glTexCoordP1uiv"
+
+-- glTexCoordP2ui --------------------------------------------------------------
+
+glTexCoordP2ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glTexCoordP2ui v1 v2 = liftIO $ dyn17 ptr_glTexCoordP2ui v1 v2
+
+{-# NOINLINE ptr_glTexCoordP2ui #-}
+ptr_glTexCoordP2ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glTexCoordP2ui = unsafePerformIO $ getCommand "glTexCoordP2ui"
+
+-- glTexCoordP2uiv -------------------------------------------------------------
+
+glTexCoordP2uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glTexCoordP2uiv v1 v2 = liftIO $ dyn128 ptr_glTexCoordP2uiv v1 v2
+
+{-# NOINLINE ptr_glTexCoordP2uiv #-}
+ptr_glTexCoordP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glTexCoordP2uiv = unsafePerformIO $ getCommand "glTexCoordP2uiv"
+
+-- glTexCoordP3ui --------------------------------------------------------------
+
+glTexCoordP3ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glTexCoordP3ui v1 v2 = liftIO $ dyn17 ptr_glTexCoordP3ui v1 v2
+
+{-# NOINLINE ptr_glTexCoordP3ui #-}
+ptr_glTexCoordP3ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glTexCoordP3ui = unsafePerformIO $ getCommand "glTexCoordP3ui"
+
+-- glTexCoordP3uiv -------------------------------------------------------------
+
+glTexCoordP3uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glTexCoordP3uiv v1 v2 = liftIO $ dyn128 ptr_glTexCoordP3uiv v1 v2
+
+{-# NOINLINE ptr_glTexCoordP3uiv #-}
+ptr_glTexCoordP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glTexCoordP3uiv = unsafePerformIO $ getCommand "glTexCoordP3uiv"
+
+-- glTexCoordP4ui --------------------------------------------------------------
+
+glTexCoordP4ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @coords@.
+  -> m ()
+glTexCoordP4ui v1 v2 = liftIO $ dyn17 ptr_glTexCoordP4ui v1 v2
+
+{-# NOINLINE ptr_glTexCoordP4ui #-}
+ptr_glTexCoordP4ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glTexCoordP4ui = unsafePerformIO $ getCommand "glTexCoordP4ui"
+
+-- glTexCoordP4uiv -------------------------------------------------------------
+
+glTexCoordP4uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glTexCoordP4uiv v1 v2 = liftIO $ dyn128 ptr_glTexCoordP4uiv v1 v2
+
+{-# NOINLINE ptr_glTexCoordP4uiv #-}
+ptr_glTexCoordP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glTexCoordP4uiv = unsafePerformIO $ getCommand "glTexCoordP4uiv"
+
+-- glTexCoordPointer -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoordPointer.xml OpenGL 2.x>.
+glTexCoordPointer
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glTexCoordPointer v1 v2 v3 v4 = liftIO $ dyn129 ptr_glTexCoordPointer v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoordPointer #-}
+ptr_glTexCoordPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glTexCoordPointer = unsafePerformIO $ getCommand "glTexCoordPointer"
+
+-- glTexCoordPointerEXT --------------------------------------------------------
+
+glTexCoordPointerEXT
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
+  -> m ()
+glTexCoordPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn130 ptr_glTexCoordPointerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexCoordPointerEXT #-}
+ptr_glTexCoordPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
+ptr_glTexCoordPointerEXT = unsafePerformIO $ getCommand "glTexCoordPointerEXT"
+
+-- glTexCoordPointerListIBM ----------------------------------------------------
+
+glTexCoordPointerListIBM
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLint -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glTexCoordPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn131 ptr_glTexCoordPointerListIBM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexCoordPointerListIBM #-}
+ptr_glTexCoordPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+ptr_glTexCoordPointerListIBM = unsafePerformIO $ getCommand "glTexCoordPointerListIBM"
+
+-- glTexCoordPointervINTEL -----------------------------------------------------
+
+glTexCoordPointervINTEL
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
+  -> m ()
+glTexCoordPointervINTEL v1 v2 v3 = liftIO $ dyn132 ptr_glTexCoordPointervINTEL v1 v2 v3
+
+{-# NOINLINE ptr_glTexCoordPointervINTEL #-}
+ptr_glTexCoordPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
+ptr_glTexCoordPointervINTEL = unsafePerformIO $ getCommand "glTexCoordPointervINTEL"
+
+-- glTexEnvf -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
+glTexEnvf
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glTexEnvf v1 v2 v3 = liftIO $ dyn164 ptr_glTexEnvf v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvf #-}
+ptr_glTexEnvf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glTexEnvf = unsafePerformIO $ getCommand "glTexEnvf"
+
+-- glTexEnvfv ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
+glTexEnvfv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glTexEnvfv v1 v2 v3 = liftIO $ dyn135 ptr_glTexEnvfv v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvfv #-}
+ptr_glTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTexEnvfv = unsafePerformIO $ getCommand "glTexEnvfv"
+
+-- glTexEnvi -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
+glTexEnvi
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glTexEnvi v1 v2 v3 = liftIO $ dyn63 ptr_glTexEnvi v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvi #-}
+ptr_glTexEnvi :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glTexEnvi = unsafePerformIO $ getCommand "glTexEnvi"
+
+-- glTexEnviv ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
+glTexEnviv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTexEnviv v1 v2 v3 = liftIO $ dyn136 ptr_glTexEnviv v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnviv #-}
+ptr_glTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexEnviv = unsafePerformIO $ getCommand "glTexEnviv"
+
+-- glTexEnvx -------------------------------------------------------------------
+
+glTexEnvx
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glTexEnvx v1 v2 v3 = liftIO $ dyn165 ptr_glTexEnvx v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvx #-}
+ptr_glTexEnvx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glTexEnvx = unsafePerformIO $ getCommand "glTexEnvx"
+
+-- glTexEnvxOES ----------------------------------------------------------------
+
+glTexEnvxOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glTexEnvxOES v1 v2 v3 = liftIO $ dyn165 ptr_glTexEnvxOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvxOES #-}
+ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glTexEnvxOES = unsafePerformIO $ getCommand "glTexEnvxOES"
+
+-- glTexEnvxv ------------------------------------------------------------------
+
+glTexEnvxv
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexEnvxv v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxv v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvxv #-}
+ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexEnvxv = unsafePerformIO $ getCommand "glTexEnvxv"
+
+-- glTexEnvxvOES ---------------------------------------------------------------
+
+glTexEnvxvOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexEnvxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvxvOES #-}
+ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexEnvxvOES = unsafePerformIO $ getCommand "glTexEnvxvOES"
+
+-- glTexFilterFuncSGIS ---------------------------------------------------------
+
+glTexFilterFuncSGIS
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @filter@ of type @TextureFilterSGIS@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLfloat -- ^ @weights@ pointing to @n@ elements of type @GLfloat@.
+  -> m ()
+glTexFilterFuncSGIS v1 v2 v3 v4 = liftIO $ dyn462 ptr_glTexFilterFuncSGIS v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexFilterFuncSGIS #-}
+ptr_glTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glTexFilterFuncSGIS = unsafePerformIO $ getCommand "glTexFilterFuncSGIS"
+
+-- glTexGend -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGend
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLdouble -- ^ @param@.
+  -> m ()
+glTexGend v1 v2 v3 = liftIO $ dyn755 ptr_glTexGend v1 v2 v3
+
+{-# NOINLINE ptr_glTexGend #-}
+ptr_glTexGend :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
+ptr_glTexGend = unsafePerformIO $ getCommand "glTexGend"
+
+-- glTexGendv ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGendv
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
+  -> m ()
+glTexGendv v1 v2 v3 = liftIO $ dyn361 ptr_glTexGendv v1 v2 v3
+
+{-# NOINLINE ptr_glTexGendv #-}
+ptr_glTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
+ptr_glTexGendv = unsafePerformIO $ getCommand "glTexGendv"
+
+-- glTexGenf -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGenf
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glTexGenf v1 v2 v3 = liftIO $ dyn164 ptr_glTexGenf v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenf #-}
+ptr_glTexGenf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glTexGenf = unsafePerformIO $ getCommand "glTexGenf"
+
+-- glTexGenfOES ----------------------------------------------------------------
+
+glTexGenfOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glTexGenfOES v1 v2 v3 = liftIO $ dyn164 ptr_glTexGenfOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenfOES #-}
+ptr_glTexGenfOES :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glTexGenfOES = unsafePerformIO $ getCommand "glTexGenfOES"
+
+-- glTexGenfv ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGenfv
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glTexGenfv v1 v2 v3 = liftIO $ dyn135 ptr_glTexGenfv v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenfv #-}
+ptr_glTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTexGenfv = unsafePerformIO $ getCommand "glTexGenfv"
+
+-- glTexGenfvOES ---------------------------------------------------------------
+
+glTexGenfvOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glTexGenfvOES v1 v2 v3 = liftIO $ dyn135 ptr_glTexGenfvOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenfvOES #-}
+ptr_glTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTexGenfvOES = unsafePerformIO $ getCommand "glTexGenfvOES"
+
+-- glTexGeni -------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGeni
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glTexGeni v1 v2 v3 = liftIO $ dyn63 ptr_glTexGeni v1 v2 v3
+
+{-# NOINLINE ptr_glTexGeni #-}
+ptr_glTexGeni :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glTexGeni = unsafePerformIO $ getCommand "glTexGeni"
+
+-- glTexGeniOES ----------------------------------------------------------------
+
+glTexGeniOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glTexGeniOES v1 v2 v3 = liftIO $ dyn63 ptr_glTexGeniOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGeniOES #-}
+ptr_glTexGeniOES :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glTexGeniOES = unsafePerformIO $ getCommand "glTexGeniOES"
+
+-- glTexGeniv ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
+glTexGeniv
+  :: MonadIO m
+  => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
+  -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTexGeniv v1 v2 v3 = liftIO $ dyn136 ptr_glTexGeniv v1 v2 v3
+
+{-# NOINLINE ptr_glTexGeniv #-}
+ptr_glTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexGeniv = unsafePerformIO $ getCommand "glTexGeniv"
+
+-- glTexGenivOES ---------------------------------------------------------------
+
+glTexGenivOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glTexGenivOES v1 v2 v3 = liftIO $ dyn136 ptr_glTexGenivOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenivOES #-}
+ptr_glTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexGenivOES = unsafePerformIO $ getCommand "glTexGenivOES"
+
+-- glTexGenxOES ----------------------------------------------------------------
+
+glTexGenxOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glTexGenxOES v1 v2 v3 = liftIO $ dyn165 ptr_glTexGenxOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenxOES #-}
+ptr_glTexGenxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glTexGenxOES = unsafePerformIO $ getCommand "glTexGenxOES"
 
diff --git a/src/Graphics/GL/Functions/F26.hs b/src/Graphics/GL/Functions/F26.hs
--- a/src/Graphics/GL/Functions/F26.hs
+++ b/src/Graphics/GL/Functions/F26.hs
@@ -15,1701 +15,1843 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F26 (
-  glTextureBufferEXT,
-  glTextureBufferRange,
-  glTextureBufferRangeEXT,
-  glTextureColorMaskSGIS,
-  glTextureImage1DEXT,
-  glTextureImage2DEXT,
-  glTextureImage2DMultisampleCoverageNV,
-  glTextureImage2DMultisampleNV,
-  glTextureImage3DEXT,
-  glTextureImage3DMultisampleCoverageNV,
-  glTextureImage3DMultisampleNV,
-  glTextureLightEXT,
-  glTextureMaterialEXT,
-  glTextureNormalEXT,
-  glTexturePageCommitmentEXT,
-  glTextureParameterIiv,
-  glTextureParameterIivEXT,
-  glTextureParameterIuiv,
-  glTextureParameterIuivEXT,
-  glTextureParameterf,
-  glTextureParameterfEXT,
-  glTextureParameterfv,
-  glTextureParameterfvEXT,
-  glTextureParameteri,
-  glTextureParameteriEXT,
-  glTextureParameteriv,
-  glTextureParameterivEXT,
-  glTextureRangeAPPLE,
-  glTextureRenderbufferEXT,
-  glTextureStorage1D,
-  glTextureStorage1DEXT,
-  glTextureStorage2D,
-  glTextureStorage2DEXT,
-  glTextureStorage2DMultisample,
-  glTextureStorage2DMultisampleEXT,
-  glTextureStorage3D,
-  glTextureStorage3DEXT,
-  glTextureStorage3DMultisample,
-  glTextureStorage3DMultisampleEXT,
-  glTextureStorageSparseAMD,
-  glTextureSubImage1D,
-  glTextureSubImage1DEXT,
-  glTextureSubImage2D,
-  glTextureSubImage2DEXT,
-  glTextureSubImage3D,
-  glTextureSubImage3DEXT,
-  glTextureView,
-  glTextureViewEXT,
-  glTextureViewOES,
-  glTrackMatrixNV,
-  glTransformFeedbackAttribsNV,
-  glTransformFeedbackBufferBase,
-  glTransformFeedbackBufferRange,
-  glTransformFeedbackStreamAttribsNV,
-  glTransformFeedbackVaryings,
-  glTransformFeedbackVaryingsEXT,
-  glTransformFeedbackVaryingsNV,
-  glTransformPathNV,
-  glTranslated,
-  glTranslatef,
-  glTranslatex,
-  glTranslatexOES,
-  glUniform1d,
-  glUniform1dv,
-  glUniform1f,
-  glUniform1fARB,
-  glUniform1fv,
-  glUniform1fvARB,
-  glUniform1i,
-  glUniform1i64ARB,
-  glUniform1i64NV,
-  glUniform1i64vARB,
-  glUniform1i64vNV,
-  glUniform1iARB,
-  glUniform1iv,
-  glUniform1ivARB,
-  glUniform1ui,
-  glUniform1ui64ARB,
-  glUniform1ui64NV,
-  glUniform1ui64vARB,
-  glUniform1ui64vNV,
-  glUniform1uiEXT,
-  glUniform1uiv,
-  glUniform1uivEXT,
-  glUniform2d,
-  glUniform2dv,
-  glUniform2f,
-  glUniform2fARB,
-  glUniform2fv,
-  glUniform2fvARB,
-  glUniform2i,
-  glUniform2i64ARB,
-  glUniform2i64NV,
-  glUniform2i64vARB,
-  glUniform2i64vNV,
-  glUniform2iARB,
-  glUniform2iv,
-  glUniform2ivARB,
-  glUniform2ui,
-  glUniform2ui64ARB
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glTextureBufferEXT ----------------------------------------------------------
-
-glTextureBufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTextureBufferEXT v1 v2 v3 v4 = liftIO $ dyn576 ptr_glTextureBufferEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureBufferEXT #-}
-ptr_glTextureBufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
-ptr_glTextureBufferEXT = unsafePerformIO $ getCommand "glTextureBufferEXT"
-
--- glTextureBufferRange --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>.
-glTextureBufferRange
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTextureBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn749 ptr_glTextureBufferRange v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTextureBufferRange #-}
-ptr_glTextureBufferRange :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTextureBufferRange = unsafePerformIO $ getCommand "glTextureBufferRange"
-
--- glTextureBufferRangeEXT -----------------------------------------------------
-
-glTextureBufferRangeEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTextureBufferRangeEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn750 ptr_glTextureBufferRangeEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTextureBufferRangeEXT #-}
-ptr_glTextureBufferRangeEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTextureBufferRangeEXT = unsafePerformIO $ getCommand "glTextureBufferRangeEXT"
-
--- glTextureColorMaskSGIS ------------------------------------------------------
-
-glTextureColorMaskSGIS
-  :: MonadIO m
-  => GLboolean -- ^ @red@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLboolean -- ^ @green@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLboolean -- ^ @blue@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLboolean -- ^ @alpha@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureColorMaskSGIS v1 v2 v3 v4 = liftIO $ dyn123 ptr_glTextureColorMaskSGIS v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureColorMaskSGIS #-}
-ptr_glTextureColorMaskSGIS :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
-ptr_glTextureColorMaskSGIS = unsafePerformIO $ getCommand "glTextureColorMaskSGIS"
-
--- glTextureImage1DEXT ---------------------------------------------------------
-
-glTextureImage1DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn751 ptr_glTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTextureImage1DEXT #-}
-ptr_glTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureImage1DEXT = unsafePerformIO $ getCommand "glTextureImage1DEXT"
-
--- glTextureImage2DEXT ---------------------------------------------------------
-
-glTextureImage2DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn752 ptr_glTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glTextureImage2DEXT #-}
-ptr_glTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureImage2DEXT = unsafePerformIO $ getCommand "glTextureImage2DEXT"
-
--- glTextureImage2DMultisampleCoverageNV ---------------------------------------
-
-glTextureImage2DMultisampleCoverageNV
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn753 ptr_glTextureImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureImage2DMultisampleCoverageNV #-}
-ptr_glTextureImage2DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleCoverageNV"
-
--- glTextureImage2DMultisampleNV -----------------------------------------------
-
-glTextureImage2DMultisampleNV
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureImage2DMultisampleNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn754 ptr_glTextureImage2DMultisampleNV v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTextureImage2DMultisampleNV #-}
-ptr_glTextureImage2DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureImage2DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleNV"
-
--- glTextureImage3DEXT ---------------------------------------------------------
-
-glTextureImage3DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLint -- ^ @border@ of type @CheckedInt32@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn755 ptr_glTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTextureImage3DEXT #-}
-ptr_glTextureImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureImage3DEXT = unsafePerformIO $ getCommand "glTextureImage3DEXT"
-
--- glTextureImage3DMultisampleCoverageNV ---------------------------------------
-
-glTextureImage3DMultisampleCoverageNV
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @coverageSamples@.
-  -> GLsizei -- ^ @colorSamples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn756 ptr_glTextureImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTextureImage3DMultisampleCoverageNV #-}
-ptr_glTextureImage3DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleCoverageNV"
-
--- glTextureImage3DMultisampleNV -----------------------------------------------
-
-glTextureImage3DMultisampleNV
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLint -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureImage3DMultisampleNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn757 ptr_glTextureImage3DMultisampleNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureImage3DMultisampleNV #-}
-ptr_glTextureImage3DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureImage3DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleNV"
-
--- glTextureLightEXT -----------------------------------------------------------
-
-glTextureLightEXT
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @LightTexturePNameEXT@.
-  -> m ()
-glTextureLightEXT v1 = liftIO $ dyn4 ptr_glTextureLightEXT v1
-
-{-# NOINLINE ptr_glTextureLightEXT #-}
-ptr_glTextureLightEXT :: FunPtr (GLenum -> IO ())
-ptr_glTextureLightEXT = unsafePerformIO $ getCommand "glTextureLightEXT"
-
--- glTextureMaterialEXT --------------------------------------------------------
-
-glTextureMaterialEXT
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @mode@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> m ()
-glTextureMaterialEXT v1 v2 = liftIO $ dyn51 ptr_glTextureMaterialEXT v1 v2
-
-{-# NOINLINE ptr_glTextureMaterialEXT #-}
-ptr_glTextureMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
-ptr_glTextureMaterialEXT = unsafePerformIO $ getCommand "glTextureMaterialEXT"
-
--- glTextureNormalEXT ----------------------------------------------------------
-
-glTextureNormalEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type @TextureNormalModeEXT@.
-  -> m ()
-glTextureNormalEXT v1 = liftIO $ dyn4 ptr_glTextureNormalEXT v1
-
-{-# NOINLINE ptr_glTextureNormalEXT #-}
-ptr_glTextureNormalEXT :: FunPtr (GLenum -> IO ())
-ptr_glTextureNormalEXT = unsafePerformIO $ getCommand "glTextureNormalEXT"
-
--- glTexturePageCommitmentEXT --------------------------------------------------
-
-glTexturePageCommitmentEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn758 ptr_glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexturePageCommitmentEXT #-}
-ptr_glTexturePageCommitmentEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexturePageCommitmentEXT = unsafePerformIO $ getCommand "glTexturePageCommitmentEXT"
-
--- glTextureParameterIiv -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterIiv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@.
-  -> m ()
-glTextureParameterIiv v1 v2 v3 = liftIO $ dyn335 ptr_glTextureParameterIiv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterIiv #-}
-ptr_glTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameterIiv = unsafePerformIO $ getCommand "glTextureParameterIiv"
-
--- glTextureParameterIivEXT ----------------------------------------------------
-
-glTextureParameterIivEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glTextureParameterIivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterIivEXT #-}
-ptr_glTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameterIivEXT = unsafePerformIO $ getCommand "glTextureParameterIivEXT"
-
--- glTextureParameterIuiv ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterIuiv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @params@.
-  -> m ()
-glTextureParameterIuiv v1 v2 v3 = liftIO $ dyn377 ptr_glTextureParameterIuiv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterIuiv #-}
-ptr_glTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTextureParameterIuiv = unsafePerformIO $ getCommand "glTextureParameterIuiv"
-
--- glTextureParameterIuivEXT ---------------------------------------------------
-
-glTextureParameterIuivEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glTextureParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn422 ptr_glTextureParameterIuivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterIuivEXT #-}
-ptr_glTextureParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTextureParameterIuivEXT = unsafePerformIO $ getCommand "glTextureParameterIuivEXT"
-
--- glTextureParameterf ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterf
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glTextureParameterf v1 v2 v3 = liftIO $ dyn489 ptr_glTextureParameterf v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterf #-}
-ptr_glTextureParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-ptr_glTextureParameterf = unsafePerformIO $ getCommand "glTextureParameterf"
-
--- glTextureParameterfEXT ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTextureParameterfvEXT'.
-glTextureParameterfEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
-  -> m ()
-glTextureParameterfEXT v1 v2 v3 v4 = liftIO $ dyn759 ptr_glTextureParameterfEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterfEXT #-}
-ptr_glTextureParameterfEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
-ptr_glTextureParameterfEXT = unsafePerformIO $ getCommand "glTextureParameterfEXT"
-
--- glTextureParameterfv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterfv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @param@.
-  -> m ()
-glTextureParameterfv v1 v2 v3 = liftIO $ dyn351 ptr_glTextureParameterfv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterfv #-}
-ptr_glTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTextureParameterfv = unsafePerformIO $ getCommand "glTextureParameterfv"
-
--- glTextureParameterfvEXT -----------------------------------------------------
-
-glTextureParameterfvEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
-  -> m ()
-glTextureParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn423 ptr_glTextureParameterfvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterfvEXT #-}
-ptr_glTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTextureParameterfvEXT = unsafePerformIO $ getCommand "glTextureParameterfvEXT"
-
--- glTextureParameteri ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameteri
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glTextureParameteri v1 v2 v3 = liftIO $ dyn490 ptr_glTextureParameteri v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameteri #-}
-ptr_glTextureParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glTextureParameteri = unsafePerformIO $ getCommand "glTextureParameteri"
-
--- glTextureParameteriEXT ------------------------------------------------------
-
--- | The vector equivalent of this command is 'glTextureParameterivEXT'.
-glTextureParameteriEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> GLint -- ^ @param@ of type @CheckedInt32@.
-  -> m ()
-glTextureParameteriEXT v1 v2 v3 v4 = liftIO $ dyn760 ptr_glTextureParameteriEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameteriEXT #-}
-ptr_glTextureParameteriEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
-ptr_glTextureParameteriEXT = unsafePerformIO $ getCommand "glTextureParameteriEXT"
-
--- glTextureParameteriv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameteriv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @param@.
-  -> m ()
-glTextureParameteriv v1 v2 v3 = liftIO $ dyn335 ptr_glTextureParameteriv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameteriv #-}
-ptr_glTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameteriv = unsafePerformIO $ getCommand "glTextureParameteriv"
-
--- glTextureParameterivEXT -----------------------------------------------------
-
-glTextureParameterivEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTextureParameterivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glTextureParameterivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterivEXT #-}
-ptr_glTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameterivEXT = unsafePerformIO $ getCommand "glTextureParameterivEXT"
-
--- glTextureRangeAPPLE ---------------------------------------------------------
-
-glTextureRangeAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> GLsizei -- ^ @length@.
-  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
-  -> m ()
-glTextureRangeAPPLE v1 v2 v3 = liftIO $ dyn46 ptr_glTextureRangeAPPLE v1 v2 v3
-
-{-# NOINLINE ptr_glTextureRangeAPPLE #-}
-ptr_glTextureRangeAPPLE :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glTextureRangeAPPLE = unsafePerformIO $ getCommand "glTextureRangeAPPLE"
-
--- glTextureRenderbufferEXT ----------------------------------------------------
-
-glTextureRenderbufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLuint -- ^ @renderbuffer@.
-  -> m ()
-glTextureRenderbufferEXT v1 v2 v3 = liftIO $ dyn715 ptr_glTextureRenderbufferEXT v1 v2 v3
-
-{-# NOINLINE ptr_glTextureRenderbufferEXT #-}
-ptr_glTextureRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
-ptr_glTextureRenderbufferEXT = unsafePerformIO $ getCommand "glTextureRenderbufferEXT"
-
--- glTextureStorage1D ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>.
-glTextureStorage1D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> m ()
-glTextureStorage1D v1 v2 v3 v4 = liftIO $ dyn761 ptr_glTextureStorage1D v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureStorage1D #-}
-ptr_glTextureStorage1D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
-ptr_glTextureStorage1D = unsafePerformIO $ getCommand "glTextureStorage1D"
-
--- glTextureStorage1DEXT -------------------------------------------------------
-
-glTextureStorage1DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> m ()
-glTextureStorage1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn762 ptr_glTextureStorage1DEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTextureStorage1DEXT #-}
-ptr_glTextureStorage1DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
-ptr_glTextureStorage1DEXT = unsafePerformIO $ getCommand "glTextureStorage1DEXT"
-
--- glTextureStorage2D ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
-glTextureStorage2D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTextureStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn593 ptr_glTextureStorage2D v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTextureStorage2D #-}
-ptr_glTextureStorage2D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage2D = unsafePerformIO $ getCommand "glTextureStorage2D"
-
--- glTextureStorage2DEXT -------------------------------------------------------
-
-glTextureStorage2DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTextureStorage2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn763 ptr_glTextureStorage2DEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTextureStorage2DEXT #-}
-ptr_glTextureStorage2DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage2DEXT = unsafePerformIO $ getCommand "glTextureStorage2DEXT"
-
--- glTextureStorage2DMultisample -----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
-glTextureStorage2DMultisample
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedsamplelocations@.
-  -> m ()
-glTextureStorage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn764 ptr_glTextureStorage2DMultisample v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTextureStorage2DMultisample #-}
-ptr_glTextureStorage2DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureStorage2DMultisample = unsafePerformIO $ getCommand "glTextureStorage2DMultisample"
-
--- glTextureStorage2DMultisampleEXT --------------------------------------------
-
-glTextureStorage2DMultisampleEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureStorage2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn765 ptr_glTextureStorage2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTextureStorage2DMultisampleEXT #-}
-ptr_glTextureStorage2DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureStorage2DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage2DMultisampleEXT"
-
--- glTextureStorage3D ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>.
-glTextureStorage3D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> m ()
-glTextureStorage3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn766 ptr_glTextureStorage3D v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTextureStorage3D #-}
-ptr_glTextureStorage3D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage3D = unsafePerformIO $ getCommand "glTextureStorage3D"
-
--- glTextureStorage3DEXT -------------------------------------------------------
-
-glTextureStorage3DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> m ()
-glTextureStorage3DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn767 ptr_glTextureStorage3DEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTextureStorage3DEXT #-}
-ptr_glTextureStorage3DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage3DEXT = unsafePerformIO $ getCommand "glTextureStorage3DEXT"
-
--- glTextureStorage3DMultisample -----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>.
-glTextureStorage3DMultisample
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedsamplelocations@.
-  -> m ()
-glTextureStorage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn768 ptr_glTextureStorage3DMultisample v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTextureStorage3DMultisample #-}
-ptr_glTextureStorage3DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureStorage3DMultisample = unsafePerformIO $ getCommand "glTextureStorage3DMultisample"
-
--- glTextureStorage3DMultisampleEXT --------------------------------------------
-
-glTextureStorage3DMultisampleEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @samples@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> m ()
-glTextureStorage3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn769 ptr_glTextureStorage3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureStorage3DMultisampleEXT #-}
-ptr_glTextureStorage3DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTextureStorage3DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage3DMultisampleEXT"
-
--- glTextureStorageSparseAMD ---------------------------------------------------
-
-glTextureStorageSparseAMD
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLenum -- ^ @internalFormat@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLsizei -- ^ @layers@.
-  -> GLbitfield -- ^ @flags@.
-  -> m ()
-glTextureStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn770 ptr_glTextureStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureStorageSparseAMD #-}
-ptr_glTextureStorageSparseAMD :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
-ptr_glTextureStorageSparseAMD = unsafePerformIO $ getCommand "glTextureStorageSparseAMD"
-
--- glTextureSubImage1D ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>.
-glTextureSubImage1D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @pixels@.
-  -> m ()
-glTextureSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn771 ptr_glTextureSubImage1D v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glTextureSubImage1D #-}
-ptr_glTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage1D = unsafePerformIO $ getCommand "glTextureSubImage1D"
-
--- glTextureSubImage1DEXT ------------------------------------------------------
-
-glTextureSubImage1DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
-  -> m ()
-glTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn772 ptr_glTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureSubImage1DEXT #-}
-ptr_glTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage1DEXT = unsafePerformIO $ getCommand "glTextureSubImage1DEXT"
-
--- glTextureSubImage2D ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>.
-glTextureSubImage2D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @pixels@.
-  -> m ()
-glTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn773 ptr_glTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTextureSubImage2D #-}
-ptr_glTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage2D = unsafePerformIO $ getCommand "glTextureSubImage2D"
-
--- glTextureSubImage2DEXT ------------------------------------------------------
-
-glTextureSubImage2DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
-  -> m ()
-glTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn774 ptr_glTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
-
-{-# NOINLINE ptr_glTextureSubImage2DEXT #-}
-ptr_glTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage2DEXT = unsafePerformIO $ getCommand "glTextureSubImage2DEXT"
-
--- glTextureSubImage3D ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>.
-glTextureSubImage3D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@.
-  -> GLenum -- ^ @type@.
-  -> Ptr a -- ^ @pixels@.
-  -> m ()
-glTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn91 ptr_glTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
-
-{-# NOINLINE ptr_glTextureSubImage3D #-}
-ptr_glTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage3D = unsafePerformIO $ getCommand "glTextureSubImage3D"
-
--- glTextureSubImage3DEXT ------------------------------------------------------
-
-glTextureSubImage3DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLint -- ^ @level@ of type @CheckedInt32@.
-  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
-  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
-  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
-  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
-  -> m ()
-glTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn775 ptr_glTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
-
-{-# NOINLINE ptr_glTextureSubImage3DEXT #-}
-ptr_glTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
-ptr_glTextureSubImage3DEXT = unsafePerformIO $ getCommand "glTextureSubImage3DEXT"
-
--- glTextureView ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureView.xhtml OpenGL 4.x>.
-glTextureView
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLuint -- ^ @origtexture@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @minlevel@.
-  -> GLuint -- ^ @numlevels@.
-  -> GLuint -- ^ @minlayer@.
-  -> GLuint -- ^ @numlayers@.
-  -> m ()
-glTextureView v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn776 ptr_glTextureView v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureView #-}
-ptr_glTextureView :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glTextureView = unsafePerformIO $ getCommand "glTextureView"
-
--- glTextureViewEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glTextureView'.
-glTextureViewEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLuint -- ^ @origtexture@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @minlevel@.
-  -> GLuint -- ^ @numlevels@.
-  -> GLuint -- ^ @minlayer@.
-  -> GLuint -- ^ @numlayers@.
-  -> m ()
-glTextureViewEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn776 ptr_glTextureViewEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureViewEXT #-}
-ptr_glTextureViewEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glTextureViewEXT = unsafePerformIO $ getCommand "glTextureViewEXT"
-
--- glTextureViewOES ------------------------------------------------------------
-
--- | This command is an alias for 'glTextureView'.
-glTextureViewOES
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLuint -- ^ @origtexture@.
-  -> GLenum -- ^ @internalformat@.
-  -> GLuint -- ^ @minlevel@.
-  -> GLuint -- ^ @numlevels@.
-  -> GLuint -- ^ @minlayer@.
-  -> GLuint -- ^ @numlayers@.
-  -> m ()
-glTextureViewOES v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn776 ptr_glTextureViewOES v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glTextureViewOES #-}
-ptr_glTextureViewOES :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glTextureViewOES = unsafePerformIO $ getCommand "glTextureViewOES"
-
--- glTrackMatrixNV -------------------------------------------------------------
-
-glTrackMatrixNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
-  -> GLuint -- ^ @address@.
-  -> GLenum -- ^ @matrix@ of type @VertexAttribEnumNV@.
-  -> GLenum -- ^ @transform@ of type @VertexAttribEnumNV@.
-  -> m ()
-glTrackMatrixNV v1 v2 v3 v4 = liftIO $ dyn777 ptr_glTrackMatrixNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTrackMatrixNV #-}
-ptr_glTrackMatrixNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
-ptr_glTrackMatrixNV = unsafePerformIO $ getCommand "glTrackMatrixNV"
-
--- glTransformFeedbackAttribsNV ------------------------------------------------
-
-glTransformFeedbackAttribsNV
-  :: MonadIO m
-  => GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @attribs@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> GLenum -- ^ @bufferMode@.
-  -> m ()
-glTransformFeedbackAttribsNV v1 v2 v3 = liftIO $ dyn778 ptr_glTransformFeedbackAttribsNV v1 v2 v3
-
-{-# NOINLINE ptr_glTransformFeedbackAttribsNV #-}
-ptr_glTransformFeedbackAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
-ptr_glTransformFeedbackAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackAttribsNV"
-
--- glTransformFeedbackBufferBase -----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferBase.xhtml OpenGL 4.x>.
-glTransformFeedbackBufferBase
-  :: MonadIO m
-  => GLuint -- ^ @xfb@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glTransformFeedbackBufferBase v1 v2 v3 = liftIO $ dyn102 ptr_glTransformFeedbackBufferBase v1 v2 v3
-
-{-# NOINLINE ptr_glTransformFeedbackBufferBase #-}
-ptr_glTransformFeedbackBufferBase :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glTransformFeedbackBufferBase = unsafePerformIO $ getCommand "glTransformFeedbackBufferBase"
-
--- glTransformFeedbackBufferRange ----------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferRange.xhtml OpenGL 4.x>.
-glTransformFeedbackBufferRange
-  :: MonadIO m
-  => GLuint -- ^ @xfb@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> m ()
-glTransformFeedbackBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn779 ptr_glTransformFeedbackBufferRange v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTransformFeedbackBufferRange #-}
-ptr_glTransformFeedbackBufferRange :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glTransformFeedbackBufferRange = unsafePerformIO $ getCommand "glTransformFeedbackBufferRange"
-
--- glTransformFeedbackStreamAttribsNV ------------------------------------------
-
-glTransformFeedbackStreamAttribsNV
-  :: MonadIO m
-  => GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @attribs@ pointing to @count@ elements of type @GLint@.
-  -> GLsizei -- ^ @nbuffers@.
-  -> Ptr GLint -- ^ @bufstreams@ pointing to @nbuffers@ elements of type @GLint@.
-  -> GLenum -- ^ @bufferMode@.
-  -> m ()
-glTransformFeedbackStreamAttribsNV v1 v2 v3 v4 v5 = liftIO $ dyn780 ptr_glTransformFeedbackStreamAttribsNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTransformFeedbackStreamAttribsNV #-}
-ptr_glTransformFeedbackStreamAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
-ptr_glTransformFeedbackStreamAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackStreamAttribsNV"
-
--- glTransformFeedbackVaryings -------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTransformFeedbackVaryings.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackVaryings.xhtml OpenGL 4.x>.
-glTransformFeedbackVaryings
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
-  -> GLenum -- ^ @bufferMode@.
-  -> m ()
-glTransformFeedbackVaryings v1 v2 v3 v4 = liftIO $ dyn781 ptr_glTransformFeedbackVaryings v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTransformFeedbackVaryings #-}
-ptr_glTransformFeedbackVaryings :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
-ptr_glTransformFeedbackVaryings = unsafePerformIO $ getCommand "glTransformFeedbackVaryings"
-
--- glTransformFeedbackVaryingsEXT ----------------------------------------------
-
--- | This command is an alias for 'glTransformFeedbackVaryings'.
-glTransformFeedbackVaryingsEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
-  -> GLenum -- ^ @bufferMode@.
-  -> m ()
-glTransformFeedbackVaryingsEXT v1 v2 v3 v4 = liftIO $ dyn781 ptr_glTransformFeedbackVaryingsEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTransformFeedbackVaryingsEXT #-}
-ptr_glTransformFeedbackVaryingsEXT :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
-ptr_glTransformFeedbackVaryingsEXT = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsEXT"
-
--- glTransformFeedbackVaryingsNV -----------------------------------------------
-
-glTransformFeedbackVaryingsNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @locations@ pointing to @count@ elements of type @GLint@.
-  -> GLenum -- ^ @bufferMode@.
-  -> m ()
-glTransformFeedbackVaryingsNV v1 v2 v3 v4 = liftIO $ dyn782 ptr_glTransformFeedbackVaryingsNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTransformFeedbackVaryingsNV #-}
-ptr_glTransformFeedbackVaryingsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
-ptr_glTransformFeedbackVaryingsNV = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsNV"
-
--- glTransformPathNV -----------------------------------------------------------
-
-glTransformPathNV
-  :: MonadIO m
-  => GLuint -- ^ @resultPath@ of type @Path@.
-  -> GLuint -- ^ @srcPath@ of type @Path@.
-  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
-  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(transformType)@ elements of type @GLfloat@.
-  -> m ()
-glTransformPathNV v1 v2 v3 v4 = liftIO $ dyn447 ptr_glTransformPathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTransformPathNV #-}
-ptr_glTransformPathNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glTransformPathNV = unsafePerformIO $ getCommand "glTransformPathNV"
-
--- glTranslated ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>.
-glTranslated
-  :: MonadIO m
-  => GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glTranslated v1 v2 v3 = liftIO $ dyn38 ptr_glTranslated v1 v2 v3
-
-{-# NOINLINE ptr_glTranslated #-}
-ptr_glTranslated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glTranslated = unsafePerformIO $ getCommand "glTranslated"
-
--- glTranslatef ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>.
-glTranslatef
-  :: MonadIO m
-  => GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glTranslatef v1 v2 v3 = liftIO $ dyn40 ptr_glTranslatef v1 v2 v3
-
-{-# NOINLINE ptr_glTranslatef #-}
-ptr_glTranslatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glTranslatef = unsafePerformIO $ getCommand "glTranslatef"
-
--- glTranslatex ----------------------------------------------------------------
-
-glTranslatex
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glTranslatex v1 v2 v3 = liftIO $ dyn106 ptr_glTranslatex v1 v2 v3
-
-{-# NOINLINE ptr_glTranslatex #-}
-ptr_glTranslatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glTranslatex = unsafePerformIO $ getCommand "glTranslatex"
-
--- glTranslatexOES -------------------------------------------------------------
-
-glTranslatexOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glTranslatexOES v1 v2 v3 = liftIO $ dyn106 ptr_glTranslatexOES v1 v2 v3
-
-{-# NOINLINE ptr_glTranslatexOES #-}
-ptr_glTranslatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glTranslatexOES = unsafePerformIO $ getCommand "glTranslatexOES"
-
--- glUniform1d -----------------------------------------------------------------
-
-glUniform1d
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glUniform1d v1 v2 = liftIO $ dyn783 ptr_glUniform1d v1 v2
-
-{-# NOINLINE ptr_glUniform1d #-}
-ptr_glUniform1d :: FunPtr (GLint -> GLdouble -> IO ())
-ptr_glUniform1d = unsafePerformIO $ getCommand "glUniform1d"
-
--- glUniform1dv ----------------------------------------------------------------
-
-glUniform1dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*1@ elements of type @GLdouble@.
-  -> m ()
-glUniform1dv v1 v2 v3 = liftIO $ dyn784 ptr_glUniform1dv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1dv #-}
-ptr_glUniform1dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glUniform1dv = unsafePerformIO $ getCommand "glUniform1dv"
-
--- glUniform1f -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1f
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> m ()
-glUniform1f v1 v2 = liftIO $ dyn785 ptr_glUniform1f v1 v2
-
-{-# NOINLINE ptr_glUniform1f #-}
-ptr_glUniform1f :: FunPtr (GLint -> GLfloat -> IO ())
-ptr_glUniform1f = unsafePerformIO $ getCommand "glUniform1f"
-
--- glUniform1fARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1f'.
-glUniform1fARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> m ()
-glUniform1fARB v1 v2 = liftIO $ dyn785 ptr_glUniform1fARB v1 v2
-
-{-# NOINLINE ptr_glUniform1fARB #-}
-ptr_glUniform1fARB :: FunPtr (GLint -> GLfloat -> IO ())
-ptr_glUniform1fARB = unsafePerformIO $ getCommand "glUniform1fARB"
-
--- glUniform1fv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
-  -> m ()
-glUniform1fv v1 v2 v3 = liftIO $ dyn786 ptr_glUniform1fv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1fv #-}
-ptr_glUniform1fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform1fv = unsafePerformIO $ getCommand "glUniform1fv"
-
--- glUniform1fvARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1fv'.
-glUniform1fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
-  -> m ()
-glUniform1fvARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform1fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1fvARB #-}
-ptr_glUniform1fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform1fvARB = unsafePerformIO $ getCommand "glUniform1fvARB"
-
--- glUniform1i -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1i
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> m ()
-glUniform1i v1 v2 = liftIO $ dyn266 ptr_glUniform1i v1 v2
-
-{-# NOINLINE ptr_glUniform1i #-}
-ptr_glUniform1i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glUniform1i = unsafePerformIO $ getCommand "glUniform1i"
-
--- glUniform1i64ARB ------------------------------------------------------------
-
-glUniform1i64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> m ()
-glUniform1i64ARB v1 v2 = liftIO $ dyn787 ptr_glUniform1i64ARB v1 v2
-
-{-# NOINLINE ptr_glUniform1i64ARB #-}
-ptr_glUniform1i64ARB :: FunPtr (GLint -> GLint64 -> IO ())
-ptr_glUniform1i64ARB = unsafePerformIO $ getCommand "glUniform1i64ARB"
-
--- glUniform1i64NV -------------------------------------------------------------
-
-glUniform1i64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> m ()
-glUniform1i64NV v1 v2 = liftIO $ dyn788 ptr_glUniform1i64NV v1 v2
-
-{-# NOINLINE ptr_glUniform1i64NV #-}
-ptr_glUniform1i64NV :: FunPtr (GLint -> GLint64EXT -> IO ())
-ptr_glUniform1i64NV = unsafePerformIO $ getCommand "glUniform1i64NV"
-
--- glUniform1i64vARB -----------------------------------------------------------
-
-glUniform1i64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*1@ elements of type @GLint64@.
-  -> m ()
-glUniform1i64vARB v1 v2 v3 = liftIO $ dyn789 ptr_glUniform1i64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1i64vARB #-}
-ptr_glUniform1i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glUniform1i64vARB = unsafePerformIO $ getCommand "glUniform1i64vARB"
-
--- glUniform1i64vNV ------------------------------------------------------------
-
-glUniform1i64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLint64EXT@.
-  -> m ()
-glUniform1i64vNV v1 v2 v3 = liftIO $ dyn790 ptr_glUniform1i64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1i64vNV #-}
-ptr_glUniform1i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glUniform1i64vNV = unsafePerformIO $ getCommand "glUniform1i64vNV"
-
--- glUniform1iARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1i'.
-glUniform1iARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> m ()
-glUniform1iARB v1 v2 = liftIO $ dyn266 ptr_glUniform1iARB v1 v2
-
-{-# NOINLINE ptr_glUniform1iARB #-}
-ptr_glUniform1iARB :: FunPtr (GLint -> GLint -> IO ())
-ptr_glUniform1iARB = unsafePerformIO $ getCommand "glUniform1iARB"
-
--- glUniform1iv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1iv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
-  -> m ()
-glUniform1iv v1 v2 v3 = liftIO $ dyn791 ptr_glUniform1iv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1iv #-}
-ptr_glUniform1iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform1iv = unsafePerformIO $ getCommand "glUniform1iv"
-
--- glUniform1ivARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1iv'.
-glUniform1ivARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
-  -> m ()
-glUniform1ivARB v1 v2 v3 = liftIO $ dyn791 ptr_glUniform1ivARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1ivARB #-}
-ptr_glUniform1ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform1ivARB = unsafePerformIO $ getCommand "glUniform1ivARB"
-
--- glUniform1ui ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1ui
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> m ()
-glUniform1ui v1 v2 = liftIO $ dyn792 ptr_glUniform1ui v1 v2
-
-{-# NOINLINE ptr_glUniform1ui #-}
-ptr_glUniform1ui :: FunPtr (GLint -> GLuint -> IO ())
-ptr_glUniform1ui = unsafePerformIO $ getCommand "glUniform1ui"
-
--- glUniform1ui64ARB -----------------------------------------------------------
-
-glUniform1ui64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> m ()
-glUniform1ui64ARB v1 v2 = liftIO $ dyn793 ptr_glUniform1ui64ARB v1 v2
-
-{-# NOINLINE ptr_glUniform1ui64ARB #-}
-ptr_glUniform1ui64ARB :: FunPtr (GLint -> GLuint64 -> IO ())
-ptr_glUniform1ui64ARB = unsafePerformIO $ getCommand "glUniform1ui64ARB"
-
--- glUniform1ui64NV ------------------------------------------------------------
-
-glUniform1ui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> m ()
-glUniform1ui64NV v1 v2 = liftIO $ dyn794 ptr_glUniform1ui64NV v1 v2
-
-{-# NOINLINE ptr_glUniform1ui64NV #-}
-ptr_glUniform1ui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
-ptr_glUniform1ui64NV = unsafePerformIO $ getCommand "glUniform1ui64NV"
-
--- glUniform1ui64vARB ----------------------------------------------------------
-
-glUniform1ui64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*1@ elements of type @GLuint64@.
-  -> m ()
-glUniform1ui64vARB v1 v2 v3 = liftIO $ dyn795 ptr_glUniform1ui64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1ui64vARB #-}
-ptr_glUniform1ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniform1ui64vARB = unsafePerformIO $ getCommand "glUniform1ui64vARB"
-
--- glUniform1ui64vNV -----------------------------------------------------------
-
-glUniform1ui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
-  -> m ()
-glUniform1ui64vNV v1 v2 v3 = liftIO $ dyn796 ptr_glUniform1ui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1ui64vNV #-}
-ptr_glUniform1ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glUniform1ui64vNV = unsafePerformIO $ getCommand "glUniform1ui64vNV"
-
--- glUniform1uiEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1ui'.
-glUniform1uiEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> m ()
-glUniform1uiEXT v1 v2 = liftIO $ dyn792 ptr_glUniform1uiEXT v1 v2
-
-{-# NOINLINE ptr_glUniform1uiEXT #-}
-ptr_glUniform1uiEXT :: FunPtr (GLint -> GLuint -> IO ())
-ptr_glUniform1uiEXT = unsafePerformIO $ getCommand "glUniform1uiEXT"
-
--- glUniform1uiv ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform1uiv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
-  -> m ()
-glUniform1uiv v1 v2 v3 = liftIO $ dyn797 ptr_glUniform1uiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1uiv #-}
-ptr_glUniform1uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform1uiv = unsafePerformIO $ getCommand "glUniform1uiv"
-
--- glUniform1uivEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glUniform1uiv'.
-glUniform1uivEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
-  -> m ()
-glUniform1uivEXT v1 v2 v3 = liftIO $ dyn797 ptr_glUniform1uivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform1uivEXT #-}
-ptr_glUniform1uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform1uivEXT = unsafePerformIO $ getCommand "glUniform1uivEXT"
-
--- glUniform2d -----------------------------------------------------------------
-
-glUniform2d
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glUniform2d v1 v2 v3 = liftIO $ dyn504 ptr_glUniform2d v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2d #-}
-ptr_glUniform2d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
-ptr_glUniform2d = unsafePerformIO $ getCommand "glUniform2d"
-
--- glUniform2dv ----------------------------------------------------------------
-
-glUniform2dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
-  -> m ()
-glUniform2dv v1 v2 v3 = liftIO $ dyn784 ptr_glUniform2dv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2dv #-}
-ptr_glUniform2dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glUniform2dv = unsafePerformIO $ getCommand "glUniform2dv"
-
--- glUniform2f -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2f
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> m ()
-glUniform2f v1 v2 v3 = liftIO $ dyn505 ptr_glUniform2f v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2f #-}
-ptr_glUniform2f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform2f = unsafePerformIO $ getCommand "glUniform2f"
-
--- glUniform2fARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2f'.
-glUniform2fARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> m ()
-glUniform2fARB v1 v2 v3 = liftIO $ dyn505 ptr_glUniform2fARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2fARB #-}
-ptr_glUniform2fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform2fARB = unsafePerformIO $ getCommand "glUniform2fARB"
-
--- glUniform2fv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
-  -> m ()
-glUniform2fv v1 v2 v3 = liftIO $ dyn786 ptr_glUniform2fv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2fv #-}
-ptr_glUniform2fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform2fv = unsafePerformIO $ getCommand "glUniform2fv"
-
--- glUniform2fvARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2fv'.
-glUniform2fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
-  -> m ()
-glUniform2fvARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform2fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2fvARB #-}
-ptr_glUniform2fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform2fvARB = unsafePerformIO $ getCommand "glUniform2fvARB"
-
--- glUniform2i -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2i
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> m ()
-glUniform2i v1 v2 v3 = liftIO $ dyn42 ptr_glUniform2i v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2i #-}
-ptr_glUniform2i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glUniform2i = unsafePerformIO $ getCommand "glUniform2i"
-
--- glUniform2i64ARB ------------------------------------------------------------
-
-glUniform2i64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> m ()
-glUniform2i64ARB v1 v2 v3 = liftIO $ dyn798 ptr_glUniform2i64ARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2i64ARB #-}
-ptr_glUniform2i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> IO ())
-ptr_glUniform2i64ARB = unsafePerformIO $ getCommand "glUniform2i64ARB"
-
--- glUniform2i64NV -------------------------------------------------------------
-
-glUniform2i64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> m ()
-glUniform2i64NV v1 v2 v3 = liftIO $ dyn799 ptr_glUniform2i64NV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2i64NV #-}
-ptr_glUniform2i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glUniform2i64NV = unsafePerformIO $ getCommand "glUniform2i64NV"
-
--- glUniform2i64vARB -----------------------------------------------------------
-
-glUniform2i64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*2@ elements of type @GLint64@.
-  -> m ()
-glUniform2i64vARB v1 v2 v3 = liftIO $ dyn789 ptr_glUniform2i64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2i64vARB #-}
-ptr_glUniform2i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glUniform2i64vARB = unsafePerformIO $ getCommand "glUniform2i64vARB"
-
--- glUniform2i64vNV ------------------------------------------------------------
-
-glUniform2i64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
-  -> m ()
-glUniform2i64vNV v1 v2 v3 = liftIO $ dyn790 ptr_glUniform2i64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2i64vNV #-}
-ptr_glUniform2i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glUniform2i64vNV = unsafePerformIO $ getCommand "glUniform2i64vNV"
-
--- glUniform2iARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2i'.
-glUniform2iARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> m ()
-glUniform2iARB v1 v2 v3 = liftIO $ dyn42 ptr_glUniform2iARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2iARB #-}
-ptr_glUniform2iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glUniform2iARB = unsafePerformIO $ getCommand "glUniform2iARB"
-
--- glUniform2iv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2iv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
-  -> m ()
-glUniform2iv v1 v2 v3 = liftIO $ dyn791 ptr_glUniform2iv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2iv #-}
-ptr_glUniform2iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform2iv = unsafePerformIO $ getCommand "glUniform2iv"
-
--- glUniform2ivARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2iv'.
-glUniform2ivARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
-  -> m ()
-glUniform2ivARB v1 v2 v3 = liftIO $ dyn791 ptr_glUniform2ivARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ivARB #-}
-ptr_glUniform2ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform2ivARB = unsafePerformIO $ getCommand "glUniform2ivARB"
-
--- glUniform2ui ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2ui
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> m ()
-glUniform2ui v1 v2 v3 = liftIO $ dyn800 ptr_glUniform2ui v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ui #-}
-ptr_glUniform2ui :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
-ptr_glUniform2ui = unsafePerformIO $ getCommand "glUniform2ui"
-
--- glUniform2ui64ARB -----------------------------------------------------------
-
-glUniform2ui64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> m ()
-glUniform2ui64ARB v1 v2 v3 = liftIO $ dyn801 ptr_glUniform2ui64ARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ui64ARB #-}
-ptr_glUniform2ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> IO ())
-ptr_glUniform2ui64ARB = unsafePerformIO $ getCommand "glUniform2ui64ARB"
+  glTexGenxvOES,
+  glTexImage1D,
+  glTexImage2D,
+  glTexImage2DMultisample,
+  glTexImage2DMultisampleCoverageNV,
+  glTexImage3D,
+  glTexImage3DEXT,
+  glTexImage3DMultisample,
+  glTexImage3DMultisampleCoverageNV,
+  glTexImage3DOES,
+  glTexImage4DSGIS,
+  glTexPageCommitmentARB,
+  glTexPageCommitmentEXT,
+  glTexParameterIiv,
+  glTexParameterIivEXT,
+  glTexParameterIivOES,
+  glTexParameterIuiv,
+  glTexParameterIuivEXT,
+  glTexParameterIuivOES,
+  glTexParameterf,
+  glTexParameterfv,
+  glTexParameteri,
+  glTexParameteriv,
+  glTexParameterx,
+  glTexParameterxOES,
+  glTexParameterxv,
+  glTexParameterxvOES,
+  glTexRenderbufferNV,
+  glTexStorage1D,
+  glTexStorage1DEXT,
+  glTexStorage2D,
+  glTexStorage2DEXT,
+  glTexStorage2DMultisample,
+  glTexStorage3D,
+  glTexStorage3DEXT,
+  glTexStorage3DMultisample,
+  glTexStorage3DMultisampleOES,
+  glTexStorageMem1DEXT,
+  glTexStorageMem2DEXT,
+  glTexStorageMem2DMultisampleEXT,
+  glTexStorageMem3DEXT,
+  glTexStorageMem3DMultisampleEXT,
+  glTexStorageSparseAMD,
+  glTexSubImage1D,
+  glTexSubImage1DEXT,
+  glTexSubImage2D,
+  glTexSubImage2DEXT,
+  glTexSubImage3D,
+  glTexSubImage3DEXT,
+  glTexSubImage3DOES,
+  glTexSubImage4DSGIS,
+  glTextureBarrier,
+  glTextureBarrierNV,
+  glTextureBuffer,
+  glTextureBufferEXT,
+  glTextureBufferRange,
+  glTextureBufferRangeEXT,
+  glTextureColorMaskSGIS,
+  glTextureImage1DEXT,
+  glTextureImage2DEXT,
+  glTextureImage2DMultisampleCoverageNV,
+  glTextureImage2DMultisampleNV,
+  glTextureImage3DEXT,
+  glTextureImage3DMultisampleCoverageNV,
+  glTextureImage3DMultisampleNV,
+  glTextureLightEXT,
+  glTextureMaterialEXT,
+  glTextureNormalEXT,
+  glTexturePageCommitmentEXT,
+  glTextureParameterIiv,
+  glTextureParameterIivEXT,
+  glTextureParameterIuiv,
+  glTextureParameterIuivEXT,
+  glTextureParameterf,
+  glTextureParameterfEXT,
+  glTextureParameterfv,
+  glTextureParameterfvEXT,
+  glTextureParameteri,
+  glTextureParameteriEXT,
+  glTextureParameteriv,
+  glTextureParameterivEXT,
+  glTextureRangeAPPLE,
+  glTextureRenderbufferEXT,
+  glTextureStorage1D,
+  glTextureStorage1DEXT,
+  glTextureStorage2D,
+  glTextureStorage2DEXT,
+  glTextureStorage2DMultisample,
+  glTextureStorage2DMultisampleEXT,
+  glTextureStorage3D,
+  glTextureStorage3DEXT,
+  glTextureStorage3DMultisample,
+  glTextureStorage3DMultisampleEXT,
+  glTextureStorageMem1DEXT,
+  glTextureStorageMem2DEXT,
+  glTextureStorageMem2DMultisampleEXT,
+  glTextureStorageMem3DEXT,
+  glTextureStorageMem3DMultisampleEXT,
+  glTextureStorageSparseAMD,
+  glTextureSubImage1D
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glTexGenxvOES ---------------------------------------------------------------
+
+glTexGenxvOES
+  :: MonadIO m
+  => GLenum -- ^ @coord@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexGenxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glTexGenxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexGenxvOES #-}
+ptr_glTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexGenxvOES = unsafePerformIO $ getCommand "glTexGenxvOES"
+
+-- glTexImage1D ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage1D.xhtml OpenGL 4.x>.
+glTexImage1D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glTexImage1D v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn756 ptr_glTexImage1D v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexImage1D #-}
+ptr_glTexImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage1D = unsafePerformIO $ getCommand "glTexImage1D"
+
+-- glTexImage2D ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2D.xhtml OpenGL 4.x>.
+glTexImage2D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn757 ptr_glTexImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexImage2D #-}
+ptr_glTexImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage2D = unsafePerformIO $ getCommand "glTexImage2D"
+
+-- glTexImage2DMultisample -----------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2DMultisample.xhtml OpenGL 4.x>.
+glTexImage2DMultisample
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexImage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn758 ptr_glTexImage2DMultisample v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTexImage2DMultisample #-}
+ptr_glTexImage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexImage2DMultisample = unsafePerformIO $ getCommand "glTexImage2DMultisample"
+
+-- glTexImage2DMultisampleCoverageNV -------------------------------------------
+
+glTexImage2DMultisampleCoverageNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn759 ptr_glTexImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexImage2DMultisampleCoverageNV #-}
+ptr_glTexImage2DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage2DMultisampleCoverageNV"
+
+-- glTexImage3D ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3D.xhtml OpenGL 4.x>.
+glTexImage3D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn760 ptr_glTexImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glTexImage3D #-}
+ptr_glTexImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage3D = unsafePerformIO $ getCommand "glTexImage3D"
+
+-- glTexImage3DEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glTexImage3D'.
+glTexImage3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn761 ptr_glTexImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glTexImage3DEXT #-}
+ptr_glTexImage3DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage3DEXT = unsafePerformIO $ getCommand "glTexImage3DEXT"
+
+-- glTexImage3DMultisample -----------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3DMultisample.xhtml OpenGL 4.x>.
+glTexImage3DMultisample
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexImage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn762 ptr_glTexImage3DMultisample v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexImage3DMultisample #-}
+ptr_glTexImage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexImage3DMultisample = unsafePerformIO $ getCommand "glTexImage3DMultisample"
+
+-- glTexImage3DMultisampleCoverageNV -------------------------------------------
+
+glTexImage3DMultisampleCoverageNV
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn763 ptr_glTexImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexImage3DMultisampleCoverageNV #-}
+ptr_glTexImage3DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage3DMultisampleCoverageNV"
+
+-- glTexImage3DOES -------------------------------------------------------------
+
+glTexImage3DOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLint -- ^ @border@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn761 ptr_glTexImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glTexImage3DOES #-}
+ptr_glTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage3DOES = unsafePerformIO $ getCommand "glTexImage3DOES"
+
+-- glTexImage4DSGIS ------------------------------------------------------------
+
+glTexImage4DSGIS
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLsizei -- ^ @size4d@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
+  -> m ()
+glTexImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn764 ptr_glTexImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTexImage4DSGIS #-}
+ptr_glTexImage4DSGIS :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexImage4DSGIS = unsafePerformIO $ getCommand "glTexImage4DSGIS"
+
+-- glTexPageCommitmentARB ------------------------------------------------------
+
+glTexPageCommitmentARB
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glTexPageCommitmentARB v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn765 ptr_glTexPageCommitmentARB v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexPageCommitmentARB #-}
+ptr_glTexPageCommitmentARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexPageCommitmentARB = unsafePerformIO $ getCommand "glTexPageCommitmentARB"
+
+-- glTexPageCommitmentEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glTexPageCommitmentARB'.
+glTexPageCommitmentEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glTexPageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn765 ptr_glTexPageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexPageCommitmentEXT #-}
+ptr_glTexPageCommitmentEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexPageCommitmentEXT = unsafePerformIO $ getCommand "glTexPageCommitmentEXT"
+
+-- glTexParameterIiv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameterIiv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glTexParameterIiv v1 v2 v3 = liftIO $ dyn136 ptr_glTexParameterIiv v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIiv #-}
+ptr_glTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexParameterIiv = unsafePerformIO $ getCommand "glTexParameterIiv"
+
+-- glTexParameterIivEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glTexParameterIiv'.
+glTexParameterIivEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glTexParameterIivEXT v1 v2 v3 = liftIO $ dyn136 ptr_glTexParameterIivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIivEXT #-}
+ptr_glTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexParameterIivEXT = unsafePerformIO $ getCommand "glTexParameterIivEXT"
+
+-- glTexParameterIivOES --------------------------------------------------------
+
+-- | This command is an alias for 'glTexParameterIiv'.
+glTexParameterIivOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glTexParameterIivOES v1 v2 v3 = liftIO $ dyn136 ptr_glTexParameterIivOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIivOES #-}
+ptr_glTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexParameterIivOES = unsafePerformIO $ getCommand "glTexParameterIivOES"
+
+-- glTexParameterIuiv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameterIuiv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glTexParameterIuiv v1 v2 v3 = liftIO $ dyn422 ptr_glTexParameterIuiv v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIuiv #-}
+ptr_glTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTexParameterIuiv = unsafePerformIO $ getCommand "glTexParameterIuiv"
+
+-- glTexParameterIuivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glTexParameterIuiv'.
+glTexParameterIuivEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glTexParameterIuivEXT v1 v2 v3 = liftIO $ dyn422 ptr_glTexParameterIuivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIuivEXT #-}
+ptr_glTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTexParameterIuivEXT = unsafePerformIO $ getCommand "glTexParameterIuivEXT"
+
+-- glTexParameterIuivOES -------------------------------------------------------
+
+-- | This command is an alias for 'glTexParameterIuiv'.
+glTexParameterIuivOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glTexParameterIuivOES v1 v2 v3 = liftIO $ dyn422 ptr_glTexParameterIuivOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterIuivOES #-}
+ptr_glTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTexParameterIuivOES = unsafePerformIO $ getCommand "glTexParameterIuivOES"
+
+-- glTexParameterf -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameterf
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glTexParameterf v1 v2 v3 = liftIO $ dyn164 ptr_glTexParameterf v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterf #-}
+ptr_glTexParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glTexParameterf = unsafePerformIO $ getCommand "glTexParameterf"
+
+-- glTexParameterfv ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameterfv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glTexParameterfv v1 v2 v3 = liftIO $ dyn135 ptr_glTexParameterfv v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterfv #-}
+ptr_glTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTexParameterfv = unsafePerformIO $ getCommand "glTexParameterfv"
+
+-- glTexParameteri -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameteri
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glTexParameteri v1 v2 v3 = liftIO $ dyn63 ptr_glTexParameteri v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameteri #-}
+ptr_glTexParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
+ptr_glTexParameteri = unsafePerformIO $ getCommand "glTexParameteri"
+
+-- glTexParameteriv ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTexParameteriv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTexParameteriv v1 v2 v3 = liftIO $ dyn136 ptr_glTexParameteriv v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameteriv #-}
+ptr_glTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTexParameteriv = unsafePerformIO $ getCommand "glTexParameteriv"
+
+-- glTexParameterx -------------------------------------------------------------
+
+glTexParameterx
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glTexParameterx v1 v2 v3 = liftIO $ dyn165 ptr_glTexParameterx v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterx #-}
+ptr_glTexParameterx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glTexParameterx = unsafePerformIO $ getCommand "glTexParameterx"
+
+-- glTexParameterxOES ----------------------------------------------------------
+
+glTexParameterxOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> GLfixed -- ^ @param@.
+  -> m ()
+glTexParameterxOES v1 v2 v3 = liftIO $ dyn165 ptr_glTexParameterxOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterxOES #-}
+ptr_glTexParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
+ptr_glTexParameterxOES = unsafePerformIO $ getCommand "glTexParameterxOES"
+
+-- glTexParameterxv ------------------------------------------------------------
+
+glTexParameterxv
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexParameterxv v1 v2 v3 = liftIO $ dyn166 ptr_glTexParameterxv v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterxv #-}
+ptr_glTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexParameterxv = unsafePerformIO $ getCommand "glTexParameterxv"
+
+-- glTexParameterxvOES ---------------------------------------------------------
+
+glTexParameterxvOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexParameterxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glTexParameterxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexParameterxvOES #-}
+ptr_glTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexParameterxvOES = unsafePerformIO $ getCommand "glTexParameterxvOES"
+
+-- glTexRenderbufferNV ---------------------------------------------------------
+
+glTexRenderbufferNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @renderbuffer@.
+  -> m ()
+glTexRenderbufferNV v1 v2 = liftIO $ dyn17 ptr_glTexRenderbufferNV v1 v2
+
+{-# NOINLINE ptr_glTexRenderbufferNV #-}
+ptr_glTexRenderbufferNV :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glTexRenderbufferNV = unsafePerformIO $ getCommand "glTexRenderbufferNV"
+
+-- glTexStorage1D --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>.
+glTexStorage1D
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> m ()
+glTexStorage1D v1 v2 v3 v4 = liftIO $ dyn766 ptr_glTexStorage1D v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexStorage1D #-}
+ptr_glTexStorage1D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
+ptr_glTexStorage1D = unsafePerformIO $ getCommand "glTexStorage1D"
+
+-- glTexStorage1DEXT -----------------------------------------------------------
+
+-- | This command is an alias for 'glTexStorage1D'.
+glTexStorage1DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> m ()
+glTexStorage1DEXT v1 v2 v3 v4 = liftIO $ dyn766 ptr_glTexStorage1DEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexStorage1DEXT #-}
+ptr_glTexStorage1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
+ptr_glTexStorage1DEXT = unsafePerformIO $ getCommand "glTexStorage1DEXT"
+
+-- glTexStorage2D --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
+glTexStorage2D
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTexStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glTexStorage2D v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexStorage2D #-}
+ptr_glTexStorage2D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTexStorage2D = unsafePerformIO $ getCommand "glTexStorage2D"
+
+-- glTexStorage2DEXT -----------------------------------------------------------
+
+-- | This command is an alias for 'glTexStorage2D'.
+glTexStorage2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTexStorage2DEXT v1 v2 v3 v4 v5 = liftIO $ dyn705 ptr_glTexStorage2DEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTexStorage2DEXT #-}
+ptr_glTexStorage2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTexStorage2DEXT = unsafePerformIO $ getCommand "glTexStorage2DEXT"
+
+-- glTexStorage2DMultisample ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
+glTexStorage2DMultisample
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexStorage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn758 ptr_glTexStorage2DMultisample v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTexStorage2DMultisample #-}
+ptr_glTexStorage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexStorage2DMultisample = unsafePerformIO $ getCommand "glTexStorage2DMultisample"
+
+-- glTexStorage3D --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>.
+glTexStorage3D
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> m ()
+glTexStorage3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn767 ptr_glTexStorage3D v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTexStorage3D #-}
+ptr_glTexStorage3D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glTexStorage3D = unsafePerformIO $ getCommand "glTexStorage3D"
+
+-- glTexStorage3DEXT -----------------------------------------------------------
+
+-- | This command is an alias for 'glTexStorage3D'.
+glTexStorage3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> m ()
+glTexStorage3DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn767 ptr_glTexStorage3DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTexStorage3DEXT #-}
+ptr_glTexStorage3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glTexStorage3DEXT = unsafePerformIO $ getCommand "glTexStorage3DEXT"
+
+-- glTexStorage3DMultisample ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>.
+glTexStorage3DMultisample
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexStorage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn762 ptr_glTexStorage3DMultisample v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexStorage3DMultisample #-}
+ptr_glTexStorage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexStorage3DMultisample = unsafePerformIO $ getCommand "glTexStorage3DMultisample"
+
+-- glTexStorage3DMultisampleOES ------------------------------------------------
+
+-- | This command is an alias for 'glTexStorage3DMultisample'.
+glTexStorage3DMultisampleOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTexStorage3DMultisampleOES v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn762 ptr_glTexStorage3DMultisampleOES v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexStorage3DMultisampleOES #-}
+ptr_glTexStorage3DMultisampleOES :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexStorage3DMultisampleOES = unsafePerformIO $ getCommand "glTexStorage3DMultisampleOES"
+
+-- glTexStorageMem1DEXT --------------------------------------------------------
+
+glTexStorageMem1DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTexStorageMem1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn768 ptr_glTexStorageMem1DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTexStorageMem1DEXT #-}
+ptr_glTexStorageMem1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTexStorageMem1DEXT = unsafePerformIO $ getCommand "glTexStorageMem1DEXT"
+
+-- glTexStorageMem2DEXT --------------------------------------------------------
+
+glTexStorageMem2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTexStorageMem2DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn769 ptr_glTexStorageMem2DEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexStorageMem2DEXT #-}
+ptr_glTexStorageMem2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTexStorageMem2DEXT = unsafePerformIO $ getCommand "glTexStorageMem2DEXT"
+
+-- glTexStorageMem2DMultisampleEXT ---------------------------------------------
+
+glTexStorageMem2DMultisampleEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedSampleLocations@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTexStorageMem2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn770 ptr_glTexStorageMem2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexStorageMem2DMultisampleEXT #-}
+ptr_glTexStorageMem2DMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+ptr_glTexStorageMem2DMultisampleEXT = unsafePerformIO $ getCommand "glTexStorageMem2DMultisampleEXT"
+
+-- glTexStorageMem3DEXT --------------------------------------------------------
+
+glTexStorageMem3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTexStorageMem3DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn771 ptr_glTexStorageMem3DEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTexStorageMem3DEXT #-}
+ptr_glTexStorageMem3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTexStorageMem3DEXT = unsafePerformIO $ getCommand "glTexStorageMem3DEXT"
+
+-- glTexStorageMem3DMultisampleEXT ---------------------------------------------
+
+glTexStorageMem3DMultisampleEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedSampleLocations@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTexStorageMem3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn772 ptr_glTexStorageMem3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexStorageMem3DMultisampleEXT #-}
+ptr_glTexStorageMem3DMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+ptr_glTexStorageMem3DMultisampleEXT = unsafePerformIO $ getCommand "glTexStorageMem3DMultisampleEXT"
+
+-- glTexStorageSparseAMD -------------------------------------------------------
+
+glTexStorageSparseAMD
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLsizei -- ^ @layers@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glTexStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn773 ptr_glTexStorageSparseAMD v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexStorageSparseAMD #-}
+ptr_glTexStorageSparseAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
+ptr_glTexStorageSparseAMD = unsafePerformIO $ getCommand "glTexStorageSparseAMD"
+
+-- glTexSubImage1D -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>.
+glTexSubImage1D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glTexSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn774 ptr_glTexSubImage1D v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexSubImage1D #-}
+ptr_glTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage1D = unsafePerformIO $ getCommand "glTexSubImage1D"
+
+-- glTexSubImage1DEXT ----------------------------------------------------------
+
+-- | This command is an alias for 'glTexSubImage1D'.
+glTexSubImage1DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn774 ptr_glTexSubImage1DEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTexSubImage1DEXT #-}
+ptr_glTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage1DEXT = unsafePerformIO $ getCommand "glTexSubImage1DEXT"
+
+-- glTexSubImage2D -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>.
+glTexSubImage2D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn775 ptr_glTexSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexSubImage2D #-}
+ptr_glTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage2D = unsafePerformIO $ getCommand "glTexSubImage2D"
+
+-- glTexSubImage2DEXT ----------------------------------------------------------
+
+-- | This command is an alias for 'glTexSubImage2D'.
+glTexSubImage2DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn775 ptr_glTexSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexSubImage2DEXT #-}
+ptr_glTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage2DEXT = unsafePerformIO $ getCommand "glTexSubImage2DEXT"
+
+-- glTexSubImage3D -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>.
+glTexSubImage3D
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn276 ptr_glTexSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTexSubImage3D #-}
+ptr_glTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage3D = unsafePerformIO $ getCommand "glTexSubImage3D"
+
+-- glTexSubImage3DEXT ----------------------------------------------------------
+
+-- | This command is an alias for 'glTexSubImage3D'.
+glTexSubImage3DEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn276 ptr_glTexSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTexSubImage3DEXT #-}
+ptr_glTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage3DEXT = unsafePerformIO $ getCommand "glTexSubImage3DEXT"
+
+-- glTexSubImage3DOES ----------------------------------------------------------
+
+glTexSubImage3DOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn276 ptr_glTexSubImage3DOES v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTexSubImage3DOES #-}
+ptr_glTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage3DOES = unsafePerformIO $ getCommand "glTexSubImage3DOES"
+
+-- glTexSubImage4DSGIS ---------------------------------------------------------
+
+glTexSubImage4DSGIS
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @woffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLsizei -- ^ @size4d@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
+  -> m ()
+glTexSubImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 = liftIO $ dyn776 ptr_glTexSubImage4DSGIS v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13
+
+{-# NOINLINE ptr_glTexSubImage4DSGIS #-}
+ptr_glTexSubImage4DSGIS :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTexSubImage4DSGIS = unsafePerformIO $ getCommand "glTexSubImage4DSGIS"
+
+-- glTextureBarrier ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureBarrier.xhtml OpenGL 4.x>.
+glTextureBarrier
+  :: MonadIO m
+  => m ()
+glTextureBarrier = liftIO $ dyn11 ptr_glTextureBarrier
+
+{-# NOINLINE ptr_glTextureBarrier #-}
+ptr_glTextureBarrier :: FunPtr (IO ())
+ptr_glTextureBarrier = unsafePerformIO $ getCommand "glTextureBarrier"
+
+-- glTextureBarrierNV ----------------------------------------------------------
+
+glTextureBarrierNV
+  :: MonadIO m
+  => m ()
+glTextureBarrierNV = liftIO $ dyn11 ptr_glTextureBarrierNV
+
+{-# NOINLINE ptr_glTextureBarrierNV #-}
+ptr_glTextureBarrierNV :: FunPtr (IO ())
+ptr_glTextureBarrierNV = unsafePerformIO $ getCommand "glTextureBarrierNV"
+
+-- glTextureBuffer -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
+glTextureBuffer
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTextureBuffer v1 v2 v3 = liftIO $ dyn738 ptr_glTextureBuffer v1 v2 v3
+
+{-# NOINLINE ptr_glTextureBuffer #-}
+ptr_glTextureBuffer :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
+ptr_glTextureBuffer = unsafePerformIO $ getCommand "glTextureBuffer"
+
+-- glTextureBufferEXT ----------------------------------------------------------
+
+glTextureBufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTextureBufferEXT v1 v2 v3 v4 = liftIO $ dyn598 ptr_glTextureBufferEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureBufferEXT #-}
+ptr_glTextureBufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
+ptr_glTextureBufferEXT = unsafePerformIO $ getCommand "glTextureBufferEXT"
+
+-- glTextureBufferRange --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>.
+glTextureBufferRange
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTextureBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn777 ptr_glTextureBufferRange v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTextureBufferRange #-}
+ptr_glTextureBufferRange :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTextureBufferRange = unsafePerformIO $ getCommand "glTextureBufferRange"
+
+-- glTextureBufferRangeEXT -----------------------------------------------------
+
+glTextureBufferRangeEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTextureBufferRangeEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn778 ptr_glTextureBufferRangeEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureBufferRangeEXT #-}
+ptr_glTextureBufferRangeEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTextureBufferRangeEXT = unsafePerformIO $ getCommand "glTextureBufferRangeEXT"
+
+-- glTextureColorMaskSGIS ------------------------------------------------------
+
+glTextureColorMaskSGIS
+  :: MonadIO m
+  => GLboolean -- ^ @red@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLboolean -- ^ @green@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLboolean -- ^ @blue@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLboolean -- ^ @alpha@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureColorMaskSGIS v1 v2 v3 v4 = liftIO $ dyn126 ptr_glTextureColorMaskSGIS v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureColorMaskSGIS #-}
+ptr_glTextureColorMaskSGIS :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
+ptr_glTextureColorMaskSGIS = unsafePerformIO $ getCommand "glTextureColorMaskSGIS"
+
+-- glTextureImage1DEXT ---------------------------------------------------------
+
+glTextureImage1DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn779 ptr_glTextureImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTextureImage1DEXT #-}
+ptr_glTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureImage1DEXT = unsafePerformIO $ getCommand "glTextureImage1DEXT"
+
+-- glTextureImage2DEXT ---------------------------------------------------------
+
+glTextureImage2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn780 ptr_glTextureImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glTextureImage2DEXT #-}
+ptr_glTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureImage2DEXT = unsafePerformIO $ getCommand "glTextureImage2DEXT"
+
+-- glTextureImage2DMultisampleCoverageNV ---------------------------------------
+
+glTextureImage2DMultisampleCoverageNV
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn781 ptr_glTextureImage2DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureImage2DMultisampleCoverageNV #-}
+ptr_glTextureImage2DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleCoverageNV"
+
+-- glTextureImage2DMultisampleNV -----------------------------------------------
+
+glTextureImage2DMultisampleNV
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureImage2DMultisampleNV v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn782 ptr_glTextureImage2DMultisampleNV v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureImage2DMultisampleNV #-}
+ptr_glTextureImage2DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureImage2DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleNV"
+
+-- glTextureImage3DEXT ---------------------------------------------------------
+
+glTextureImage3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLint -- ^ @border@ of type @CheckedInt32@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn783 ptr_glTextureImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTextureImage3DEXT #-}
+ptr_glTextureImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureImage3DEXT = unsafePerformIO $ getCommand "glTextureImage3DEXT"
+
+-- glTextureImage3DMultisampleCoverageNV ---------------------------------------
+
+glTextureImage3DMultisampleCoverageNV
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @coverageSamples@.
+  -> GLsizei -- ^ @colorSamples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn784 ptr_glTextureImage3DMultisampleCoverageNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTextureImage3DMultisampleCoverageNV #-}
+ptr_glTextureImage3DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleCoverageNV"
+
+-- glTextureImage3DMultisampleNV -----------------------------------------------
+
+glTextureImage3DMultisampleNV
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLint -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureImage3DMultisampleNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn785 ptr_glTextureImage3DMultisampleNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureImage3DMultisampleNV #-}
+ptr_glTextureImage3DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureImage3DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleNV"
+
+-- glTextureLightEXT -----------------------------------------------------------
+
+glTextureLightEXT
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @LightTexturePNameEXT@.
+  -> m ()
+glTextureLightEXT v1 = liftIO $ dyn5 ptr_glTextureLightEXT v1
+
+{-# NOINLINE ptr_glTextureLightEXT #-}
+ptr_glTextureLightEXT :: FunPtr (GLenum -> IO ())
+ptr_glTextureLightEXT = unsafePerformIO $ getCommand "glTextureLightEXT"
+
+-- glTextureMaterialEXT --------------------------------------------------------
+
+glTextureMaterialEXT
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @mode@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> m ()
+glTextureMaterialEXT v1 v2 = liftIO $ dyn52 ptr_glTextureMaterialEXT v1 v2
+
+{-# NOINLINE ptr_glTextureMaterialEXT #-}
+ptr_glTextureMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
+ptr_glTextureMaterialEXT = unsafePerformIO $ getCommand "glTextureMaterialEXT"
+
+-- glTextureNormalEXT ----------------------------------------------------------
+
+glTextureNormalEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type @TextureNormalModeEXT@.
+  -> m ()
+glTextureNormalEXT v1 = liftIO $ dyn5 ptr_glTextureNormalEXT v1
+
+{-# NOINLINE ptr_glTextureNormalEXT #-}
+ptr_glTextureNormalEXT :: FunPtr (GLenum -> IO ())
+ptr_glTextureNormalEXT = unsafePerformIO $ getCommand "glTextureNormalEXT"
+
+-- glTexturePageCommitmentEXT --------------------------------------------------
+
+glTexturePageCommitmentEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn786 ptr_glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexturePageCommitmentEXT #-}
+ptr_glTexturePageCommitmentEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexturePageCommitmentEXT = unsafePerformIO $ getCommand "glTexturePageCommitmentEXT"
+
+-- glTextureParameterIiv -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterIiv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glTextureParameterIiv v1 v2 v3 = liftIO $ dyn341 ptr_glTextureParameterIiv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterIiv #-}
+ptr_glTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameterIiv = unsafePerformIO $ getCommand "glTextureParameterIiv"
+
+-- glTextureParameterIivEXT ----------------------------------------------------
+
+glTextureParameterIivEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glTextureParameterIivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterIivEXT #-}
+ptr_glTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameterIivEXT = unsafePerformIO $ getCommand "glTextureParameterIivEXT"
+
+-- glTextureParameterIuiv ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterIuiv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @params@.
+  -> m ()
+glTextureParameterIuiv v1 v2 v3 = liftIO $ dyn384 ptr_glTextureParameterIuiv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterIuiv #-}
+ptr_glTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTextureParameterIuiv = unsafePerformIO $ getCommand "glTextureParameterIuiv"
+
+-- glTextureParameterIuivEXT ---------------------------------------------------
+
+glTextureParameterIuivEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glTextureParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn429 ptr_glTextureParameterIuivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterIuivEXT #-}
+ptr_glTextureParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTextureParameterIuivEXT = unsafePerformIO $ getCommand "glTextureParameterIuivEXT"
+
+-- glTextureParameterf ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterf
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glTextureParameterf v1 v2 v3 = liftIO $ dyn505 ptr_glTextureParameterf v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterf #-}
+ptr_glTextureParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+ptr_glTextureParameterf = unsafePerformIO $ getCommand "glTextureParameterf"
+
+-- glTextureParameterfEXT ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTextureParameterfvEXT'.
+glTextureParameterfEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
+  -> m ()
+glTextureParameterfEXT v1 v2 v3 v4 = liftIO $ dyn787 ptr_glTextureParameterfEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterfEXT #-}
+ptr_glTextureParameterfEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
+ptr_glTextureParameterfEXT = unsafePerformIO $ getCommand "glTextureParameterfEXT"
+
+-- glTextureParameterfv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterfv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @param@.
+  -> m ()
+glTextureParameterfv v1 v2 v3 = liftIO $ dyn357 ptr_glTextureParameterfv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterfv #-}
+ptr_glTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTextureParameterfv = unsafePerformIO $ getCommand "glTextureParameterfv"
+
+-- glTextureParameterfvEXT -----------------------------------------------------
+
+glTextureParameterfvEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
+  -> m ()
+glTextureParameterfvEXT v1 v2 v3 v4 = liftIO $ dyn430 ptr_glTextureParameterfvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterfvEXT #-}
+ptr_glTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTextureParameterfvEXT = unsafePerformIO $ getCommand "glTextureParameterfvEXT"
+
+-- glTextureParameteri ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameteri
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glTextureParameteri v1 v2 v3 = liftIO $ dyn481 ptr_glTextureParameteri v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameteri #-}
+ptr_glTextureParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glTextureParameteri = unsafePerformIO $ getCommand "glTextureParameteri"
+
+-- glTextureParameteriEXT ------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glTextureParameterivEXT'.
+glTextureParameteriEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> GLint -- ^ @param@ of type @CheckedInt32@.
+  -> m ()
+glTextureParameteriEXT v1 v2 v3 v4 = liftIO $ dyn788 ptr_glTextureParameteriEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameteriEXT #-}
+ptr_glTextureParameteriEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
+ptr_glTextureParameteriEXT = unsafePerformIO $ getCommand "glTextureParameteriEXT"
+
+-- glTextureParameteriv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameteriv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @param@.
+  -> m ()
+glTextureParameteriv v1 v2 v3 = liftIO $ dyn341 ptr_glTextureParameteriv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameteriv #-}
+ptr_glTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameteriv = unsafePerformIO $ getCommand "glTextureParameteriv"
+
+-- glTextureParameterivEXT -----------------------------------------------------
+
+glTextureParameterivEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTextureParameterivEXT v1 v2 v3 v4 = liftIO $ dyn371 ptr_glTextureParameterivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterivEXT #-}
+ptr_glTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameterivEXT = unsafePerformIO $ getCommand "glTextureParameterivEXT"
+
+-- glTextureRangeAPPLE ---------------------------------------------------------
+
+glTextureRangeAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> GLsizei -- ^ @length@.
+  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
+  -> m ()
+glTextureRangeAPPLE v1 v2 v3 = liftIO $ dyn47 ptr_glTextureRangeAPPLE v1 v2 v3
+
+{-# NOINLINE ptr_glTextureRangeAPPLE #-}
+ptr_glTextureRangeAPPLE :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glTextureRangeAPPLE = unsafePerformIO $ getCommand "glTextureRangeAPPLE"
+
+-- glTextureRenderbufferEXT ----------------------------------------------------
+
+glTextureRenderbufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLuint -- ^ @renderbuffer@.
+  -> m ()
+glTextureRenderbufferEXT v1 v2 v3 = liftIO $ dyn738 ptr_glTextureRenderbufferEXT v1 v2 v3
+
+{-# NOINLINE ptr_glTextureRenderbufferEXT #-}
+ptr_glTextureRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
+ptr_glTextureRenderbufferEXT = unsafePerformIO $ getCommand "glTextureRenderbufferEXT"
+
+-- glTextureStorage1D ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>.
+glTextureStorage1D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> m ()
+glTextureStorage1D v1 v2 v3 v4 = liftIO $ dyn789 ptr_glTextureStorage1D v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureStorage1D #-}
+ptr_glTextureStorage1D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
+ptr_glTextureStorage1D = unsafePerformIO $ getCommand "glTextureStorage1D"
+
+-- glTextureStorage1DEXT -------------------------------------------------------
+
+glTextureStorage1DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> m ()
+glTextureStorage1DEXT v1 v2 v3 v4 v5 = liftIO $ dyn790 ptr_glTextureStorage1DEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTextureStorage1DEXT #-}
+ptr_glTextureStorage1DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
+ptr_glTextureStorage1DEXT = unsafePerformIO $ getCommand "glTextureStorage1DEXT"
+
+-- glTextureStorage2D ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
+glTextureStorage2D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTextureStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn615 ptr_glTextureStorage2D v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTextureStorage2D #-}
+ptr_glTextureStorage2D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage2D = unsafePerformIO $ getCommand "glTextureStorage2D"
+
+-- glTextureStorage2DEXT -------------------------------------------------------
+
+glTextureStorage2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTextureStorage2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn791 ptr_glTextureStorage2DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureStorage2DEXT #-}
+ptr_glTextureStorage2DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage2DEXT = unsafePerformIO $ getCommand "glTextureStorage2DEXT"
+
+-- glTextureStorage2DMultisample -----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
+glTextureStorage2DMultisample
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedsamplelocations@.
+  -> m ()
+glTextureStorage2DMultisample v1 v2 v3 v4 v5 v6 = liftIO $ dyn792 ptr_glTextureStorage2DMultisample v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureStorage2DMultisample #-}
+ptr_glTextureStorage2DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureStorage2DMultisample = unsafePerformIO $ getCommand "glTextureStorage2DMultisample"
+
+-- glTextureStorage2DMultisampleEXT --------------------------------------------
+
+glTextureStorage2DMultisampleEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureStorage2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn793 ptr_glTextureStorage2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureStorage2DMultisampleEXT #-}
+ptr_glTextureStorage2DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureStorage2DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage2DMultisampleEXT"
+
+-- glTextureStorage3D ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>.
+glTextureStorage3D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> m ()
+glTextureStorage3D v1 v2 v3 v4 v5 v6 = liftIO $ dyn794 ptr_glTextureStorage3D v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureStorage3D #-}
+ptr_glTextureStorage3D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage3D = unsafePerformIO $ getCommand "glTextureStorage3D"
+
+-- glTextureStorage3DEXT -------------------------------------------------------
+
+glTextureStorage3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> m ()
+glTextureStorage3DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn795 ptr_glTextureStorage3DEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureStorage3DEXT #-}
+ptr_glTextureStorage3DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage3DEXT = unsafePerformIO $ getCommand "glTextureStorage3DEXT"
+
+-- glTextureStorage3DMultisample -----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>.
+glTextureStorage3DMultisample
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedsamplelocations@.
+  -> m ()
+glTextureStorage3DMultisample v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn796 ptr_glTextureStorage3DMultisample v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureStorage3DMultisample #-}
+ptr_glTextureStorage3DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureStorage3DMultisample = unsafePerformIO $ getCommand "glTextureStorage3DMultisample"
+
+-- glTextureStorage3DMultisampleEXT --------------------------------------------
+
+glTextureStorage3DMultisampleEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> m ()
+glTextureStorage3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn797 ptr_glTextureStorage3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureStorage3DMultisampleEXT #-}
+ptr_glTextureStorage3DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTextureStorage3DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage3DMultisampleEXT"
+
+-- glTextureStorageMem1DEXT ----------------------------------------------------
+
+glTextureStorageMem1DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTextureStorageMem1DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn798 ptr_glTextureStorageMem1DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureStorageMem1DEXT #-}
+ptr_glTextureStorageMem1DEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTextureStorageMem1DEXT = unsafePerformIO $ getCommand "glTextureStorageMem1DEXT"
+
+-- glTextureStorageMem2DEXT ----------------------------------------------------
+
+glTextureStorageMem2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTextureStorageMem2DEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn799 ptr_glTextureStorageMem2DEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureStorageMem2DEXT #-}
+ptr_glTextureStorageMem2DEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTextureStorageMem2DEXT = unsafePerformIO $ getCommand "glTextureStorageMem2DEXT"
+
+-- glTextureStorageMem2DMultisampleEXT -----------------------------------------
+
+glTextureStorageMem2DMultisampleEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLboolean -- ^ @fixedSampleLocations@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTextureStorageMem2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn800 ptr_glTextureStorageMem2DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureStorageMem2DMultisampleEXT #-}
+ptr_glTextureStorageMem2DMultisampleEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+ptr_glTextureStorageMem2DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorageMem2DMultisampleEXT"
+
+-- glTextureStorageMem3DEXT ----------------------------------------------------
+
+glTextureStorageMem3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTextureStorageMem3DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn801 ptr_glTextureStorageMem3DEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureStorageMem3DEXT #-}
+ptr_glTextureStorageMem3DEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
+ptr_glTextureStorageMem3DEXT = unsafePerformIO $ getCommand "glTextureStorageMem3DEXT"
+
+-- glTextureStorageMem3DMultisampleEXT -----------------------------------------
+
+glTextureStorageMem3DMultisampleEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @samples@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @fixedSampleLocations@.
+  -> GLuint -- ^ @memory@.
+  -> GLuint64 -- ^ @offset@.
+  -> m ()
+glTextureStorageMem3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn802 ptr_glTextureStorageMem3DMultisampleEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTextureStorageMem3DMultisampleEXT #-}
+ptr_glTextureStorageMem3DMultisampleEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
+ptr_glTextureStorageMem3DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorageMem3DMultisampleEXT"
+
+-- glTextureStorageSparseAMD ---------------------------------------------------
+
+glTextureStorageSparseAMD
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLenum -- ^ @internalFormat@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLsizei -- ^ @layers@.
+  -> GLbitfield -- ^ @flags@.
+  -> m ()
+glTextureStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn803 ptr_glTextureStorageSparseAMD v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureStorageSparseAMD #-}
+ptr_glTextureStorageSparseAMD :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
+ptr_glTextureStorageSparseAMD = unsafePerformIO $ getCommand "glTextureStorageSparseAMD"
+
+-- glTextureSubImage1D ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>.
+glTextureSubImage1D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @pixels@.
+  -> m ()
+glTextureSubImage1D v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn804 ptr_glTextureSubImage1D v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glTextureSubImage1D #-}
+ptr_glTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage1D = unsafePerformIO $ getCommand "glTextureSubImage1D"
 
diff --git a/src/Graphics/GL/Functions/F27.hs b/src/Graphics/GL/Functions/F27.hs
--- a/src/Graphics/GL/Functions/F27.hs
+++ b/src/Graphics/GL/Functions/F27.hs
@@ -15,1605 +15,1638 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F27 (
-  glUniform2ui64NV,
-  glUniform2ui64vARB,
-  glUniform2ui64vNV,
-  glUniform2uiEXT,
-  glUniform2uiv,
-  glUniform2uivEXT,
-  glUniform3d,
-  glUniform3dv,
-  glUniform3f,
-  glUniform3fARB,
-  glUniform3fv,
-  glUniform3fvARB,
-  glUniform3i,
-  glUniform3i64ARB,
-  glUniform3i64NV,
-  glUniform3i64vARB,
-  glUniform3i64vNV,
-  glUniform3iARB,
-  glUniform3iv,
-  glUniform3ivARB,
-  glUniform3ui,
-  glUniform3ui64ARB,
-  glUniform3ui64NV,
-  glUniform3ui64vARB,
-  glUniform3ui64vNV,
-  glUniform3uiEXT,
-  glUniform3uiv,
-  glUniform3uivEXT,
-  glUniform4d,
-  glUniform4dv,
-  glUniform4f,
-  glUniform4fARB,
-  glUniform4fv,
-  glUniform4fvARB,
-  glUniform4i,
-  glUniform4i64ARB,
-  glUniform4i64NV,
-  glUniform4i64vARB,
-  glUniform4i64vNV,
-  glUniform4iARB,
-  glUniform4iv,
-  glUniform4ivARB,
-  glUniform4ui,
-  glUniform4ui64ARB,
-  glUniform4ui64NV,
-  glUniform4ui64vARB,
-  glUniform4ui64vNV,
-  glUniform4uiEXT,
-  glUniform4uiv,
-  glUniform4uivEXT,
-  glUniformBlockBinding,
-  glUniformBufferEXT,
-  glUniformHandleui64ARB,
-  glUniformHandleui64IMG,
-  glUniformHandleui64NV,
-  glUniformHandleui64vARB,
-  glUniformHandleui64vIMG,
-  glUniformHandleui64vNV,
-  glUniformMatrix2dv,
-  glUniformMatrix2fv,
-  glUniformMatrix2fvARB,
-  glUniformMatrix2x3dv,
-  glUniformMatrix2x3fv,
-  glUniformMatrix2x3fvNV,
-  glUniformMatrix2x4dv,
-  glUniformMatrix2x4fv,
-  glUniformMatrix2x4fvNV,
-  glUniformMatrix3dv,
-  glUniformMatrix3fv,
-  glUniformMatrix3fvARB,
-  glUniformMatrix3x2dv,
-  glUniformMatrix3x2fv,
-  glUniformMatrix3x2fvNV,
-  glUniformMatrix3x4dv,
-  glUniformMatrix3x4fv,
-  glUniformMatrix3x4fvNV,
-  glUniformMatrix4dv,
-  glUniformMatrix4fv,
-  glUniformMatrix4fvARB,
-  glUniformMatrix4x2dv,
-  glUniformMatrix4x2fv,
-  glUniformMatrix4x2fvNV,
-  glUniformMatrix4x3dv,
-  glUniformMatrix4x3fv,
-  glUniformMatrix4x3fvNV,
-  glUniformSubroutinesuiv,
-  glUniformui64NV,
-  glUniformui64vNV,
-  glUnlockArraysEXT,
-  glUnmapBuffer,
-  glUnmapBufferARB,
-  glUnmapBufferOES,
-  glUnmapNamedBuffer,
-  glUnmapNamedBufferEXT,
-  glUnmapObjectBufferATI,
-  glUnmapTexture2DINTEL,
-  glUpdateObjectBufferATI,
-  glUseProgram,
-  glUseProgramObjectARB,
-  glUseProgramStages
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glUniform2ui64NV ------------------------------------------------------------
-
-glUniform2ui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> m ()
-glUniform2ui64NV v1 v2 v3 = liftIO $ dyn802 ptr_glUniform2ui64NV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ui64NV #-}
-ptr_glUniform2ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glUniform2ui64NV = unsafePerformIO $ getCommand "glUniform2ui64NV"
-
--- glUniform2ui64vARB ----------------------------------------------------------
-
-glUniform2ui64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*2@ elements of type @GLuint64@.
-  -> m ()
-glUniform2ui64vARB v1 v2 v3 = liftIO $ dyn795 ptr_glUniform2ui64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ui64vARB #-}
-ptr_glUniform2ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniform2ui64vARB = unsafePerformIO $ getCommand "glUniform2ui64vARB"
-
--- glUniform2ui64vNV -----------------------------------------------------------
-
-glUniform2ui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
-  -> m ()
-glUniform2ui64vNV v1 v2 v3 = liftIO $ dyn796 ptr_glUniform2ui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2ui64vNV #-}
-ptr_glUniform2ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glUniform2ui64vNV = unsafePerformIO $ getCommand "glUniform2ui64vNV"
-
--- glUniform2uiEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2ui'.
-glUniform2uiEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> m ()
-glUniform2uiEXT v1 v2 v3 = liftIO $ dyn800 ptr_glUniform2uiEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2uiEXT #-}
-ptr_glUniform2uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
-ptr_glUniform2uiEXT = unsafePerformIO $ getCommand "glUniform2uiEXT"
-
--- glUniform2uiv ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform2uiv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
-  -> m ()
-glUniform2uiv v1 v2 v3 = liftIO $ dyn797 ptr_glUniform2uiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2uiv #-}
-ptr_glUniform2uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform2uiv = unsafePerformIO $ getCommand "glUniform2uiv"
-
--- glUniform2uivEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glUniform2uiv'.
-glUniform2uivEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
-  -> m ()
-glUniform2uivEXT v1 v2 v3 = liftIO $ dyn797 ptr_glUniform2uivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform2uivEXT #-}
-ptr_glUniform2uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform2uivEXT = unsafePerformIO $ getCommand "glUniform2uivEXT"
-
--- glUniform3d -----------------------------------------------------------------
-
-glUniform3d
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glUniform3d v1 v2 v3 v4 = liftIO $ dyn803 ptr_glUniform3d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3d #-}
-ptr_glUniform3d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glUniform3d = unsafePerformIO $ getCommand "glUniform3d"
-
--- glUniform3dv ----------------------------------------------------------------
-
-glUniform3dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
-  -> m ()
-glUniform3dv v1 v2 v3 = liftIO $ dyn784 ptr_glUniform3dv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3dv #-}
-ptr_glUniform3dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glUniform3dv = unsafePerformIO $ getCommand "glUniform3dv"
-
--- glUniform3f -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3f
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> m ()
-glUniform3f v1 v2 v3 v4 = liftIO $ dyn804 ptr_glUniform3f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3f #-}
-ptr_glUniform3f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform3f = unsafePerformIO $ getCommand "glUniform3f"
-
--- glUniform3fARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3f'.
-glUniform3fARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> m ()
-glUniform3fARB v1 v2 v3 v4 = liftIO $ dyn804 ptr_glUniform3fARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3fARB #-}
-ptr_glUniform3fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform3fARB = unsafePerformIO $ getCommand "glUniform3fARB"
-
--- glUniform3fv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glUniform3fv v1 v2 v3 = liftIO $ dyn786 ptr_glUniform3fv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3fv #-}
-ptr_glUniform3fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform3fv = unsafePerformIO $ getCommand "glUniform3fv"
-
--- glUniform3fvARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3fv'.
-glUniform3fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glUniform3fvARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform3fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3fvARB #-}
-ptr_glUniform3fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform3fvARB = unsafePerformIO $ getCommand "glUniform3fvARB"
-
--- glUniform3i -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3i
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glUniform3i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i #-}
-ptr_glUniform3i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform3i = unsafePerformIO $ getCommand "glUniform3i"
-
--- glUniform3i64ARB ------------------------------------------------------------
-
-glUniform3i64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> GLint64 -- ^ @z@.
-  -> m ()
-glUniform3i64ARB v1 v2 v3 v4 = liftIO $ dyn805 ptr_glUniform3i64ARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i64ARB #-}
-ptr_glUniform3i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
-ptr_glUniform3i64ARB = unsafePerformIO $ getCommand "glUniform3i64ARB"
-
--- glUniform3i64NV -------------------------------------------------------------
-
-glUniform3i64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> m ()
-glUniform3i64NV v1 v2 v3 v4 = liftIO $ dyn806 ptr_glUniform3i64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i64NV #-}
-ptr_glUniform3i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glUniform3i64NV = unsafePerformIO $ getCommand "glUniform3i64NV"
-
--- glUniform3i64vARB -----------------------------------------------------------
-
-glUniform3i64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
-  -> m ()
-glUniform3i64vARB v1 v2 v3 = liftIO $ dyn789 ptr_glUniform3i64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3i64vARB #-}
-ptr_glUniform3i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glUniform3i64vARB = unsafePerformIO $ getCommand "glUniform3i64vARB"
-
--- glUniform3i64vNV ------------------------------------------------------------
-
-glUniform3i64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
-  -> m ()
-glUniform3i64vNV v1 v2 v3 = liftIO $ dyn790 ptr_glUniform3i64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3i64vNV #-}
-ptr_glUniform3i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glUniform3i64vNV = unsafePerformIO $ getCommand "glUniform3i64vNV"
-
--- glUniform3iARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3i'.
-glUniform3iARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glUniform3iARB v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3iARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3iARB #-}
-ptr_glUniform3iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform3iARB = unsafePerformIO $ getCommand "glUniform3iARB"
-
--- glUniform3iv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3iv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
-  -> m ()
-glUniform3iv v1 v2 v3 = liftIO $ dyn791 ptr_glUniform3iv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3iv #-}
-ptr_glUniform3iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform3iv = unsafePerformIO $ getCommand "glUniform3iv"
-
--- glUniform3ivARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3iv'.
-glUniform3ivARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
-  -> m ()
-glUniform3ivARB v1 v2 v3 = liftIO $ dyn791 ptr_glUniform3ivARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3ivARB #-}
-ptr_glUniform3ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform3ivARB = unsafePerformIO $ getCommand "glUniform3ivARB"
-
--- glUniform3ui ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3ui
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> m ()
-glUniform3ui v1 v2 v3 v4 = liftIO $ dyn807 ptr_glUniform3ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3ui #-}
-ptr_glUniform3ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glUniform3ui = unsafePerformIO $ getCommand "glUniform3ui"
-
--- glUniform3ui64ARB -----------------------------------------------------------
-
-glUniform3ui64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> GLuint64 -- ^ @z@.
-  -> m ()
-glUniform3ui64ARB v1 v2 v3 v4 = liftIO $ dyn808 ptr_glUniform3ui64ARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3ui64ARB #-}
-ptr_glUniform3ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-ptr_glUniform3ui64ARB = unsafePerformIO $ getCommand "glUniform3ui64ARB"
-
--- glUniform3ui64NV ------------------------------------------------------------
-
-glUniform3ui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> m ()
-glUniform3ui64NV v1 v2 v3 v4 = liftIO $ dyn809 ptr_glUniform3ui64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3ui64NV #-}
-ptr_glUniform3ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glUniform3ui64NV = unsafePerformIO $ getCommand "glUniform3ui64NV"
-
--- glUniform3ui64vARB ----------------------------------------------------------
-
-glUniform3ui64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*3@ elements of type @GLuint64@.
-  -> m ()
-glUniform3ui64vARB v1 v2 v3 = liftIO $ dyn795 ptr_glUniform3ui64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3ui64vARB #-}
-ptr_glUniform3ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniform3ui64vARB = unsafePerformIO $ getCommand "glUniform3ui64vARB"
-
--- glUniform3ui64vNV -----------------------------------------------------------
-
-glUniform3ui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
-  -> m ()
-glUniform3ui64vNV v1 v2 v3 = liftIO $ dyn796 ptr_glUniform3ui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3ui64vNV #-}
-ptr_glUniform3ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glUniform3ui64vNV = unsafePerformIO $ getCommand "glUniform3ui64vNV"
-
--- glUniform3uiEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3ui'.
-glUniform3uiEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> m ()
-glUniform3uiEXT v1 v2 v3 v4 = liftIO $ dyn807 ptr_glUniform3uiEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3uiEXT #-}
-ptr_glUniform3uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glUniform3uiEXT = unsafePerformIO $ getCommand "glUniform3uiEXT"
-
--- glUniform3uiv ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3uiv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glUniform3uiv v1 v2 v3 = liftIO $ dyn797 ptr_glUniform3uiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3uiv #-}
-ptr_glUniform3uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform3uiv = unsafePerformIO $ getCommand "glUniform3uiv"
-
--- glUniform3uivEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3uiv'.
-glUniform3uivEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glUniform3uivEXT v1 v2 v3 = liftIO $ dyn797 ptr_glUniform3uivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3uivEXT #-}
-ptr_glUniform3uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform3uivEXT = unsafePerformIO $ getCommand "glUniform3uivEXT"
-
--- glUniform4d -----------------------------------------------------------------
-
-glUniform4d
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glUniform4d v1 v2 v3 v4 v5 = liftIO $ dyn810 ptr_glUniform4d v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4d #-}
-ptr_glUniform4d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glUniform4d = unsafePerformIO $ getCommand "glUniform4d"
-
--- glUniform4dv ----------------------------------------------------------------
-
-glUniform4dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glUniform4dv v1 v2 v3 = liftIO $ dyn784 ptr_glUniform4dv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4dv #-}
-ptr_glUniform4dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glUniform4dv = unsafePerformIO $ getCommand "glUniform4dv"
-
--- glUniform4f -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4f
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> GLfloat -- ^ @v3@.
-  -> m ()
-glUniform4f v1 v2 v3 v4 v5 = liftIO $ dyn811 ptr_glUniform4f v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4f #-}
-ptr_glUniform4f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform4f = unsafePerformIO $ getCommand "glUniform4f"
-
--- glUniform4fARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4f'.
-glUniform4fARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLfloat -- ^ @v0@.
-  -> GLfloat -- ^ @v1@.
-  -> GLfloat -- ^ @v2@.
-  -> GLfloat -- ^ @v3@.
-  -> m ()
-glUniform4fARB v1 v2 v3 v4 v5 = liftIO $ dyn811 ptr_glUniform4fARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4fARB #-}
-ptr_glUniform4fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glUniform4fARB = unsafePerformIO $ getCommand "glUniform4fARB"
-
--- glUniform4fv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glUniform4fv v1 v2 v3 = liftIO $ dyn786 ptr_glUniform4fv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4fv #-}
-ptr_glUniform4fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform4fv = unsafePerformIO $ getCommand "glUniform4fv"
-
--- glUniform4fvARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4fv'.
-glUniform4fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glUniform4fvARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform4fvARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4fvARB #-}
-ptr_glUniform4fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glUniform4fvARB = unsafePerformIO $ getCommand "glUniform4fvARB"
-
--- glUniform4i -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4i
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> GLint -- ^ @v3@.
-  -> m ()
-glUniform4i v1 v2 v3 v4 v5 = liftIO $ dyn253 ptr_glUniform4i v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4i #-}
-ptr_glUniform4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform4i = unsafePerformIO $ getCommand "glUniform4i"
-
--- glUniform4i64ARB ------------------------------------------------------------
-
-glUniform4i64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> GLint64 -- ^ @z@.
-  -> GLint64 -- ^ @w@.
-  -> m ()
-glUniform4i64ARB v1 v2 v3 v4 v5 = liftIO $ dyn812 ptr_glUniform4i64ARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4i64ARB #-}
-ptr_glUniform4i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
-ptr_glUniform4i64ARB = unsafePerformIO $ getCommand "glUniform4i64ARB"
-
--- glUniform4i64NV -------------------------------------------------------------
-
-glUniform4i64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> GLint64EXT -- ^ @w@.
-  -> m ()
-glUniform4i64NV v1 v2 v3 v4 v5 = liftIO $ dyn813 ptr_glUniform4i64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4i64NV #-}
-ptr_glUniform4i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glUniform4i64NV = unsafePerformIO $ getCommand "glUniform4i64NV"
-
--- glUniform4i64vARB -----------------------------------------------------------
-
-glUniform4i64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*4@ elements of type @GLint64@.
-  -> m ()
-glUniform4i64vARB v1 v2 v3 = liftIO $ dyn789 ptr_glUniform4i64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4i64vARB #-}
-ptr_glUniform4i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glUniform4i64vARB = unsafePerformIO $ getCommand "glUniform4i64vARB"
-
--- glUniform4i64vNV ------------------------------------------------------------
-
-glUniform4i64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
-  -> m ()
-glUniform4i64vNV v1 v2 v3 = liftIO $ dyn790 ptr_glUniform4i64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4i64vNV #-}
-ptr_glUniform4i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glUniform4i64vNV = unsafePerformIO $ getCommand "glUniform4i64vNV"
-
--- glUniform4iARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4i'.
-glUniform4iARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> GLint -- ^ @v3@.
-  -> m ()
-glUniform4iARB v1 v2 v3 v4 v5 = liftIO $ dyn253 ptr_glUniform4iARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4iARB #-}
-ptr_glUniform4iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform4iARB = unsafePerformIO $ getCommand "glUniform4iARB"
-
--- glUniform4iv ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4iv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glUniform4iv v1 v2 v3 = liftIO $ dyn791 ptr_glUniform4iv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4iv #-}
-ptr_glUniform4iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform4iv = unsafePerformIO $ getCommand "glUniform4iv"
-
--- glUniform4ivARB -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4iv'.
-glUniform4ivARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
-  -> m ()
-glUniform4ivARB v1 v2 v3 = liftIO $ dyn791 ptr_glUniform4ivARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4ivARB #-}
-ptr_glUniform4ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
-ptr_glUniform4ivARB = unsafePerformIO $ getCommand "glUniform4ivARB"
-
--- glUniform4ui ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4ui
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> GLuint -- ^ @v3@.
-  -> m ()
-glUniform4ui v1 v2 v3 v4 v5 = liftIO $ dyn814 ptr_glUniform4ui v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4ui #-}
-ptr_glUniform4ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glUniform4ui = unsafePerformIO $ getCommand "glUniform4ui"
-
--- glUniform4ui64ARB -----------------------------------------------------------
-
-glUniform4ui64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @x@.
-  -> GLuint64 -- ^ @y@.
-  -> GLuint64 -- ^ @z@.
-  -> GLuint64 -- ^ @w@.
-  -> m ()
-glUniform4ui64ARB v1 v2 v3 v4 v5 = liftIO $ dyn815 ptr_glUniform4ui64ARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4ui64ARB #-}
-ptr_glUniform4ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
-ptr_glUniform4ui64ARB = unsafePerformIO $ getCommand "glUniform4ui64ARB"
-
--- glUniform4ui64NV ------------------------------------------------------------
-
-glUniform4ui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> GLuint64EXT -- ^ @w@.
-  -> m ()
-glUniform4ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn816 ptr_glUniform4ui64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4ui64NV #-}
-ptr_glUniform4ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glUniform4ui64NV = unsafePerformIO $ getCommand "glUniform4ui64NV"
-
--- glUniform4ui64vARB ----------------------------------------------------------
-
-glUniform4ui64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count*4@ elements of type @GLuint64@.
-  -> m ()
-glUniform4ui64vARB v1 v2 v3 = liftIO $ dyn795 ptr_glUniform4ui64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4ui64vARB #-}
-ptr_glUniform4ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniform4ui64vARB = unsafePerformIO $ getCommand "glUniform4ui64vARB"
-
--- glUniform4ui64vNV -----------------------------------------------------------
-
-glUniform4ui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
-  -> m ()
-glUniform4ui64vNV v1 v2 v3 = liftIO $ dyn796 ptr_glUniform4ui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4ui64vNV #-}
-ptr_glUniform4ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glUniform4ui64vNV = unsafePerformIO $ getCommand "glUniform4ui64vNV"
-
--- glUniform4uiEXT -------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4ui'.
-glUniform4uiEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> GLuint -- ^ @v3@.
-  -> m ()
-glUniform4uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn814 ptr_glUniform4uiEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUniform4uiEXT #-}
-ptr_glUniform4uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glUniform4uiEXT = unsafePerformIO $ getCommand "glUniform4uiEXT"
-
--- glUniform4uiv ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform4uiv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glUniform4uiv v1 v2 v3 = liftIO $ dyn797 ptr_glUniform4uiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4uiv #-}
-ptr_glUniform4uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform4uiv = unsafePerformIO $ getCommand "glUniform4uiv"
-
--- glUniform4uivEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glUniform4uiv'.
-glUniform4uivEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
-  -> m ()
-glUniform4uivEXT v1 v2 v3 = liftIO $ dyn797 ptr_glUniform4uivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform4uivEXT #-}
-ptr_glUniform4uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform4uivEXT = unsafePerformIO $ getCommand "glUniform4uivEXT"
-
--- glUniformBlockBinding -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniformBlockBinding.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniformBlockBinding.xhtml OpenGL 4.x>.
-glUniformBlockBinding
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLuint -- ^ @uniformBlockIndex@.
-  -> GLuint -- ^ @uniformBlockBinding@.
-  -> m ()
-glUniformBlockBinding v1 v2 v3 = liftIO $ dyn102 ptr_glUniformBlockBinding v1 v2 v3
-
-{-# NOINLINE ptr_glUniformBlockBinding #-}
-ptr_glUniformBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glUniformBlockBinding = unsafePerformIO $ getCommand "glUniformBlockBinding"
-
--- glUniformBufferEXT ----------------------------------------------------------
-
-glUniformBufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glUniformBufferEXT v1 v2 v3 = liftIO $ dyn640 ptr_glUniformBufferEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniformBufferEXT #-}
-ptr_glUniformBufferEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
-ptr_glUniformBufferEXT = unsafePerformIO $ getCommand "glUniformBufferEXT"
-
--- glUniformHandleui64ARB ------------------------------------------------------
-
-glUniformHandleui64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glUniformHandleui64ARB v1 v2 = liftIO $ dyn793 ptr_glUniformHandleui64ARB v1 v2
-
-{-# NOINLINE ptr_glUniformHandleui64ARB #-}
-ptr_glUniformHandleui64ARB :: FunPtr (GLint -> GLuint64 -> IO ())
-ptr_glUniformHandleui64ARB = unsafePerformIO $ getCommand "glUniformHandleui64ARB"
-
--- glUniformHandleui64IMG ------------------------------------------------------
-
--- | This command is an alias for 'glUniformHandleui64ARB'.
-glUniformHandleui64IMG
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glUniformHandleui64IMG v1 v2 = liftIO $ dyn793 ptr_glUniformHandleui64IMG v1 v2
-
-{-# NOINLINE ptr_glUniformHandleui64IMG #-}
-ptr_glUniformHandleui64IMG :: FunPtr (GLint -> GLuint64 -> IO ())
-ptr_glUniformHandleui64IMG = unsafePerformIO $ getCommand "glUniformHandleui64IMG"
-
--- glUniformHandleui64NV -------------------------------------------------------
-
-glUniformHandleui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64 -- ^ @value@.
-  -> m ()
-glUniformHandleui64NV v1 v2 = liftIO $ dyn793 ptr_glUniformHandleui64NV v1 v2
-
-{-# NOINLINE ptr_glUniformHandleui64NV #-}
-ptr_glUniformHandleui64NV :: FunPtr (GLint -> GLuint64 -> IO ())
-ptr_glUniformHandleui64NV = unsafePerformIO $ getCommand "glUniformHandleui64NV"
-
--- glUniformHandleui64vARB -----------------------------------------------------
-
-glUniformHandleui64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glUniformHandleui64vARB v1 v2 v3 = liftIO $ dyn795 ptr_glUniformHandleui64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniformHandleui64vARB #-}
-ptr_glUniformHandleui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniformHandleui64vARB = unsafePerformIO $ getCommand "glUniformHandleui64vARB"
-
--- glUniformHandleui64vIMG -----------------------------------------------------
-
--- | This command is an alias for 'glUniformHandleui64vARB'.
-glUniformHandleui64vIMG
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glUniformHandleui64vIMG v1 v2 v3 = liftIO $ dyn795 ptr_glUniformHandleui64vIMG v1 v2 v3
-
-{-# NOINLINE ptr_glUniformHandleui64vIMG #-}
-ptr_glUniformHandleui64vIMG :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniformHandleui64vIMG = unsafePerformIO $ getCommand "glUniformHandleui64vIMG"
-
--- glUniformHandleui64vNV ------------------------------------------------------
-
-glUniformHandleui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
-  -> m ()
-glUniformHandleui64vNV v1 v2 v3 = liftIO $ dyn795 ptr_glUniformHandleui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniformHandleui64vNV #-}
-ptr_glUniformHandleui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
-ptr_glUniformHandleui64vNV = unsafePerformIO $ getCommand "glUniformHandleui64vNV"
-
--- glUniformMatrix2dv ----------------------------------------------------------
-
-glUniformMatrix2dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix2dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix2dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2dv #-}
-ptr_glUniformMatrix2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix2dv = unsafePerformIO $ getCommand "glUniformMatrix2dv"
-
--- glUniformMatrix2fv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix2fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2fv #-}
-ptr_glUniformMatrix2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2fv = unsafePerformIO $ getCommand "glUniformMatrix2fv"
-
--- glUniformMatrix2fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix2fv'.
-glUniformMatrix2fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2fvARB v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2fvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2fvARB #-}
-ptr_glUniformMatrix2fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2fvARB = unsafePerformIO $ getCommand "glUniformMatrix2fvARB"
-
--- glUniformMatrix2x3dv --------------------------------------------------------
-
-glUniformMatrix2x3dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix2x3dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix2x3dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x3dv #-}
-ptr_glUniformMatrix2x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix2x3dv = unsafePerformIO $ getCommand "glUniformMatrix2x3dv"
-
--- glUniformMatrix2x3fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix2x3fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2x3fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2x3fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x3fv #-}
-ptr_glUniformMatrix2x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2x3fv = unsafePerformIO $ getCommand "glUniformMatrix2x3fv"
-
--- glUniformMatrix2x3fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix2x3fv'.
-glUniformMatrix2x3fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2x3fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2x3fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x3fvNV #-}
-ptr_glUniformMatrix2x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x3fvNV"
-
--- glUniformMatrix2x4dv --------------------------------------------------------
-
-glUniformMatrix2x4dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix2x4dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix2x4dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x4dv #-}
-ptr_glUniformMatrix2x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix2x4dv = unsafePerformIO $ getCommand "glUniformMatrix2x4dv"
-
--- glUniformMatrix2x4fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix2x4fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2x4fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2x4fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x4fv #-}
-ptr_glUniformMatrix2x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2x4fv = unsafePerformIO $ getCommand "glUniformMatrix2x4fv"
-
--- glUniformMatrix2x4fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix2x4fv'.
-glUniformMatrix2x4fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix2x4fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix2x4fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix2x4fvNV #-}
-ptr_glUniformMatrix2x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix2x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x4fvNV"
-
--- glUniformMatrix3dv ----------------------------------------------------------
-
-glUniformMatrix3dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix3dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix3dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3dv #-}
-ptr_glUniformMatrix3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix3dv = unsafePerformIO $ getCommand "glUniformMatrix3dv"
-
--- glUniformMatrix3fv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix3fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3fv #-}
-ptr_glUniformMatrix3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3fv = unsafePerformIO $ getCommand "glUniformMatrix3fv"
-
--- glUniformMatrix3fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix3fv'.
-glUniformMatrix3fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3fvARB v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3fvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3fvARB #-}
-ptr_glUniformMatrix3fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3fvARB = unsafePerformIO $ getCommand "glUniformMatrix3fvARB"
-
--- glUniformMatrix3x2dv --------------------------------------------------------
-
-glUniformMatrix3x2dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix3x2dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix3x2dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x2dv #-}
-ptr_glUniformMatrix3x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix3x2dv = unsafePerformIO $ getCommand "glUniformMatrix3x2dv"
-
--- glUniformMatrix3x2fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix3x2fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3x2fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3x2fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x2fv #-}
-ptr_glUniformMatrix3x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3x2fv = unsafePerformIO $ getCommand "glUniformMatrix3x2fv"
-
--- glUniformMatrix3x2fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix3x2fv'.
-glUniformMatrix3x2fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3x2fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3x2fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x2fvNV #-}
-ptr_glUniformMatrix3x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x2fvNV"
-
--- glUniformMatrix3x4dv --------------------------------------------------------
-
-glUniformMatrix3x4dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix3x4dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix3x4dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x4dv #-}
-ptr_glUniformMatrix3x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix3x4dv = unsafePerformIO $ getCommand "glUniformMatrix3x4dv"
-
--- glUniformMatrix3x4fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix3x4fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3x4fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3x4fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x4fv #-}
-ptr_glUniformMatrix3x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3x4fv = unsafePerformIO $ getCommand "glUniformMatrix3x4fv"
-
--- glUniformMatrix3x4fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix3x4fv'.
-glUniformMatrix3x4fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix3x4fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix3x4fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix3x4fvNV #-}
-ptr_glUniformMatrix3x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix3x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x4fvNV"
-
--- glUniformMatrix4dv ----------------------------------------------------------
-
-glUniformMatrix4dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix4dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix4dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4dv #-}
-ptr_glUniformMatrix4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix4dv = unsafePerformIO $ getCommand "glUniformMatrix4dv"
-
--- glUniformMatrix4fv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix4fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4fv #-}
-ptr_glUniformMatrix4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4fv = unsafePerformIO $ getCommand "glUniformMatrix4fv"
-
--- glUniformMatrix4fvARB -------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix4fv'.
-glUniformMatrix4fvARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4fvARB v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4fvARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4fvARB #-}
-ptr_glUniformMatrix4fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4fvARB = unsafePerformIO $ getCommand "glUniformMatrix4fvARB"
-
--- glUniformMatrix4x2dv --------------------------------------------------------
-
-glUniformMatrix4x2dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix4x2dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix4x2dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x2dv #-}
-ptr_glUniformMatrix4x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix4x2dv = unsafePerformIO $ getCommand "glUniformMatrix4x2dv"
-
--- glUniformMatrix4x2fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix4x2fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4x2fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4x2fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x2fv #-}
-ptr_glUniformMatrix4x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4x2fv = unsafePerformIO $ getCommand "glUniformMatrix4x2fv"
-
--- glUniformMatrix4x2fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix4x2fv'.
-glUniformMatrix4x2fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4x2fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4x2fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x2fvNV #-}
-ptr_glUniformMatrix4x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x2fvNV"
-
--- glUniformMatrix4x3dv --------------------------------------------------------
-
-glUniformMatrix4x3dv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
-  -> m ()
-glUniformMatrix4x3dv v1 v2 v3 v4 = liftIO $ dyn817 ptr_glUniformMatrix4x3dv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x3dv #-}
-ptr_glUniformMatrix4x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glUniformMatrix4x3dv = unsafePerformIO $ getCommand "glUniformMatrix4x3dv"
-
--- glUniformMatrix4x3fv --------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniformMatrix4x3fv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4x3fv v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4x3fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x3fv #-}
-ptr_glUniformMatrix4x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4x3fv = unsafePerformIO $ getCommand "glUniformMatrix4x3fv"
-
--- glUniformMatrix4x3fvNV ------------------------------------------------------
-
--- | This command is an alias for 'glUniformMatrix4x3fv'.
-glUniformMatrix4x3fvNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
-  -> m ()
-glUniformMatrix4x3fvNV v1 v2 v3 v4 = liftIO $ dyn818 ptr_glUniformMatrix4x3fvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniformMatrix4x3fvNV #-}
-ptr_glUniformMatrix4x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
-ptr_glUniformMatrix4x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x3fvNV"
-
--- glUniformSubroutinesuiv -----------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUniformSubroutines.xhtml OpenGL 4.x>.
-glUniformSubroutinesuiv
-  :: MonadIO m
-  => GLenum -- ^ @shadertype@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @indices@ pointing to @count@ elements of type @GLuint@.
-  -> m ()
-glUniformSubroutinesuiv v1 v2 v3 = liftIO $ dyn197 ptr_glUniformSubroutinesuiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniformSubroutinesuiv #-}
-ptr_glUniformSubroutinesuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniformSubroutinesuiv = unsafePerformIO $ getCommand "glUniformSubroutinesuiv"
-
--- glUniformui64NV -------------------------------------------------------------
-
-glUniformui64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLuint64EXT -- ^ @value@.
-  -> m ()
-glUniformui64NV v1 v2 = liftIO $ dyn794 ptr_glUniformui64NV v1 v2
-
-{-# NOINLINE ptr_glUniformui64NV #-}
-ptr_glUniformui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
-ptr_glUniformui64NV = unsafePerformIO $ getCommand "glUniformui64NV"
-
--- glUniformui64vNV ------------------------------------------------------------
-
-glUniformui64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
-  -> m ()
-glUniformui64vNV v1 v2 v3 = liftIO $ dyn796 ptr_glUniformui64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniformui64vNV #-}
-ptr_glUniformui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glUniformui64vNV = unsafePerformIO $ getCommand "glUniformui64vNV"
-
--- glUnlockArraysEXT -----------------------------------------------------------
-
-glUnlockArraysEXT
-  :: MonadIO m
-  => m ()
-glUnlockArraysEXT = liftIO $ dyn10 ptr_glUnlockArraysEXT
-
-{-# NOINLINE ptr_glUnlockArraysEXT #-}
-ptr_glUnlockArraysEXT :: FunPtr (IO ())
-ptr_glUnlockArraysEXT = unsafePerformIO $ getCommand "glUnlockArraysEXT"
-
--- glUnmapBuffer ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>.
-glUnmapBuffer
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glUnmapBuffer v1 = liftIO $ dyn478 ptr_glUnmapBuffer v1
-
-{-# NOINLINE ptr_glUnmapBuffer #-}
-ptr_glUnmapBuffer :: FunPtr (GLenum -> IO GLboolean)
-ptr_glUnmapBuffer = unsafePerformIO $ getCommand "glUnmapBuffer"
-
--- glUnmapBufferARB ------------------------------------------------------------
-
--- | This command is an alias for 'glUnmapBuffer'.
-glUnmapBufferARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @BufferTargetARB@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glUnmapBufferARB v1 = liftIO $ dyn478 ptr_glUnmapBufferARB v1
-
-{-# NOINLINE ptr_glUnmapBufferARB #-}
-ptr_glUnmapBufferARB :: FunPtr (GLenum -> IO GLboolean)
-ptr_glUnmapBufferARB = unsafePerformIO $ getCommand "glUnmapBufferARB"
-
--- glUnmapBufferOES ------------------------------------------------------------
-
--- | This command is an alias for 'glUnmapBuffer'.
-glUnmapBufferOES
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> m GLboolean
-glUnmapBufferOES v1 = liftIO $ dyn478 ptr_glUnmapBufferOES v1
-
-{-# NOINLINE ptr_glUnmapBufferOES #-}
-ptr_glUnmapBufferOES :: FunPtr (GLenum -> IO GLboolean)
-ptr_glUnmapBufferOES = unsafePerformIO $ getCommand "glUnmapBufferOES"
-
--- glUnmapNamedBuffer ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>.
-glUnmapNamedBuffer
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m GLboolean
-glUnmapNamedBuffer v1 = liftIO $ dyn273 ptr_glUnmapNamedBuffer v1
-
-{-# NOINLINE ptr_glUnmapNamedBuffer #-}
-ptr_glUnmapNamedBuffer :: FunPtr (GLuint -> IO GLboolean)
-ptr_glUnmapNamedBuffer = unsafePerformIO $ getCommand "glUnmapNamedBuffer"
-
--- glUnmapNamedBufferEXT -------------------------------------------------------
-
-glUnmapNamedBufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glUnmapNamedBufferEXT v1 = liftIO $ dyn273 ptr_glUnmapNamedBufferEXT v1
-
-{-# NOINLINE ptr_glUnmapNamedBufferEXT #-}
-ptr_glUnmapNamedBufferEXT :: FunPtr (GLuint -> IO GLboolean)
-ptr_glUnmapNamedBufferEXT = unsafePerformIO $ getCommand "glUnmapNamedBufferEXT"
-
--- glUnmapObjectBufferATI ------------------------------------------------------
-
-glUnmapObjectBufferATI
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> m ()
-glUnmapObjectBufferATI v1 = liftIO $ dyn2 ptr_glUnmapObjectBufferATI v1
-
-{-# NOINLINE ptr_glUnmapObjectBufferATI #-}
-ptr_glUnmapObjectBufferATI :: FunPtr (GLuint -> IO ())
-ptr_glUnmapObjectBufferATI = unsafePerformIO $ getCommand "glUnmapObjectBufferATI"
-
--- glUnmapTexture2DINTEL -------------------------------------------------------
-
-glUnmapTexture2DINTEL
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> m ()
-glUnmapTexture2DINTEL v1 v2 = liftIO $ dyn476 ptr_glUnmapTexture2DINTEL v1 v2
-
-{-# NOINLINE ptr_glUnmapTexture2DINTEL #-}
-ptr_glUnmapTexture2DINTEL :: FunPtr (GLuint -> GLint -> IO ())
-ptr_glUnmapTexture2DINTEL = unsafePerformIO $ getCommand "glUnmapTexture2DINTEL"
-
--- glUpdateObjectBufferATI -----------------------------------------------------
-
-glUpdateObjectBufferATI
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @offset@.
-  -> GLsizei -- ^ @size@.
-  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
-  -> GLenum -- ^ @preserve@ of type @PreserveModeATI@.
-  -> m ()
-glUpdateObjectBufferATI v1 v2 v3 v4 v5 = liftIO $ dyn819 ptr_glUpdateObjectBufferATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glUpdateObjectBufferATI #-}
-ptr_glUpdateObjectBufferATI :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
-ptr_glUpdateObjectBufferATI = unsafePerformIO $ getCommand "glUpdateObjectBufferATI"
-
--- glUseProgram ----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUseProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUseProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUseProgram.xhtml OpenGL 4.x>.
-glUseProgram
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> m ()
-glUseProgram v1 = liftIO $ dyn2 ptr_glUseProgram v1
-
-{-# NOINLINE ptr_glUseProgram #-}
-ptr_glUseProgram :: FunPtr (GLuint -> IO ())
-ptr_glUseProgram = unsafePerformIO $ getCommand "glUseProgram"
-
--- glUseProgramObjectARB -------------------------------------------------------
-
--- | This command is an alias for 'glUseProgram'.
-glUseProgramObjectARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
-  -> m ()
-glUseProgramObjectARB v1 = liftIO $ dyn137 ptr_glUseProgramObjectARB v1
-
-{-# NOINLINE ptr_glUseProgramObjectARB #-}
-ptr_glUseProgramObjectARB :: FunPtr (GLhandleARB -> IO ())
-ptr_glUseProgramObjectARB = unsafePerformIO $ getCommand "glUseProgramObjectARB"
-
--- glUseProgramStages ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUseProgramStages.xhtml OpenGL 4.x>.
-glUseProgramStages
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> GLbitfield -- ^ @stages@.
-  -> GLuint -- ^ @program@.
-  -> m ()
-glUseProgramStages v1 v2 v3 = liftIO $ dyn820 ptr_glUseProgramStages v1 v2 v3
-
-{-# NOINLINE ptr_glUseProgramStages #-}
-ptr_glUseProgramStages :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
-ptr_glUseProgramStages = unsafePerformIO $ getCommand "glUseProgramStages"
+  glTextureSubImage1DEXT,
+  glTextureSubImage2D,
+  glTextureSubImage2DEXT,
+  glTextureSubImage3D,
+  glTextureSubImage3DEXT,
+  glTextureView,
+  glTextureViewEXT,
+  glTextureViewOES,
+  glTrackMatrixNV,
+  glTransformFeedbackAttribsNV,
+  glTransformFeedbackBufferBase,
+  glTransformFeedbackBufferRange,
+  glTransformFeedbackStreamAttribsNV,
+  glTransformFeedbackVaryings,
+  glTransformFeedbackVaryingsEXT,
+  glTransformFeedbackVaryingsNV,
+  glTransformPathNV,
+  glTranslated,
+  glTranslatef,
+  glTranslatex,
+  glTranslatexOES,
+  glUniform1d,
+  glUniform1dv,
+  glUniform1f,
+  glUniform1fARB,
+  glUniform1fv,
+  glUniform1fvARB,
+  glUniform1i,
+  glUniform1i64ARB,
+  glUniform1i64NV,
+  glUniform1i64vARB,
+  glUniform1i64vNV,
+  glUniform1iARB,
+  glUniform1iv,
+  glUniform1ivARB,
+  glUniform1ui,
+  glUniform1ui64ARB,
+  glUniform1ui64NV,
+  glUniform1ui64vARB,
+  glUniform1ui64vNV,
+  glUniform1uiEXT,
+  glUniform1uiv,
+  glUniform1uivEXT,
+  glUniform2d,
+  glUniform2dv,
+  glUniform2f,
+  glUniform2fARB,
+  glUniform2fv,
+  glUniform2fvARB,
+  glUniform2i,
+  glUniform2i64ARB,
+  glUniform2i64NV,
+  glUniform2i64vARB,
+  glUniform2i64vNV,
+  glUniform2iARB,
+  glUniform2iv,
+  glUniform2ivARB,
+  glUniform2ui,
+  glUniform2ui64ARB,
+  glUniform2ui64NV,
+  glUniform2ui64vARB,
+  glUniform2ui64vNV,
+  glUniform2uiEXT,
+  glUniform2uiv,
+  glUniform2uivEXT,
+  glUniform3d,
+  glUniform3dv,
+  glUniform3f,
+  glUniform3fARB,
+  glUniform3fv,
+  glUniform3fvARB,
+  glUniform3i,
+  glUniform3i64ARB,
+  glUniform3i64NV,
+  glUniform3i64vARB,
+  glUniform3i64vNV,
+  glUniform3iARB,
+  glUniform3iv,
+  glUniform3ivARB,
+  glUniform3ui,
+  glUniform3ui64ARB,
+  glUniform3ui64NV,
+  glUniform3ui64vARB,
+  glUniform3ui64vNV,
+  glUniform3uiEXT,
+  glUniform3uiv,
+  glUniform3uivEXT,
+  glUniform4d,
+  glUniform4dv,
+  glUniform4f,
+  glUniform4fARB,
+  glUniform4fv,
+  glUniform4fvARB,
+  glUniform4i,
+  glUniform4i64ARB,
+  glUniform4i64NV,
+  glUniform4i64vARB,
+  glUniform4i64vNV,
+  glUniform4iARB,
+  glUniform4iv
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glTextureSubImage1DEXT ------------------------------------------------------
+
+glTextureSubImage1DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
+  -> m ()
+glTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn805 ptr_glTextureSubImage1DEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureSubImage1DEXT #-}
+ptr_glTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage1DEXT = unsafePerformIO $ getCommand "glTextureSubImage1DEXT"
+
+-- glTextureSubImage2D ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>.
+glTextureSubImage2D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @pixels@.
+  -> m ()
+glTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn806 ptr_glTextureSubImage2D v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTextureSubImage2D #-}
+ptr_glTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage2D = unsafePerformIO $ getCommand "glTextureSubImage2D"
+
+-- glTextureSubImage2DEXT ------------------------------------------------------
+
+glTextureSubImage2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
+  -> m ()
+glTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 = liftIO $ dyn807 ptr_glTextureSubImage2DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10
+
+{-# NOINLINE ptr_glTextureSubImage2DEXT #-}
+ptr_glTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage2DEXT = unsafePerformIO $ getCommand "glTextureSubImage2DEXT"
+
+-- glTextureSubImage3D ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>.
+glTextureSubImage3D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@.
+  -> GLenum -- ^ @type@.
+  -> Ptr a -- ^ @pixels@.
+  -> m ()
+glTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 = liftIO $ dyn94 ptr_glTextureSubImage3D v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
+
+{-# NOINLINE ptr_glTextureSubImage3D #-}
+ptr_glTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage3D = unsafePerformIO $ getCommand "glTextureSubImage3D"
+
+-- glTextureSubImage3DEXT ------------------------------------------------------
+
+glTextureSubImage3DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLint -- ^ @level@ of type @CheckedInt32@.
+  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
+  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
+  -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
+  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
+  -> m ()
+glTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 = liftIO $ dyn808 ptr_glTextureSubImage3DEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12
+
+{-# NOINLINE ptr_glTextureSubImage3DEXT #-}
+ptr_glTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
+ptr_glTextureSubImage3DEXT = unsafePerformIO $ getCommand "glTextureSubImage3DEXT"
+
+-- glTextureView ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureView.xhtml OpenGL 4.x>.
+glTextureView
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLuint -- ^ @origtexture@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @minlevel@.
+  -> GLuint -- ^ @numlevels@.
+  -> GLuint -- ^ @minlayer@.
+  -> GLuint -- ^ @numlayers@.
+  -> m ()
+glTextureView v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn809 ptr_glTextureView v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureView #-}
+ptr_glTextureView :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glTextureView = unsafePerformIO $ getCommand "glTextureView"
+
+-- glTextureViewEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glTextureView'.
+glTextureViewEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLuint -- ^ @origtexture@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @minlevel@.
+  -> GLuint -- ^ @numlevels@.
+  -> GLuint -- ^ @minlayer@.
+  -> GLuint -- ^ @numlayers@.
+  -> m ()
+glTextureViewEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn809 ptr_glTextureViewEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureViewEXT #-}
+ptr_glTextureViewEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glTextureViewEXT = unsafePerformIO $ getCommand "glTextureViewEXT"
+
+-- glTextureViewOES ------------------------------------------------------------
+
+-- | This command is an alias for 'glTextureView'.
+glTextureViewOES
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLuint -- ^ @origtexture@.
+  -> GLenum -- ^ @internalformat@.
+  -> GLuint -- ^ @minlevel@.
+  -> GLuint -- ^ @numlevels@.
+  -> GLuint -- ^ @minlayer@.
+  -> GLuint -- ^ @numlayers@.
+  -> m ()
+glTextureViewOES v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn809 ptr_glTextureViewOES v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glTextureViewOES #-}
+ptr_glTextureViewOES :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glTextureViewOES = unsafePerformIO $ getCommand "glTextureViewOES"
+
+-- glTrackMatrixNV -------------------------------------------------------------
+
+glTrackMatrixNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
+  -> GLuint -- ^ @address@.
+  -> GLenum -- ^ @matrix@ of type @VertexAttribEnumNV@.
+  -> GLenum -- ^ @transform@ of type @VertexAttribEnumNV@.
+  -> m ()
+glTrackMatrixNV v1 v2 v3 v4 = liftIO $ dyn810 ptr_glTrackMatrixNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTrackMatrixNV #-}
+ptr_glTrackMatrixNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
+ptr_glTrackMatrixNV = unsafePerformIO $ getCommand "glTrackMatrixNV"
+
+-- glTransformFeedbackAttribsNV ------------------------------------------------
+
+glTransformFeedbackAttribsNV
+  :: MonadIO m
+  => GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @attribs@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> GLenum -- ^ @bufferMode@.
+  -> m ()
+glTransformFeedbackAttribsNV v1 v2 v3 = liftIO $ dyn811 ptr_glTransformFeedbackAttribsNV v1 v2 v3
+
+{-# NOINLINE ptr_glTransformFeedbackAttribsNV #-}
+ptr_glTransformFeedbackAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
+ptr_glTransformFeedbackAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackAttribsNV"
+
+-- glTransformFeedbackBufferBase -----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferBase.xhtml OpenGL 4.x>.
+glTransformFeedbackBufferBase
+  :: MonadIO m
+  => GLuint -- ^ @xfb@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glTransformFeedbackBufferBase v1 v2 v3 = liftIO $ dyn105 ptr_glTransformFeedbackBufferBase v1 v2 v3
+
+{-# NOINLINE ptr_glTransformFeedbackBufferBase #-}
+ptr_glTransformFeedbackBufferBase :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glTransformFeedbackBufferBase = unsafePerformIO $ getCommand "glTransformFeedbackBufferBase"
+
+-- glTransformFeedbackBufferRange ----------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferRange.xhtml OpenGL 4.x>.
+glTransformFeedbackBufferRange
+  :: MonadIO m
+  => GLuint -- ^ @xfb@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> m ()
+glTransformFeedbackBufferRange v1 v2 v3 v4 v5 = liftIO $ dyn812 ptr_glTransformFeedbackBufferRange v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTransformFeedbackBufferRange #-}
+ptr_glTransformFeedbackBufferRange :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glTransformFeedbackBufferRange = unsafePerformIO $ getCommand "glTransformFeedbackBufferRange"
+
+-- glTransformFeedbackStreamAttribsNV ------------------------------------------
+
+glTransformFeedbackStreamAttribsNV
+  :: MonadIO m
+  => GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @attribs@ pointing to @count@ elements of type @GLint@.
+  -> GLsizei -- ^ @nbuffers@.
+  -> Ptr GLint -- ^ @bufstreams@ pointing to @nbuffers@ elements of type @GLint@.
+  -> GLenum -- ^ @bufferMode@.
+  -> m ()
+glTransformFeedbackStreamAttribsNV v1 v2 v3 v4 v5 = liftIO $ dyn813 ptr_glTransformFeedbackStreamAttribsNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTransformFeedbackStreamAttribsNV #-}
+ptr_glTransformFeedbackStreamAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
+ptr_glTransformFeedbackStreamAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackStreamAttribsNV"
+
+-- glTransformFeedbackVaryings -------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTransformFeedbackVaryings.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackVaryings.xhtml OpenGL 4.x>.
+glTransformFeedbackVaryings
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
+  -> GLenum -- ^ @bufferMode@.
+  -> m ()
+glTransformFeedbackVaryings v1 v2 v3 v4 = liftIO $ dyn814 ptr_glTransformFeedbackVaryings v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTransformFeedbackVaryings #-}
+ptr_glTransformFeedbackVaryings :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
+ptr_glTransformFeedbackVaryings = unsafePerformIO $ getCommand "glTransformFeedbackVaryings"
+
+-- glTransformFeedbackVaryingsEXT ----------------------------------------------
+
+-- | This command is an alias for 'glTransformFeedbackVaryings'.
+glTransformFeedbackVaryingsEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
+  -> GLenum -- ^ @bufferMode@.
+  -> m ()
+glTransformFeedbackVaryingsEXT v1 v2 v3 v4 = liftIO $ dyn814 ptr_glTransformFeedbackVaryingsEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTransformFeedbackVaryingsEXT #-}
+ptr_glTransformFeedbackVaryingsEXT :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
+ptr_glTransformFeedbackVaryingsEXT = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsEXT"
+
+-- glTransformFeedbackVaryingsNV -----------------------------------------------
+
+glTransformFeedbackVaryingsNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @locations@ pointing to @count@ elements of type @GLint@.
+  -> GLenum -- ^ @bufferMode@.
+  -> m ()
+glTransformFeedbackVaryingsNV v1 v2 v3 v4 = liftIO $ dyn815 ptr_glTransformFeedbackVaryingsNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTransformFeedbackVaryingsNV #-}
+ptr_glTransformFeedbackVaryingsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
+ptr_glTransformFeedbackVaryingsNV = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsNV"
+
+-- glTransformPathNV -----------------------------------------------------------
+
+glTransformPathNV
+  :: MonadIO m
+  => GLuint -- ^ @resultPath@ of type @Path@.
+  -> GLuint -- ^ @srcPath@ of type @Path@.
+  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
+  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(transformType)@ elements of type @GLfloat@.
+  -> m ()
+glTransformPathNV v1 v2 v3 v4 = liftIO $ dyn456 ptr_glTransformPathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTransformPathNV #-}
+ptr_glTransformPathNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glTransformPathNV = unsafePerformIO $ getCommand "glTransformPathNV"
+
+-- glTranslated ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>.
+glTranslated
+  :: MonadIO m
+  => GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glTranslated v1 v2 v3 = liftIO $ dyn39 ptr_glTranslated v1 v2 v3
+
+{-# NOINLINE ptr_glTranslated #-}
+ptr_glTranslated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glTranslated = unsafePerformIO $ getCommand "glTranslated"
+
+-- glTranslatef ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>.
+glTranslatef
+  :: MonadIO m
+  => GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glTranslatef v1 v2 v3 = liftIO $ dyn41 ptr_glTranslatef v1 v2 v3
+
+{-# NOINLINE ptr_glTranslatef #-}
+ptr_glTranslatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glTranslatef = unsafePerformIO $ getCommand "glTranslatef"
+
+-- glTranslatex ----------------------------------------------------------------
+
+glTranslatex
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glTranslatex v1 v2 v3 = liftIO $ dyn109 ptr_glTranslatex v1 v2 v3
+
+{-# NOINLINE ptr_glTranslatex #-}
+ptr_glTranslatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glTranslatex = unsafePerformIO $ getCommand "glTranslatex"
+
+-- glTranslatexOES -------------------------------------------------------------
+
+glTranslatexOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glTranslatexOES v1 v2 v3 = liftIO $ dyn109 ptr_glTranslatexOES v1 v2 v3
+
+{-# NOINLINE ptr_glTranslatexOES #-}
+ptr_glTranslatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glTranslatexOES = unsafePerformIO $ getCommand "glTranslatexOES"
+
+-- glUniform1d -----------------------------------------------------------------
+
+glUniform1d
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glUniform1d v1 v2 = liftIO $ dyn816 ptr_glUniform1d v1 v2
+
+{-# NOINLINE ptr_glUniform1d #-}
+ptr_glUniform1d :: FunPtr (GLint -> GLdouble -> IO ())
+ptr_glUniform1d = unsafePerformIO $ getCommand "glUniform1d"
+
+-- glUniform1dv ----------------------------------------------------------------
+
+glUniform1dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*1@ elements of type @GLdouble@.
+  -> m ()
+glUniform1dv v1 v2 v3 = liftIO $ dyn817 ptr_glUniform1dv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1dv #-}
+ptr_glUniform1dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glUniform1dv = unsafePerformIO $ getCommand "glUniform1dv"
+
+-- glUniform1f -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1f
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> m ()
+glUniform1f v1 v2 = liftIO $ dyn818 ptr_glUniform1f v1 v2
+
+{-# NOINLINE ptr_glUniform1f #-}
+ptr_glUniform1f :: FunPtr (GLint -> GLfloat -> IO ())
+ptr_glUniform1f = unsafePerformIO $ getCommand "glUniform1f"
+
+-- glUniform1fARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1f'.
+glUniform1fARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> m ()
+glUniform1fARB v1 v2 = liftIO $ dyn818 ptr_glUniform1fARB v1 v2
+
+{-# NOINLINE ptr_glUniform1fARB #-}
+ptr_glUniform1fARB :: FunPtr (GLint -> GLfloat -> IO ())
+ptr_glUniform1fARB = unsafePerformIO $ getCommand "glUniform1fARB"
+
+-- glUniform1fv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
+  -> m ()
+glUniform1fv v1 v2 v3 = liftIO $ dyn819 ptr_glUniform1fv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1fv #-}
+ptr_glUniform1fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform1fv = unsafePerformIO $ getCommand "glUniform1fv"
+
+-- glUniform1fvARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1fv'.
+glUniform1fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
+  -> m ()
+glUniform1fvARB v1 v2 v3 = liftIO $ dyn819 ptr_glUniform1fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1fvARB #-}
+ptr_glUniform1fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform1fvARB = unsafePerformIO $ getCommand "glUniform1fvARB"
+
+-- glUniform1i -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1i
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> m ()
+glUniform1i v1 v2 = liftIO $ dyn270 ptr_glUniform1i v1 v2
+
+{-# NOINLINE ptr_glUniform1i #-}
+ptr_glUniform1i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glUniform1i = unsafePerformIO $ getCommand "glUniform1i"
+
+-- glUniform1i64ARB ------------------------------------------------------------
+
+glUniform1i64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> m ()
+glUniform1i64ARB v1 v2 = liftIO $ dyn820 ptr_glUniform1i64ARB v1 v2
+
+{-# NOINLINE ptr_glUniform1i64ARB #-}
+ptr_glUniform1i64ARB :: FunPtr (GLint -> GLint64 -> IO ())
+ptr_glUniform1i64ARB = unsafePerformIO $ getCommand "glUniform1i64ARB"
+
+-- glUniform1i64NV -------------------------------------------------------------
+
+glUniform1i64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> m ()
+glUniform1i64NV v1 v2 = liftIO $ dyn821 ptr_glUniform1i64NV v1 v2
+
+{-# NOINLINE ptr_glUniform1i64NV #-}
+ptr_glUniform1i64NV :: FunPtr (GLint -> GLint64EXT -> IO ())
+ptr_glUniform1i64NV = unsafePerformIO $ getCommand "glUniform1i64NV"
+
+-- glUniform1i64vARB -----------------------------------------------------------
+
+glUniform1i64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*1@ elements of type @GLint64@.
+  -> m ()
+glUniform1i64vARB v1 v2 v3 = liftIO $ dyn822 ptr_glUniform1i64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1i64vARB #-}
+ptr_glUniform1i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glUniform1i64vARB = unsafePerformIO $ getCommand "glUniform1i64vARB"
+
+-- glUniform1i64vNV ------------------------------------------------------------
+
+glUniform1i64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLint64EXT@.
+  -> m ()
+glUniform1i64vNV v1 v2 v3 = liftIO $ dyn823 ptr_glUniform1i64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1i64vNV #-}
+ptr_glUniform1i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glUniform1i64vNV = unsafePerformIO $ getCommand "glUniform1i64vNV"
+
+-- glUniform1iARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1i'.
+glUniform1iARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> m ()
+glUniform1iARB v1 v2 = liftIO $ dyn270 ptr_glUniform1iARB v1 v2
+
+{-# NOINLINE ptr_glUniform1iARB #-}
+ptr_glUniform1iARB :: FunPtr (GLint -> GLint -> IO ())
+ptr_glUniform1iARB = unsafePerformIO $ getCommand "glUniform1iARB"
+
+-- glUniform1iv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1iv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
+  -> m ()
+glUniform1iv v1 v2 v3 = liftIO $ dyn824 ptr_glUniform1iv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1iv #-}
+ptr_glUniform1iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform1iv = unsafePerformIO $ getCommand "glUniform1iv"
+
+-- glUniform1ivARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1iv'.
+glUniform1ivARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
+  -> m ()
+glUniform1ivARB v1 v2 v3 = liftIO $ dyn824 ptr_glUniform1ivARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1ivARB #-}
+ptr_glUniform1ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform1ivARB = unsafePerformIO $ getCommand "glUniform1ivARB"
+
+-- glUniform1ui ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1ui
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> m ()
+glUniform1ui v1 v2 = liftIO $ dyn825 ptr_glUniform1ui v1 v2
+
+{-# NOINLINE ptr_glUniform1ui #-}
+ptr_glUniform1ui :: FunPtr (GLint -> GLuint -> IO ())
+ptr_glUniform1ui = unsafePerformIO $ getCommand "glUniform1ui"
+
+-- glUniform1ui64ARB -----------------------------------------------------------
+
+glUniform1ui64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> m ()
+glUniform1ui64ARB v1 v2 = liftIO $ dyn826 ptr_glUniform1ui64ARB v1 v2
+
+{-# NOINLINE ptr_glUniform1ui64ARB #-}
+ptr_glUniform1ui64ARB :: FunPtr (GLint -> GLuint64 -> IO ())
+ptr_glUniform1ui64ARB = unsafePerformIO $ getCommand "glUniform1ui64ARB"
+
+-- glUniform1ui64NV ------------------------------------------------------------
+
+glUniform1ui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> m ()
+glUniform1ui64NV v1 v2 = liftIO $ dyn827 ptr_glUniform1ui64NV v1 v2
+
+{-# NOINLINE ptr_glUniform1ui64NV #-}
+ptr_glUniform1ui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
+ptr_glUniform1ui64NV = unsafePerformIO $ getCommand "glUniform1ui64NV"
+
+-- glUniform1ui64vARB ----------------------------------------------------------
+
+glUniform1ui64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*1@ elements of type @GLuint64@.
+  -> m ()
+glUniform1ui64vARB v1 v2 v3 = liftIO $ dyn828 ptr_glUniform1ui64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1ui64vARB #-}
+ptr_glUniform1ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniform1ui64vARB = unsafePerformIO $ getCommand "glUniform1ui64vARB"
+
+-- glUniform1ui64vNV -----------------------------------------------------------
+
+glUniform1ui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
+  -> m ()
+glUniform1ui64vNV v1 v2 v3 = liftIO $ dyn829 ptr_glUniform1ui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1ui64vNV #-}
+ptr_glUniform1ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glUniform1ui64vNV = unsafePerformIO $ getCommand "glUniform1ui64vNV"
+
+-- glUniform1uiEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1ui'.
+glUniform1uiEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> m ()
+glUniform1uiEXT v1 v2 = liftIO $ dyn825 ptr_glUniform1uiEXT v1 v2
+
+{-# NOINLINE ptr_glUniform1uiEXT #-}
+ptr_glUniform1uiEXT :: FunPtr (GLint -> GLuint -> IO ())
+ptr_glUniform1uiEXT = unsafePerformIO $ getCommand "glUniform1uiEXT"
+
+-- glUniform1uiv ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform1uiv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
+  -> m ()
+glUniform1uiv v1 v2 v3 = liftIO $ dyn830 ptr_glUniform1uiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1uiv #-}
+ptr_glUniform1uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform1uiv = unsafePerformIO $ getCommand "glUniform1uiv"
+
+-- glUniform1uivEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform1uiv'.
+glUniform1uivEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
+  -> m ()
+glUniform1uivEXT v1 v2 v3 = liftIO $ dyn830 ptr_glUniform1uivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform1uivEXT #-}
+ptr_glUniform1uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform1uivEXT = unsafePerformIO $ getCommand "glUniform1uivEXT"
+
+-- glUniform2d -----------------------------------------------------------------
+
+glUniform2d
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glUniform2d v1 v2 v3 = liftIO $ dyn519 ptr_glUniform2d v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2d #-}
+ptr_glUniform2d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
+ptr_glUniform2d = unsafePerformIO $ getCommand "glUniform2d"
+
+-- glUniform2dv ----------------------------------------------------------------
+
+glUniform2dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
+  -> m ()
+glUniform2dv v1 v2 v3 = liftIO $ dyn817 ptr_glUniform2dv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2dv #-}
+ptr_glUniform2dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glUniform2dv = unsafePerformIO $ getCommand "glUniform2dv"
+
+-- glUniform2f -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2f
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> m ()
+glUniform2f v1 v2 v3 = liftIO $ dyn520 ptr_glUniform2f v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2f #-}
+ptr_glUniform2f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform2f = unsafePerformIO $ getCommand "glUniform2f"
+
+-- glUniform2fARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2f'.
+glUniform2fARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> m ()
+glUniform2fARB v1 v2 v3 = liftIO $ dyn520 ptr_glUniform2fARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2fARB #-}
+ptr_glUniform2fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform2fARB = unsafePerformIO $ getCommand "glUniform2fARB"
+
+-- glUniform2fv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
+  -> m ()
+glUniform2fv v1 v2 v3 = liftIO $ dyn819 ptr_glUniform2fv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2fv #-}
+ptr_glUniform2fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform2fv = unsafePerformIO $ getCommand "glUniform2fv"
+
+-- glUniform2fvARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2fv'.
+glUniform2fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
+  -> m ()
+glUniform2fvARB v1 v2 v3 = liftIO $ dyn819 ptr_glUniform2fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2fvARB #-}
+ptr_glUniform2fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform2fvARB = unsafePerformIO $ getCommand "glUniform2fvARB"
+
+-- glUniform2i -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2i
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> m ()
+glUniform2i v1 v2 v3 = liftIO $ dyn43 ptr_glUniform2i v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2i #-}
+ptr_glUniform2i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glUniform2i = unsafePerformIO $ getCommand "glUniform2i"
+
+-- glUniform2i64ARB ------------------------------------------------------------
+
+glUniform2i64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> m ()
+glUniform2i64ARB v1 v2 v3 = liftIO $ dyn831 ptr_glUniform2i64ARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2i64ARB #-}
+ptr_glUniform2i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> IO ())
+ptr_glUniform2i64ARB = unsafePerformIO $ getCommand "glUniform2i64ARB"
+
+-- glUniform2i64NV -------------------------------------------------------------
+
+glUniform2i64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> m ()
+glUniform2i64NV v1 v2 v3 = liftIO $ dyn832 ptr_glUniform2i64NV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2i64NV #-}
+ptr_glUniform2i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glUniform2i64NV = unsafePerformIO $ getCommand "glUniform2i64NV"
+
+-- glUniform2i64vARB -----------------------------------------------------------
+
+glUniform2i64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*2@ elements of type @GLint64@.
+  -> m ()
+glUniform2i64vARB v1 v2 v3 = liftIO $ dyn822 ptr_glUniform2i64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2i64vARB #-}
+ptr_glUniform2i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glUniform2i64vARB = unsafePerformIO $ getCommand "glUniform2i64vARB"
+
+-- glUniform2i64vNV ------------------------------------------------------------
+
+glUniform2i64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
+  -> m ()
+glUniform2i64vNV v1 v2 v3 = liftIO $ dyn823 ptr_glUniform2i64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2i64vNV #-}
+ptr_glUniform2i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glUniform2i64vNV = unsafePerformIO $ getCommand "glUniform2i64vNV"
+
+-- glUniform2iARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2i'.
+glUniform2iARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> m ()
+glUniform2iARB v1 v2 v3 = liftIO $ dyn43 ptr_glUniform2iARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2iARB #-}
+ptr_glUniform2iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glUniform2iARB = unsafePerformIO $ getCommand "glUniform2iARB"
+
+-- glUniform2iv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2iv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
+  -> m ()
+glUniform2iv v1 v2 v3 = liftIO $ dyn824 ptr_glUniform2iv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2iv #-}
+ptr_glUniform2iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform2iv = unsafePerformIO $ getCommand "glUniform2iv"
+
+-- glUniform2ivARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2iv'.
+glUniform2ivARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
+  -> m ()
+glUniform2ivARB v1 v2 v3 = liftIO $ dyn824 ptr_glUniform2ivARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ivARB #-}
+ptr_glUniform2ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform2ivARB = unsafePerformIO $ getCommand "glUniform2ivARB"
+
+-- glUniform2ui ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2ui
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> m ()
+glUniform2ui v1 v2 v3 = liftIO $ dyn833 ptr_glUniform2ui v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ui #-}
+ptr_glUniform2ui :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
+ptr_glUniform2ui = unsafePerformIO $ getCommand "glUniform2ui"
+
+-- glUniform2ui64ARB -----------------------------------------------------------
+
+glUniform2ui64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> m ()
+glUniform2ui64ARB v1 v2 v3 = liftIO $ dyn834 ptr_glUniform2ui64ARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ui64ARB #-}
+ptr_glUniform2ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> IO ())
+ptr_glUniform2ui64ARB = unsafePerformIO $ getCommand "glUniform2ui64ARB"
+
+-- glUniform2ui64NV ------------------------------------------------------------
+
+glUniform2ui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> m ()
+glUniform2ui64NV v1 v2 v3 = liftIO $ dyn835 ptr_glUniform2ui64NV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ui64NV #-}
+ptr_glUniform2ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glUniform2ui64NV = unsafePerformIO $ getCommand "glUniform2ui64NV"
+
+-- glUniform2ui64vARB ----------------------------------------------------------
+
+glUniform2ui64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*2@ elements of type @GLuint64@.
+  -> m ()
+glUniform2ui64vARB v1 v2 v3 = liftIO $ dyn828 ptr_glUniform2ui64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ui64vARB #-}
+ptr_glUniform2ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniform2ui64vARB = unsafePerformIO $ getCommand "glUniform2ui64vARB"
+
+-- glUniform2ui64vNV -----------------------------------------------------------
+
+glUniform2ui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
+  -> m ()
+glUniform2ui64vNV v1 v2 v3 = liftIO $ dyn829 ptr_glUniform2ui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2ui64vNV #-}
+ptr_glUniform2ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glUniform2ui64vNV = unsafePerformIO $ getCommand "glUniform2ui64vNV"
+
+-- glUniform2uiEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2ui'.
+glUniform2uiEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> m ()
+glUniform2uiEXT v1 v2 v3 = liftIO $ dyn833 ptr_glUniform2uiEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2uiEXT #-}
+ptr_glUniform2uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
+ptr_glUniform2uiEXT = unsafePerformIO $ getCommand "glUniform2uiEXT"
+
+-- glUniform2uiv ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform2uiv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
+  -> m ()
+glUniform2uiv v1 v2 v3 = liftIO $ dyn830 ptr_glUniform2uiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2uiv #-}
+ptr_glUniform2uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform2uiv = unsafePerformIO $ getCommand "glUniform2uiv"
+
+-- glUniform2uivEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform2uiv'.
+glUniform2uivEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
+  -> m ()
+glUniform2uivEXT v1 v2 v3 = liftIO $ dyn830 ptr_glUniform2uivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform2uivEXT #-}
+ptr_glUniform2uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform2uivEXT = unsafePerformIO $ getCommand "glUniform2uivEXT"
+
+-- glUniform3d -----------------------------------------------------------------
+
+glUniform3d
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glUniform3d v1 v2 v3 v4 = liftIO $ dyn836 ptr_glUniform3d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3d #-}
+ptr_glUniform3d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glUniform3d = unsafePerformIO $ getCommand "glUniform3d"
+
+-- glUniform3dv ----------------------------------------------------------------
+
+glUniform3dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
+  -> m ()
+glUniform3dv v1 v2 v3 = liftIO $ dyn817 ptr_glUniform3dv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3dv #-}
+ptr_glUniform3dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glUniform3dv = unsafePerformIO $ getCommand "glUniform3dv"
+
+-- glUniform3f -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3f
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> m ()
+glUniform3f v1 v2 v3 v4 = liftIO $ dyn837 ptr_glUniform3f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3f #-}
+ptr_glUniform3f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform3f = unsafePerformIO $ getCommand "glUniform3f"
+
+-- glUniform3fARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3f'.
+glUniform3fARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> m ()
+glUniform3fARB v1 v2 v3 v4 = liftIO $ dyn837 ptr_glUniform3fARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3fARB #-}
+ptr_glUniform3fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform3fARB = unsafePerformIO $ getCommand "glUniform3fARB"
+
+-- glUniform3fv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glUniform3fv v1 v2 v3 = liftIO $ dyn819 ptr_glUniform3fv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3fv #-}
+ptr_glUniform3fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform3fv = unsafePerformIO $ getCommand "glUniform3fv"
+
+-- glUniform3fvARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3fv'.
+glUniform3fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glUniform3fvARB v1 v2 v3 = liftIO $ dyn819 ptr_glUniform3fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3fvARB #-}
+ptr_glUniform3fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform3fvARB = unsafePerformIO $ getCommand "glUniform3fvARB"
+
+-- glUniform3i -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3i
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glUniform3i v1 v2 v3 v4 = liftIO $ dyn79 ptr_glUniform3i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i #-}
+ptr_glUniform3i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform3i = unsafePerformIO $ getCommand "glUniform3i"
+
+-- glUniform3i64ARB ------------------------------------------------------------
+
+glUniform3i64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> GLint64 -- ^ @z@.
+  -> m ()
+glUniform3i64ARB v1 v2 v3 v4 = liftIO $ dyn838 ptr_glUniform3i64ARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i64ARB #-}
+ptr_glUniform3i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
+ptr_glUniform3i64ARB = unsafePerformIO $ getCommand "glUniform3i64ARB"
+
+-- glUniform3i64NV -------------------------------------------------------------
+
+glUniform3i64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> m ()
+glUniform3i64NV v1 v2 v3 v4 = liftIO $ dyn839 ptr_glUniform3i64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i64NV #-}
+ptr_glUniform3i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glUniform3i64NV = unsafePerformIO $ getCommand "glUniform3i64NV"
+
+-- glUniform3i64vARB -----------------------------------------------------------
+
+glUniform3i64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
+  -> m ()
+glUniform3i64vARB v1 v2 v3 = liftIO $ dyn822 ptr_glUniform3i64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3i64vARB #-}
+ptr_glUniform3i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glUniform3i64vARB = unsafePerformIO $ getCommand "glUniform3i64vARB"
+
+-- glUniform3i64vNV ------------------------------------------------------------
+
+glUniform3i64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
+  -> m ()
+glUniform3i64vNV v1 v2 v3 = liftIO $ dyn823 ptr_glUniform3i64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3i64vNV #-}
+ptr_glUniform3i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glUniform3i64vNV = unsafePerformIO $ getCommand "glUniform3i64vNV"
+
+-- glUniform3iARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3i'.
+glUniform3iARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glUniform3iARB v1 v2 v3 v4 = liftIO $ dyn79 ptr_glUniform3iARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3iARB #-}
+ptr_glUniform3iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform3iARB = unsafePerformIO $ getCommand "glUniform3iARB"
+
+-- glUniform3iv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3iv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
+  -> m ()
+glUniform3iv v1 v2 v3 = liftIO $ dyn824 ptr_glUniform3iv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3iv #-}
+ptr_glUniform3iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform3iv = unsafePerformIO $ getCommand "glUniform3iv"
+
+-- glUniform3ivARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3iv'.
+glUniform3ivARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
+  -> m ()
+glUniform3ivARB v1 v2 v3 = liftIO $ dyn824 ptr_glUniform3ivARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3ivARB #-}
+ptr_glUniform3ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform3ivARB = unsafePerformIO $ getCommand "glUniform3ivARB"
+
+-- glUniform3ui ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3ui
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> m ()
+glUniform3ui v1 v2 v3 v4 = liftIO $ dyn840 ptr_glUniform3ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3ui #-}
+ptr_glUniform3ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glUniform3ui = unsafePerformIO $ getCommand "glUniform3ui"
+
+-- glUniform3ui64ARB -----------------------------------------------------------
+
+glUniform3ui64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> GLuint64 -- ^ @z@.
+  -> m ()
+glUniform3ui64ARB v1 v2 v3 v4 = liftIO $ dyn841 ptr_glUniform3ui64ARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3ui64ARB #-}
+ptr_glUniform3ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+ptr_glUniform3ui64ARB = unsafePerformIO $ getCommand "glUniform3ui64ARB"
+
+-- glUniform3ui64NV ------------------------------------------------------------
+
+glUniform3ui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> m ()
+glUniform3ui64NV v1 v2 v3 v4 = liftIO $ dyn842 ptr_glUniform3ui64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3ui64NV #-}
+ptr_glUniform3ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glUniform3ui64NV = unsafePerformIO $ getCommand "glUniform3ui64NV"
+
+-- glUniform3ui64vARB ----------------------------------------------------------
+
+glUniform3ui64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*3@ elements of type @GLuint64@.
+  -> m ()
+glUniform3ui64vARB v1 v2 v3 = liftIO $ dyn828 ptr_glUniform3ui64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3ui64vARB #-}
+ptr_glUniform3ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniform3ui64vARB = unsafePerformIO $ getCommand "glUniform3ui64vARB"
+
+-- glUniform3ui64vNV -----------------------------------------------------------
+
+glUniform3ui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
+  -> m ()
+glUniform3ui64vNV v1 v2 v3 = liftIO $ dyn829 ptr_glUniform3ui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3ui64vNV #-}
+ptr_glUniform3ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glUniform3ui64vNV = unsafePerformIO $ getCommand "glUniform3ui64vNV"
+
+-- glUniform3uiEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3ui'.
+glUniform3uiEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> m ()
+glUniform3uiEXT v1 v2 v3 v4 = liftIO $ dyn840 ptr_glUniform3uiEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3uiEXT #-}
+ptr_glUniform3uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glUniform3uiEXT = unsafePerformIO $ getCommand "glUniform3uiEXT"
+
+-- glUniform3uiv ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3uiv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glUniform3uiv v1 v2 v3 = liftIO $ dyn830 ptr_glUniform3uiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3uiv #-}
+ptr_glUniform3uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform3uiv = unsafePerformIO $ getCommand "glUniform3uiv"
+
+-- glUniform3uivEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3uiv'.
+glUniform3uivEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glUniform3uivEXT v1 v2 v3 = liftIO $ dyn830 ptr_glUniform3uivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3uivEXT #-}
+ptr_glUniform3uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform3uivEXT = unsafePerformIO $ getCommand "glUniform3uivEXT"
+
+-- glUniform4d -----------------------------------------------------------------
+
+glUniform4d
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glUniform4d v1 v2 v3 v4 v5 = liftIO $ dyn843 ptr_glUniform4d v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4d #-}
+ptr_glUniform4d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glUniform4d = unsafePerformIO $ getCommand "glUniform4d"
+
+-- glUniform4dv ----------------------------------------------------------------
+
+glUniform4dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glUniform4dv v1 v2 v3 = liftIO $ dyn817 ptr_glUniform4dv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4dv #-}
+ptr_glUniform4dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glUniform4dv = unsafePerformIO $ getCommand "glUniform4dv"
+
+-- glUniform4f -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4f
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> GLfloat -- ^ @v3@.
+  -> m ()
+glUniform4f v1 v2 v3 v4 v5 = liftIO $ dyn844 ptr_glUniform4f v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4f #-}
+ptr_glUniform4f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform4f = unsafePerformIO $ getCommand "glUniform4f"
+
+-- glUniform4fARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4f'.
+glUniform4fARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLfloat -- ^ @v0@.
+  -> GLfloat -- ^ @v1@.
+  -> GLfloat -- ^ @v2@.
+  -> GLfloat -- ^ @v3@.
+  -> m ()
+glUniform4fARB v1 v2 v3 v4 v5 = liftIO $ dyn844 ptr_glUniform4fARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4fARB #-}
+ptr_glUniform4fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glUniform4fARB = unsafePerformIO $ getCommand "glUniform4fARB"
+
+-- glUniform4fv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glUniform4fv v1 v2 v3 = liftIO $ dyn819 ptr_glUniform4fv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4fv #-}
+ptr_glUniform4fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform4fv = unsafePerformIO $ getCommand "glUniform4fv"
+
+-- glUniform4fvARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4fv'.
+glUniform4fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glUniform4fvARB v1 v2 v3 = liftIO $ dyn819 ptr_glUniform4fvARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4fvARB #-}
+ptr_glUniform4fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glUniform4fvARB = unsafePerformIO $ getCommand "glUniform4fvARB"
+
+-- glUniform4i -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4i
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> GLint -- ^ @v3@.
+  -> m ()
+glUniform4i v1 v2 v3 v4 v5 = liftIO $ dyn256 ptr_glUniform4i v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4i #-}
+ptr_glUniform4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform4i = unsafePerformIO $ getCommand "glUniform4i"
+
+-- glUniform4i64ARB ------------------------------------------------------------
+
+glUniform4i64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> GLint64 -- ^ @z@.
+  -> GLint64 -- ^ @w@.
+  -> m ()
+glUniform4i64ARB v1 v2 v3 v4 v5 = liftIO $ dyn845 ptr_glUniform4i64ARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4i64ARB #-}
+ptr_glUniform4i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> GLint64 -> IO ())
+ptr_glUniform4i64ARB = unsafePerformIO $ getCommand "glUniform4i64ARB"
+
+-- glUniform4i64NV -------------------------------------------------------------
+
+glUniform4i64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> GLint64EXT -- ^ @w@.
+  -> m ()
+glUniform4i64NV v1 v2 v3 v4 v5 = liftIO $ dyn846 ptr_glUniform4i64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4i64NV #-}
+ptr_glUniform4i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glUniform4i64NV = unsafePerformIO $ getCommand "glUniform4i64NV"
+
+-- glUniform4i64vARB -----------------------------------------------------------
+
+glUniform4i64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*4@ elements of type @GLint64@.
+  -> m ()
+glUniform4i64vARB v1 v2 v3 = liftIO $ dyn822 ptr_glUniform4i64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4i64vARB #-}
+ptr_glUniform4i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glUniform4i64vARB = unsafePerformIO $ getCommand "glUniform4i64vARB"
+
+-- glUniform4i64vNV ------------------------------------------------------------
+
+glUniform4i64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
+  -> m ()
+glUniform4i64vNV v1 v2 v3 = liftIO $ dyn823 ptr_glUniform4i64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4i64vNV #-}
+ptr_glUniform4i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glUniform4i64vNV = unsafePerformIO $ getCommand "glUniform4i64vNV"
+
+-- glUniform4iARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4i'.
+glUniform4iARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> GLint -- ^ @v3@.
+  -> m ()
+glUniform4iARB v1 v2 v3 v4 v5 = liftIO $ dyn256 ptr_glUniform4iARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4iARB #-}
+ptr_glUniform4iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform4iARB = unsafePerformIO $ getCommand "glUniform4iARB"
+
+-- glUniform4iv ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4iv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glUniform4iv v1 v2 v3 = liftIO $ dyn824 ptr_glUniform4iv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4iv #-}
+ptr_glUniform4iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform4iv = unsafePerformIO $ getCommand "glUniform4iv"
 
diff --git a/src/Graphics/GL/Functions/F28.hs b/src/Graphics/GL/Functions/F28.hs
--- a/src/Graphics/GL/Functions/F28.hs
+++ b/src/Graphics/GL/Functions/F28.hs
@@ -15,1536 +15,1527 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F28 (
-  glUseProgramStagesEXT,
-  glUseShaderProgramEXT,
-  glVDPAUFiniNV,
-  glVDPAUGetSurfaceivNV,
-  glVDPAUInitNV,
-  glVDPAUIsSurfaceNV,
-  glVDPAUMapSurfacesNV,
-  glVDPAURegisterOutputSurfaceNV,
-  glVDPAURegisterVideoSurfaceNV,
-  glVDPAUSurfaceAccessNV,
-  glVDPAUUnmapSurfacesNV,
-  glVDPAUUnregisterSurfaceNV,
-  glValidateProgram,
-  glValidateProgramARB,
-  glValidateProgramPipeline,
-  glValidateProgramPipelineEXT,
-  glVariantArrayObjectATI,
-  glVariantPointerEXT,
-  glVariantbvEXT,
-  glVariantdvEXT,
-  glVariantfvEXT,
-  glVariantivEXT,
-  glVariantsvEXT,
-  glVariantubvEXT,
-  glVariantuivEXT,
-  glVariantusvEXT,
-  glVertex2bOES,
-  glVertex2bvOES,
-  glVertex2d,
-  glVertex2dv,
-  glVertex2f,
-  glVertex2fv,
-  glVertex2hNV,
-  glVertex2hvNV,
-  glVertex2i,
-  glVertex2iv,
-  glVertex2s,
-  glVertex2sv,
-  glVertex2xOES,
-  glVertex2xvOES,
-  glVertex3bOES,
-  glVertex3bvOES,
-  glVertex3d,
-  glVertex3dv,
-  glVertex3f,
-  glVertex3fv,
-  glVertex3hNV,
-  glVertex3hvNV,
-  glVertex3i,
-  glVertex3iv,
-  glVertex3s,
-  glVertex3sv,
-  glVertex3xOES,
-  glVertex3xvOES,
-  glVertex4bOES,
-  glVertex4bvOES,
-  glVertex4d,
-  glVertex4dv,
-  glVertex4f,
-  glVertex4fv,
-  glVertex4hNV,
-  glVertex4hvNV,
-  glVertex4i,
-  glVertex4iv,
-  glVertex4s,
-  glVertex4sv,
-  glVertex4xOES,
-  glVertex4xvOES,
-  glVertexArrayAttribBinding,
-  glVertexArrayAttribFormat,
-  glVertexArrayAttribIFormat,
-  glVertexArrayAttribLFormat,
-  glVertexArrayBindVertexBufferEXT,
-  glVertexArrayBindingDivisor,
-  glVertexArrayColorOffsetEXT,
-  glVertexArrayEdgeFlagOffsetEXT,
-  glVertexArrayElementBuffer,
-  glVertexArrayFogCoordOffsetEXT,
-  glVertexArrayIndexOffsetEXT,
-  glVertexArrayMultiTexCoordOffsetEXT,
-  glVertexArrayNormalOffsetEXT,
-  glVertexArrayParameteriAPPLE,
-  glVertexArrayRangeAPPLE,
-  glVertexArrayRangeNV,
-  glVertexArraySecondaryColorOffsetEXT,
-  glVertexArrayTexCoordOffsetEXT,
-  glVertexArrayVertexAttribBindingEXT,
-  glVertexArrayVertexAttribDivisorEXT,
-  glVertexArrayVertexAttribFormatEXT,
-  glVertexArrayVertexAttribIFormatEXT,
-  glVertexArrayVertexAttribIOffsetEXT,
-  glVertexArrayVertexAttribLFormatEXT,
-  glVertexArrayVertexAttribLOffsetEXT,
-  glVertexArrayVertexAttribOffsetEXT,
-  glVertexArrayVertexBindingDivisorEXT,
-  glVertexArrayVertexBuffer,
-  glVertexArrayVertexBuffers,
-  glVertexArrayVertexOffsetEXT,
-  glVertexAttrib1d,
-  glVertexAttrib1dARB
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glUseProgramStagesEXT -------------------------------------------------------
-
-glUseProgramStagesEXT
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> GLbitfield -- ^ @stages@.
-  -> GLuint -- ^ @program@.
-  -> m ()
-glUseProgramStagesEXT v1 v2 v3 = liftIO $ dyn820 ptr_glUseProgramStagesEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUseProgramStagesEXT #-}
-ptr_glUseProgramStagesEXT :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
-ptr_glUseProgramStagesEXT = unsafePerformIO $ getCommand "glUseProgramStagesEXT"
-
--- glUseShaderProgramEXT -------------------------------------------------------
-
-glUseShaderProgramEXT
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @program@.
-  -> m ()
-glUseShaderProgramEXT v1 v2 = liftIO $ dyn16 ptr_glUseShaderProgramEXT v1 v2
-
-{-# NOINLINE ptr_glUseShaderProgramEXT #-}
-ptr_glUseShaderProgramEXT :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glUseShaderProgramEXT = unsafePerformIO $ getCommand "glUseShaderProgramEXT"
-
--- glVDPAUFiniNV ---------------------------------------------------------------
-
-glVDPAUFiniNV
-  :: MonadIO m
-  => m ()
-glVDPAUFiniNV = liftIO $ dyn10 ptr_glVDPAUFiniNV
-
-{-# NOINLINE ptr_glVDPAUFiniNV #-}
-ptr_glVDPAUFiniNV :: FunPtr (IO ())
-ptr_glVDPAUFiniNV = unsafePerformIO $ getCommand "glVDPAUFiniNV"
-
--- glVDPAUGetSurfaceivNV -------------------------------------------------------
-
-glVDPAUGetSurfaceivNV
-  :: MonadIO m
-  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
-  -> GLenum -- ^ @pname@.
-  -> GLsizei -- ^ @bufSize@.
-  -> Ptr GLsizei -- ^ @length@.
-  -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
-  -> m ()
-glVDPAUGetSurfaceivNV v1 v2 v3 v4 v5 = liftIO $ dyn821 ptr_glVDPAUGetSurfaceivNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVDPAUGetSurfaceivNV #-}
-ptr_glVDPAUGetSurfaceivNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
-ptr_glVDPAUGetSurfaceivNV = unsafePerformIO $ getCommand "glVDPAUGetSurfaceivNV"
-
--- glVDPAUInitNV ---------------------------------------------------------------
-
-glVDPAUInitNV
-  :: MonadIO m
-  => Ptr a -- ^ @vdpDevice@.
-  -> Ptr b -- ^ @getProcAddress@.
-  -> m ()
-glVDPAUInitNV v1 v2 = liftIO $ dyn822 ptr_glVDPAUInitNV v1 v2
-
-{-# NOINLINE ptr_glVDPAUInitNV #-}
-ptr_glVDPAUInitNV :: FunPtr (Ptr a -> Ptr b -> IO ())
-ptr_glVDPAUInitNV = unsafePerformIO $ getCommand "glVDPAUInitNV"
-
--- glVDPAUIsSurfaceNV ----------------------------------------------------------
-
-glVDPAUIsSurfaceNV
-  :: MonadIO m
-  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
-  -> m GLboolean
-glVDPAUIsSurfaceNV v1 = liftIO $ dyn823 ptr_glVDPAUIsSurfaceNV v1
-
-{-# NOINLINE ptr_glVDPAUIsSurfaceNV #-}
-ptr_glVDPAUIsSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
-ptr_glVDPAUIsSurfaceNV = unsafePerformIO $ getCommand "glVDPAUIsSurfaceNV"
-
--- glVDPAUMapSurfacesNV --------------------------------------------------------
-
-glVDPAUMapSurfacesNV
-  :: MonadIO m
-  => GLsizei -- ^ @numSurfaces@.
-  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurfaces@ elements of type @vdpauSurfaceNV@.
-  -> m ()
-glVDPAUMapSurfacesNV v1 v2 = liftIO $ dyn824 ptr_glVDPAUMapSurfacesNV v1 v2
-
-{-# NOINLINE ptr_glVDPAUMapSurfacesNV #-}
-ptr_glVDPAUMapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
-ptr_glVDPAUMapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUMapSurfacesNV"
-
--- glVDPAURegisterOutputSurfaceNV ----------------------------------------------
-
-glVDPAURegisterOutputSurfaceNV
-  :: MonadIO m
-  => Ptr a -- ^ @vdpSurface@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @numTextureNames@.
-  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
-  -> m GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
-glVDPAURegisterOutputSurfaceNV v1 v2 v3 v4 = liftIO $ dyn825 ptr_glVDPAURegisterOutputSurfaceNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVDPAURegisterOutputSurfaceNV #-}
-ptr_glVDPAURegisterOutputSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
-ptr_glVDPAURegisterOutputSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterOutputSurfaceNV"
-
--- glVDPAURegisterVideoSurfaceNV -----------------------------------------------
-
-glVDPAURegisterVideoSurfaceNV
-  :: MonadIO m
-  => Ptr a -- ^ @vdpSurface@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @numTextureNames@.
-  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
-  -> m GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
-glVDPAURegisterVideoSurfaceNV v1 v2 v3 v4 = liftIO $ dyn825 ptr_glVDPAURegisterVideoSurfaceNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVDPAURegisterVideoSurfaceNV #-}
-ptr_glVDPAURegisterVideoSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
-ptr_glVDPAURegisterVideoSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterVideoSurfaceNV"
-
--- glVDPAUSurfaceAccessNV ------------------------------------------------------
-
-glVDPAUSurfaceAccessNV
-  :: MonadIO m
-  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
-  -> GLenum -- ^ @access@.
-  -> m ()
-glVDPAUSurfaceAccessNV v1 v2 = liftIO $ dyn826 ptr_glVDPAUSurfaceAccessNV v1 v2
-
-{-# NOINLINE ptr_glVDPAUSurfaceAccessNV #-}
-ptr_glVDPAUSurfaceAccessNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
-ptr_glVDPAUSurfaceAccessNV = unsafePerformIO $ getCommand "glVDPAUSurfaceAccessNV"
-
--- glVDPAUUnmapSurfacesNV ------------------------------------------------------
-
-glVDPAUUnmapSurfacesNV
-  :: MonadIO m
-  => GLsizei -- ^ @numSurface@.
-  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurface@ elements of type @vdpauSurfaceNV@.
-  -> m ()
-glVDPAUUnmapSurfacesNV v1 v2 = liftIO $ dyn824 ptr_glVDPAUUnmapSurfacesNV v1 v2
-
-{-# NOINLINE ptr_glVDPAUUnmapSurfacesNV #-}
-ptr_glVDPAUUnmapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
-ptr_glVDPAUUnmapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUUnmapSurfacesNV"
-
--- glVDPAUUnregisterSurfaceNV --------------------------------------------------
-
-glVDPAUUnregisterSurfaceNV
-  :: MonadIO m
-  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
-  -> m ()
-glVDPAUUnregisterSurfaceNV v1 = liftIO $ dyn827 ptr_glVDPAUUnregisterSurfaceNV v1
-
-{-# NOINLINE ptr_glVDPAUUnregisterSurfaceNV #-}
-ptr_glVDPAUUnregisterSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO ())
-ptr_glVDPAUUnregisterSurfaceNV = unsafePerformIO $ getCommand "glVDPAUUnregisterSurfaceNV"
-
--- glValidateProgram -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glValidateProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glValidateProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glValidateProgram.xhtml OpenGL 4.x>.
-glValidateProgram
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> m ()
-glValidateProgram v1 = liftIO $ dyn2 ptr_glValidateProgram v1
-
-{-# NOINLINE ptr_glValidateProgram #-}
-ptr_glValidateProgram :: FunPtr (GLuint -> IO ())
-ptr_glValidateProgram = unsafePerformIO $ getCommand "glValidateProgram"
-
--- glValidateProgramARB --------------------------------------------------------
-
--- | This command is an alias for 'glValidateProgram'.
-glValidateProgramARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
-  -> m ()
-glValidateProgramARB v1 = liftIO $ dyn137 ptr_glValidateProgramARB v1
-
-{-# NOINLINE ptr_glValidateProgramARB #-}
-ptr_glValidateProgramARB :: FunPtr (GLhandleARB -> IO ())
-ptr_glValidateProgramARB = unsafePerformIO $ getCommand "glValidateProgramARB"
-
--- glValidateProgramPipeline ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glValidateProgramPipeline.xhtml OpenGL 4.x>.
-glValidateProgramPipeline
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m ()
-glValidateProgramPipeline v1 = liftIO $ dyn2 ptr_glValidateProgramPipeline v1
-
-{-# NOINLINE ptr_glValidateProgramPipeline #-}
-ptr_glValidateProgramPipeline :: FunPtr (GLuint -> IO ())
-ptr_glValidateProgramPipeline = unsafePerformIO $ getCommand "glValidateProgramPipeline"
-
--- glValidateProgramPipelineEXT ------------------------------------------------
-
-glValidateProgramPipelineEXT
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m ()
-glValidateProgramPipelineEXT v1 = liftIO $ dyn2 ptr_glValidateProgramPipelineEXT v1
-
-{-# NOINLINE ptr_glValidateProgramPipelineEXT #-}
-ptr_glValidateProgramPipelineEXT :: FunPtr (GLuint -> IO ())
-ptr_glValidateProgramPipelineEXT = unsafePerformIO $ getCommand "glValidateProgramPipelineEXT"
-
--- glVariantArrayObjectATI -----------------------------------------------------
-
-glVariantArrayObjectATI
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> GLsizei -- ^ @stride@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @offset@.
-  -> m ()
-glVariantArrayObjectATI v1 v2 v3 v4 v5 = liftIO $ dyn828 ptr_glVariantArrayObjectATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVariantArrayObjectATI #-}
-ptr_glVariantArrayObjectATI :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
-ptr_glVariantArrayObjectATI = unsafePerformIO $ getCommand "glVariantArrayObjectATI"
-
--- glVariantPointerEXT ---------------------------------------------------------
-
-glVariantPointerEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> GLuint -- ^ @stride@.
-  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type,stride)@ elements of type @a@.
-  -> m ()
-glVariantPointerEXT v1 v2 v3 v4 = liftIO $ dyn829 ptr_glVariantPointerEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVariantPointerEXT #-}
-ptr_glVariantPointerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
-ptr_glVariantPointerEXT = unsafePerformIO $ getCommand "glVariantPointerEXT"
-
--- glVariantbvEXT --------------------------------------------------------------
-
-glVariantbvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLbyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLbyte@.
-  -> m ()
-glVariantbvEXT v1 v2 = liftIO $ dyn830 ptr_glVariantbvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantbvEXT #-}
-ptr_glVariantbvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVariantbvEXT = unsafePerformIO $ getCommand "glVariantbvEXT"
-
--- glVariantdvEXT --------------------------------------------------------------
-
-glVariantdvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLdouble -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLdouble@.
-  -> m ()
-glVariantdvEXT v1 v2 = liftIO $ dyn831 ptr_glVariantdvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantdvEXT #-}
-ptr_glVariantdvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVariantdvEXT = unsafePerformIO $ getCommand "glVariantdvEXT"
-
--- glVariantfvEXT --------------------------------------------------------------
-
-glVariantfvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLfloat -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
-  -> m ()
-glVariantfvEXT v1 v2 = liftIO $ dyn379 ptr_glVariantfvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantfvEXT #-}
-ptr_glVariantfvEXT :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVariantfvEXT = unsafePerformIO $ getCommand "glVariantfvEXT"
-
--- glVariantivEXT --------------------------------------------------------------
-
-glVariantivEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
-  -> m ()
-glVariantivEXT v1 v2 = liftIO $ dyn704 ptr_glVariantivEXT v1 v2
-
-{-# NOINLINE ptr_glVariantivEXT #-}
-ptr_glVariantivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVariantivEXT = unsafePerformIO $ getCommand "glVariantivEXT"
-
--- glVariantsvEXT --------------------------------------------------------------
-
-glVariantsvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLshort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLshort@.
-  -> m ()
-glVariantsvEXT v1 v2 = liftIO $ dyn832 ptr_glVariantsvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantsvEXT #-}
-ptr_glVariantsvEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVariantsvEXT = unsafePerformIO $ getCommand "glVariantsvEXT"
-
--- glVariantubvEXT -------------------------------------------------------------
-
-glVariantubvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLubyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLubyte@.
-  -> m ()
-glVariantubvEXT v1 v2 = liftIO $ dyn378 ptr_glVariantubvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantubvEXT #-}
-ptr_glVariantubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVariantubvEXT = unsafePerformIO $ getCommand "glVariantubvEXT"
-
--- glVariantuivEXT -------------------------------------------------------------
-
-glVariantuivEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLuint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLuint@.
-  -> m ()
-glVariantuivEXT v1 v2 = liftIO $ dyn194 ptr_glVariantuivEXT v1 v2
-
-{-# NOINLINE ptr_glVariantuivEXT #-}
-ptr_glVariantuivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVariantuivEXT = unsafePerformIO $ getCommand "glVariantuivEXT"
-
--- glVariantusvEXT -------------------------------------------------------------
-
-glVariantusvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLushort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLushort@.
-  -> m ()
-glVariantusvEXT v1 v2 = liftIO $ dyn833 ptr_glVariantusvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantusvEXT #-}
-ptr_glVariantusvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVariantusvEXT = unsafePerformIO $ getCommand "glVariantusvEXT"
-
--- glVertex2bOES ---------------------------------------------------------------
-
-glVertex2bOES
-  :: MonadIO m
-  => GLbyte -- ^ @x@.
-  -> GLbyte -- ^ @y@.
-  -> m ()
-glVertex2bOES v1 v2 = liftIO $ dyn725 ptr_glVertex2bOES v1 v2
-
-{-# NOINLINE ptr_glVertex2bOES #-}
-ptr_glVertex2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
-ptr_glVertex2bOES = unsafePerformIO $ getCommand "glVertex2bOES"
-
--- glVertex2bvOES --------------------------------------------------------------
-
-glVertex2bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
-  -> m ()
-glVertex2bvOES v1 = liftIO $ dyn37 ptr_glVertex2bvOES v1
-
-{-# NOINLINE ptr_glVertex2bvOES #-}
-ptr_glVertex2bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glVertex2bvOES = unsafePerformIO $ getCommand "glVertex2bvOES"
-
--- glVertex2d ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2dv'.
-glVertex2d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> m ()
-glVertex2d v1 v2 = liftIO $ dyn217 ptr_glVertex2d v1 v2
-
-{-# NOINLINE ptr_glVertex2d #-}
-ptr_glVertex2d :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glVertex2d = unsafePerformIO $ getCommand "glVertex2d"
-
--- glVertex2dv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex2dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glVertex2dv v1 = liftIO $ dyn39 ptr_glVertex2dv v1
-
-{-# NOINLINE ptr_glVertex2dv #-}
-ptr_glVertex2dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glVertex2dv = unsafePerformIO $ getCommand "glVertex2dv"
-
--- glVertex2f ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2fv'.
-glVertex2f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> m ()
-glVertex2f v1 v2 = liftIO $ dyn222 ptr_glVertex2f v1 v2
-
-{-# NOINLINE ptr_glVertex2f #-}
-ptr_glVertex2f :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glVertex2f = unsafePerformIO $ getCommand "glVertex2f"
-
--- glVertex2fv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex2fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glVertex2fv v1 = liftIO $ dyn41 ptr_glVertex2fv v1
-
-{-# NOINLINE ptr_glVertex2fv #-}
-ptr_glVertex2fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glVertex2fv = unsafePerformIO $ getCommand "glVertex2fv"
-
--- glVertex2hNV ----------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertex2hvNV'.
-glVertex2hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> m ()
-glVertex2hNV v1 v2 = liftIO $ dyn730 ptr_glVertex2hNV v1 v2
-
-{-# NOINLINE ptr_glVertex2hNV #-}
-ptr_glVertex2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertex2hNV = unsafePerformIO $ getCommand "glVertex2hNV"
-
--- glVertex2hvNV ---------------------------------------------------------------
-
-glVertex2hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
-  -> m ()
-glVertex2hvNV v1 = liftIO $ dyn99 ptr_glVertex2hvNV v1
-
-{-# NOINLINE ptr_glVertex2hvNV #-}
-ptr_glVertex2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glVertex2hvNV = unsafePerformIO $ getCommand "glVertex2hvNV"
-
--- glVertex2i ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2iv'.
-glVertex2i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glVertex2i v1 v2 = liftIO $ dyn266 ptr_glVertex2i v1 v2
-
-{-# NOINLINE ptr_glVertex2i #-}
-ptr_glVertex2i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glVertex2i = unsafePerformIO $ getCommand "glVertex2i"
-
--- glVertex2iv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex2iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glVertex2iv v1 = liftIO $ dyn43 ptr_glVertex2iv v1
-
-{-# NOINLINE ptr_glVertex2iv #-}
-ptr_glVertex2iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glVertex2iv = unsafePerformIO $ getCommand "glVertex2iv"
-
--- glVertex2s ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2sv'.
-glVertex2s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glVertex2s v1 v2 = liftIO $ dyn672 ptr_glVertex2s v1 v2
-
-{-# NOINLINE ptr_glVertex2s #-}
-ptr_glVertex2s :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glVertex2s = unsafePerformIO $ getCommand "glVertex2s"
-
--- glVertex2sv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex2sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glVertex2sv v1 = liftIO $ dyn45 ptr_glVertex2sv v1
-
-{-# NOINLINE ptr_glVertex2sv #-}
-ptr_glVertex2sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glVertex2sv = unsafePerformIO $ getCommand "glVertex2sv"
-
--- glVertex2xOES ---------------------------------------------------------------
-
-glVertex2xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> m ()
-glVertex2xOES v1 = liftIO $ dyn81 ptr_glVertex2xOES v1
-
-{-# NOINLINE ptr_glVertex2xOES #-}
-ptr_glVertex2xOES :: FunPtr (GLfixed -> IO ())
-ptr_glVertex2xOES = unsafePerformIO $ getCommand "glVertex2xOES"
-
--- glVertex2xvOES --------------------------------------------------------------
-
-glVertex2xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glVertex2xvOES v1 = liftIO $ dyn107 ptr_glVertex2xvOES v1
-
-{-# NOINLINE ptr_glVertex2xvOES #-}
-ptr_glVertex2xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glVertex2xvOES = unsafePerformIO $ getCommand "glVertex2xvOES"
-
--- glVertex3bOES ---------------------------------------------------------------
-
-glVertex3bOES
-  :: MonadIO m
-  => GLbyte -- ^ @x@.
-  -> GLbyte -- ^ @y@.
-  -> GLbyte -- ^ @z@.
-  -> m ()
-glVertex3bOES v1 v2 v3 = liftIO $ dyn36 ptr_glVertex3bOES v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3bOES #-}
-ptr_glVertex3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glVertex3bOES = unsafePerformIO $ getCommand "glVertex3bOES"
-
--- glVertex3bvOES --------------------------------------------------------------
-
-glVertex3bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
-  -> m ()
-glVertex3bvOES v1 = liftIO $ dyn37 ptr_glVertex3bvOES v1
-
-{-# NOINLINE ptr_glVertex3bvOES #-}
-ptr_glVertex3bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glVertex3bvOES = unsafePerformIO $ getCommand "glVertex3bvOES"
-
--- glVertex3d ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3dv'.
-glVertex3d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> m ()
-glVertex3d v1 v2 v3 = liftIO $ dyn38 ptr_glVertex3d v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3d #-}
-ptr_glVertex3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertex3d = unsafePerformIO $ getCommand "glVertex3d"
-
--- glVertex3dv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glVertex3dv v1 = liftIO $ dyn39 ptr_glVertex3dv v1
-
-{-# NOINLINE ptr_glVertex3dv #-}
-ptr_glVertex3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glVertex3dv = unsafePerformIO $ getCommand "glVertex3dv"
-
--- glVertex3f ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3fv'.
-glVertex3f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> m ()
-glVertex3f v1 v2 v3 = liftIO $ dyn40 ptr_glVertex3f v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3f #-}
-ptr_glVertex3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertex3f = unsafePerformIO $ getCommand "glVertex3f"
-
--- glVertex3fv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glVertex3fv v1 = liftIO $ dyn41 ptr_glVertex3fv v1
-
-{-# NOINLINE ptr_glVertex3fv #-}
-ptr_glVertex3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glVertex3fv = unsafePerformIO $ getCommand "glVertex3fv"
-
--- glVertex3hNV ----------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertex3hvNV'.
-glVertex3hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
-  -> m ()
-glVertex3hNV v1 v2 v3 = liftIO $ dyn98 ptr_glVertex3hNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3hNV #-}
-ptr_glVertex3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertex3hNV = unsafePerformIO $ getCommand "glVertex3hNV"
-
--- glVertex3hvNV ---------------------------------------------------------------
-
-glVertex3hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glVertex3hvNV v1 = liftIO $ dyn99 ptr_glVertex3hvNV v1
-
-{-# NOINLINE ptr_glVertex3hvNV #-}
-ptr_glVertex3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glVertex3hvNV = unsafePerformIO $ getCommand "glVertex3hvNV"
-
--- glVertex3i ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3iv'.
-glVertex3i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> m ()
-glVertex3i v1 v2 v3 = liftIO $ dyn42 ptr_glVertex3i v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3i #-}
-ptr_glVertex3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glVertex3i = unsafePerformIO $ getCommand "glVertex3i"
-
--- glVertex3iv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glVertex3iv v1 = liftIO $ dyn43 ptr_glVertex3iv v1
-
-{-# NOINLINE ptr_glVertex3iv #-}
-ptr_glVertex3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glVertex3iv = unsafePerformIO $ getCommand "glVertex3iv"
-
--- glVertex3s ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3sv'.
-glVertex3s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glVertex3s v1 v2 v3 = liftIO $ dyn44 ptr_glVertex3s v1 v2 v3
-
-{-# NOINLINE ptr_glVertex3s #-}
-ptr_glVertex3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertex3s = unsafePerformIO $ getCommand "glVertex3s"
-
--- glVertex3sv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glVertex3sv v1 = liftIO $ dyn45 ptr_glVertex3sv v1
-
-{-# NOINLINE ptr_glVertex3sv #-}
-ptr_glVertex3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glVertex3sv = unsafePerformIO $ getCommand "glVertex3sv"
-
--- glVertex3xOES ---------------------------------------------------------------
-
-glVertex3xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> m ()
-glVertex3xOES v1 v2 = liftIO $ dyn224 ptr_glVertex3xOES v1 v2
-
-{-# NOINLINE ptr_glVertex3xOES #-}
-ptr_glVertex3xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glVertex3xOES = unsafePerformIO $ getCommand "glVertex3xOES"
-
--- glVertex3xvOES --------------------------------------------------------------
-
-glVertex3xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
-  -> m ()
-glVertex3xvOES v1 = liftIO $ dyn107 ptr_glVertex3xvOES v1
-
-{-# NOINLINE ptr_glVertex3xvOES #-}
-ptr_glVertex3xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glVertex3xvOES = unsafePerformIO $ getCommand "glVertex3xvOES"
-
--- glVertex4bOES ---------------------------------------------------------------
-
-glVertex4bOES
-  :: MonadIO m
-  => GLbyte -- ^ @x@.
-  -> GLbyte -- ^ @y@.
-  -> GLbyte -- ^ @z@.
-  -> GLbyte -- ^ @w@.
-  -> m ()
-glVertex4bOES v1 v2 v3 v4 = liftIO $ dyn108 ptr_glVertex4bOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4bOES #-}
-ptr_glVertex4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
-ptr_glVertex4bOES = unsafePerformIO $ getCommand "glVertex4bOES"
-
--- glVertex4bvOES --------------------------------------------------------------
-
-glVertex4bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertex4bvOES v1 = liftIO $ dyn37 ptr_glVertex4bvOES v1
-
-{-# NOINLINE ptr_glVertex4bvOES #-}
-ptr_glVertex4bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glVertex4bvOES = unsafePerformIO $ getCommand "glVertex4bvOES"
-
--- glVertex4d ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4dv'.
-glVertex4d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> GLdouble -- ^ @w@ of type @CoordD@.
-  -> m ()
-glVertex4d v1 v2 v3 v4 = liftIO $ dyn109 ptr_glVertex4d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4d #-}
-ptr_glVertex4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertex4d = unsafePerformIO $ getCommand "glVertex4d"
-
--- glVertex4dv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex4dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glVertex4dv v1 = liftIO $ dyn39 ptr_glVertex4dv v1
-
-{-# NOINLINE ptr_glVertex4dv #-}
-ptr_glVertex4dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glVertex4dv = unsafePerformIO $ getCommand "glVertex4dv"
-
--- glVertex4f ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4fv'.
-glVertex4f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> GLfloat -- ^ @w@ of type @CoordF@.
-  -> m ()
-glVertex4f v1 v2 v3 v4 = liftIO $ dyn49 ptr_glVertex4f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4f #-}
-ptr_glVertex4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertex4f = unsafePerformIO $ getCommand "glVertex4f"
-
--- glVertex4fv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex4fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glVertex4fv v1 = liftIO $ dyn41 ptr_glVertex4fv v1
-
-{-# NOINLINE ptr_glVertex4fv #-}
-ptr_glVertex4fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glVertex4fv = unsafePerformIO $ getCommand "glVertex4fv"
-
--- glVertex4hNV ----------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertex4hvNV'.
-glVertex4hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
-  -> m ()
-glVertex4hNV v1 v2 v3 v4 = liftIO $ dyn112 ptr_glVertex4hNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4hNV #-}
-ptr_glVertex4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertex4hNV = unsafePerformIO $ getCommand "glVertex4hNV"
-
--- glVertex4hvNV ---------------------------------------------------------------
-
-glVertex4hvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
-  -> m ()
-glVertex4hvNV v1 = liftIO $ dyn99 ptr_glVertex4hvNV v1
-
-{-# NOINLINE ptr_glVertex4hvNV #-}
-ptr_glVertex4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glVertex4hvNV = unsafePerformIO $ getCommand "glVertex4hvNV"
-
--- glVertex4i ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4iv'.
-glVertex4i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> GLint -- ^ @w@ of type @CoordI@.
-  -> m ()
-glVertex4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glVertex4i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4i #-}
-ptr_glVertex4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertex4i = unsafePerformIO $ getCommand "glVertex4i"
-
--- glVertex4iv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex4iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glVertex4iv v1 = liftIO $ dyn43 ptr_glVertex4iv v1
-
-{-# NOINLINE ptr_glVertex4iv #-}
-ptr_glVertex4iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glVertex4iv = unsafePerformIO $ getCommand "glVertex4iv"
-
--- glVertex4s ------------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4sv'.
-glVertex4s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> GLshort -- ^ @w@ of type @CoordS@.
-  -> m ()
-glVertex4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glVertex4s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertex4s #-}
-ptr_glVertex4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertex4s = unsafePerformIO $ getCommand "glVertex4s"
-
--- glVertex4sv -----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
-glVertex4sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glVertex4sv v1 = liftIO $ dyn45 ptr_glVertex4sv v1
-
-{-# NOINLINE ptr_glVertex4sv #-}
-ptr_glVertex4sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glVertex4sv = unsafePerformIO $ getCommand "glVertex4sv"
-
--- glVertex4xOES ---------------------------------------------------------------
-
-glVertex4xOES
-  :: MonadIO m
-  => GLfixed -- ^ @x@.
-  -> GLfixed -- ^ @y@.
-  -> GLfixed -- ^ @z@.
-  -> m ()
-glVertex4xOES v1 v2 v3 = liftIO $ dyn106 ptr_glVertex4xOES v1 v2 v3
-
-{-# NOINLINE ptr_glVertex4xOES #-}
-ptr_glVertex4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glVertex4xOES = unsafePerformIO $ getCommand "glVertex4xOES"
-
--- glVertex4xvOES --------------------------------------------------------------
-
-glVertex4xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
-  -> m ()
-glVertex4xvOES v1 = liftIO $ dyn107 ptr_glVertex4xvOES v1
-
-{-# NOINLINE ptr_glVertex4xvOES #-}
-ptr_glVertex4xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glVertex4xvOES = unsafePerformIO $ getCommand "glVertex4xvOES"
-
--- glVertexArrayAttribBinding --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>.
-glVertexArrayAttribBinding
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLuint -- ^ @bindingindex@.
-  -> m ()
-glVertexArrayAttribBinding v1 v2 v3 = liftIO $ dyn102 ptr_glVertexArrayAttribBinding v1 v2 v3
-
-{-# NOINLINE ptr_glVertexArrayAttribBinding #-}
-ptr_glVertexArrayAttribBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexArrayAttribBinding = unsafePerformIO $ getCommand "glVertexArrayAttribBinding"
-
--- glVertexArrayAttribFormat ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexArrayAttribFormat
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayAttribFormat v1 v2 v3 v4 v5 v6 = liftIO $ dyn834 ptr_glVertexArrayAttribFormat v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayAttribFormat #-}
-ptr_glVertexArrayAttribFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexArrayAttribFormat = unsafePerformIO $ getCommand "glVertexArrayAttribFormat"
-
--- glVertexArrayAttribIFormat --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexArrayAttribIFormat
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayAttribIFormat v1 v2 v3 v4 v5 = liftIO $ dyn835 ptr_glVertexArrayAttribIFormat v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayAttribIFormat #-}
-ptr_glVertexArrayAttribIFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexArrayAttribIFormat = unsafePerformIO $ getCommand "glVertexArrayAttribIFormat"
-
--- glVertexArrayAttribLFormat --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexArrayAttribLFormat
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayAttribLFormat v1 v2 v3 v4 v5 = liftIO $ dyn835 ptr_glVertexArrayAttribLFormat v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayAttribLFormat #-}
-ptr_glVertexArrayAttribLFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexArrayAttribLFormat = unsafePerformIO $ getCommand "glVertexArrayAttribLFormat"
-
--- glVertexArrayBindVertexBufferEXT --------------------------------------------
-
-glVertexArrayBindVertexBufferEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @bindingindex@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexArrayBindVertexBufferEXT v1 v2 v3 v4 v5 = liftIO $ dyn836 ptr_glVertexArrayBindVertexBufferEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayBindVertexBufferEXT #-}
-ptr_glVertexArrayBindVertexBufferEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
-ptr_glVertexArrayBindVertexBufferEXT = unsafePerformIO $ getCommand "glVertexArrayBindVertexBufferEXT"
-
--- glVertexArrayBindingDivisor -------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>.
-glVertexArrayBindingDivisor
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @bindingindex@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexArrayBindingDivisor v1 v2 v3 = liftIO $ dyn102 ptr_glVertexArrayBindingDivisor v1 v2 v3
-
-{-# NOINLINE ptr_glVertexArrayBindingDivisor #-}
-ptr_glVertexArrayBindingDivisor :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexArrayBindingDivisor = unsafePerformIO $ getCommand "glVertexArrayBindingDivisor"
-
--- glVertexArrayColorOffsetEXT -------------------------------------------------
-
-glVertexArrayColorOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayColorOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn837 ptr_glVertexArrayColorOffsetEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayColorOffsetEXT #-}
-ptr_glVertexArrayColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayColorOffsetEXT"
-
--- glVertexArrayEdgeFlagOffsetEXT ----------------------------------------------
-
-glVertexArrayEdgeFlagOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayEdgeFlagOffsetEXT v1 v2 v3 v4 = liftIO $ dyn838 ptr_glVertexArrayEdgeFlagOffsetEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexArrayEdgeFlagOffsetEXT #-}
-ptr_glVertexArrayEdgeFlagOffsetEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayEdgeFlagOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayEdgeFlagOffsetEXT"
-
--- glVertexArrayElementBuffer --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexArrayElementBuffer.xhtml OpenGL 4.x>.
-glVertexArrayElementBuffer
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> m ()
-glVertexArrayElementBuffer v1 v2 = liftIO $ dyn3 ptr_glVertexArrayElementBuffer v1 v2
-
-{-# NOINLINE ptr_glVertexArrayElementBuffer #-}
-ptr_glVertexArrayElementBuffer :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexArrayElementBuffer = unsafePerformIO $ getCommand "glVertexArrayElementBuffer"
-
--- glVertexArrayFogCoordOffsetEXT ----------------------------------------------
-
-glVertexArrayFogCoordOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @type@ of type [FogCoordinatePointerType](Graphics-GL-Groups.html#FogCoordinatePointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayFogCoordOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn839 ptr_glVertexArrayFogCoordOffsetEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayFogCoordOffsetEXT #-}
-ptr_glVertexArrayFogCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayFogCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayFogCoordOffsetEXT"
-
--- glVertexArrayIndexOffsetEXT -------------------------------------------------
-
-glVertexArrayIndexOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @type@ of type [IndexPointerType](Graphics-GL-Groups.html#IndexPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayIndexOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn839 ptr_glVertexArrayIndexOffsetEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayIndexOffsetEXT #-}
-ptr_glVertexArrayIndexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayIndexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayIndexOffsetEXT"
-
--- glVertexArrayMultiTexCoordOffsetEXT -----------------------------------------
-
-glVertexArrayMultiTexCoordOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @texunit@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayMultiTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn840 ptr_glVertexArrayMultiTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glVertexArrayMultiTexCoordOffsetEXT #-}
-ptr_glVertexArrayMultiTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayMultiTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayMultiTexCoordOffsetEXT"
-
--- glVertexArrayNormalOffsetEXT ------------------------------------------------
-
-glVertexArrayNormalOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayNormalOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn839 ptr_glVertexArrayNormalOffsetEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayNormalOffsetEXT #-}
-ptr_glVertexArrayNormalOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayNormalOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayNormalOffsetEXT"
-
--- glVertexArrayParameteriAPPLE ------------------------------------------------
-
-glVertexArrayParameteriAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @VertexArrayPNameAPPLE@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glVertexArrayParameteriAPPLE v1 v2 = liftIO $ dyn55 ptr_glVertexArrayParameteriAPPLE v1 v2
-
-{-# NOINLINE ptr_glVertexArrayParameteriAPPLE #-}
-ptr_glVertexArrayParameteriAPPLE :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glVertexArrayParameteriAPPLE = unsafePerformIO $ getCommand "glVertexArrayParameteriAPPLE"
-
--- glVertexArrayRangeAPPLE -----------------------------------------------------
-
-glVertexArrayRangeAPPLE
-  :: MonadIO m
-  => GLsizei -- ^ @length@.
-  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
-  -> m ()
-glVertexArrayRangeAPPLE v1 v2 = liftIO $ dyn260 ptr_glVertexArrayRangeAPPLE v1 v2
-
-{-# NOINLINE ptr_glVertexArrayRangeAPPLE #-}
-ptr_glVertexArrayRangeAPPLE :: FunPtr (GLsizei -> Ptr a -> IO ())
-ptr_glVertexArrayRangeAPPLE = unsafePerformIO $ getCommand "glVertexArrayRangeAPPLE"
-
--- glVertexArrayRangeNV --------------------------------------------------------
-
-glVertexArrayRangeNV
-  :: MonadIO m
-  => GLsizei -- ^ @length@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(length)@ elements of type @a@.
-  -> m ()
-glVertexArrayRangeNV v1 v2 = liftIO $ dyn260 ptr_glVertexArrayRangeNV v1 v2
-
-{-# NOINLINE ptr_glVertexArrayRangeNV #-}
-ptr_glVertexArrayRangeNV :: FunPtr (GLsizei -> Ptr a -> IO ())
-ptr_glVertexArrayRangeNV = unsafePerformIO $ getCommand "glVertexArrayRangeNV"
-
--- glVertexArraySecondaryColorOffsetEXT ----------------------------------------
-
-glVertexArraySecondaryColorOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArraySecondaryColorOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn837 ptr_glVertexArraySecondaryColorOffsetEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArraySecondaryColorOffsetEXT #-}
-ptr_glVertexArraySecondaryColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArraySecondaryColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArraySecondaryColorOffsetEXT"
-
--- glVertexArrayTexCoordOffsetEXT ----------------------------------------------
-
-glVertexArrayTexCoordOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn837 ptr_glVertexArrayTexCoordOffsetEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayTexCoordOffsetEXT #-}
-ptr_glVertexArrayTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayTexCoordOffsetEXT"
-
--- glVertexArrayVertexAttribBindingEXT -----------------------------------------
-
-glVertexArrayVertexAttribBindingEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLuint -- ^ @bindingindex@.
-  -> m ()
-glVertexArrayVertexAttribBindingEXT v1 v2 v3 = liftIO $ dyn102 ptr_glVertexArrayVertexAttribBindingEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribBindingEXT #-}
-ptr_glVertexArrayVertexAttribBindingEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexArrayVertexAttribBindingEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribBindingEXT"
-
--- glVertexArrayVertexAttribDivisorEXT -----------------------------------------
-
-glVertexArrayVertexAttribDivisorEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexArrayVertexAttribDivisorEXT v1 v2 v3 = liftIO $ dyn102 ptr_glVertexArrayVertexAttribDivisorEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribDivisorEXT #-}
-ptr_glVertexArrayVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexArrayVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribDivisorEXT"
-
--- glVertexArrayVertexAttribFormatEXT ------------------------------------------
-
-glVertexArrayVertexAttribFormatEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayVertexAttribFormatEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn834 ptr_glVertexArrayVertexAttribFormatEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribFormatEXT #-}
-ptr_glVertexArrayVertexAttribFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexArrayVertexAttribFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribFormatEXT"
-
--- glVertexArrayVertexAttribIFormatEXT -----------------------------------------
-
-glVertexArrayVertexAttribIFormatEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayVertexAttribIFormatEXT v1 v2 v3 v4 v5 = liftIO $ dyn835 ptr_glVertexArrayVertexAttribIFormatEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribIFormatEXT #-}
-ptr_glVertexArrayVertexAttribIFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexArrayVertexAttribIFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIFormatEXT"
-
--- glVertexArrayVertexAttribIOffsetEXT -----------------------------------------
-
-glVertexArrayVertexAttribIOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayVertexAttribIOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn841 ptr_glVertexArrayVertexAttribIOffsetEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribIOffsetEXT #-}
-ptr_glVertexArrayVertexAttribIOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayVertexAttribIOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIOffsetEXT"
-
--- glVertexArrayVertexAttribLFormatEXT -----------------------------------------
-
-glVertexArrayVertexAttribLFormatEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexArrayVertexAttribLFormatEXT v1 v2 v3 v4 v5 = liftIO $ dyn835 ptr_glVertexArrayVertexAttribLFormatEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribLFormatEXT #-}
-ptr_glVertexArrayVertexAttribLFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexArrayVertexAttribLFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLFormatEXT"
-
--- glVertexArrayVertexAttribLOffsetEXT -----------------------------------------
-
-glVertexArrayVertexAttribLOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
-  -> m ()
-glVertexArrayVertexAttribLOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn841 ptr_glVertexArrayVertexAttribLOffsetEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribLOffsetEXT #-}
-ptr_glVertexArrayVertexAttribLOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayVertexAttribLOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLOffsetEXT"
-
--- glVertexArrayVertexAttribOffsetEXT ------------------------------------------
-
-glVertexArrayVertexAttribOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
-  -> GLboolean -- ^ @normalized@.
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayVertexAttribOffsetEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn842 ptr_glVertexArrayVertexAttribOffsetEXT v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glVertexArrayVertexAttribOffsetEXT #-}
-ptr_glVertexArrayVertexAttribOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayVertexAttribOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribOffsetEXT"
-
--- glVertexArrayVertexBindingDivisorEXT ----------------------------------------
-
-glVertexArrayVertexBindingDivisorEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @bindingindex@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexArrayVertexBindingDivisorEXT v1 v2 v3 = liftIO $ dyn102 ptr_glVertexArrayVertexBindingDivisorEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexArrayVertexBindingDivisorEXT #-}
-ptr_glVertexArrayVertexBindingDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexArrayVertexBindingDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexBindingDivisorEXT"
-
--- glVertexArrayVertexBuffer ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffer.xhtml OpenGL 4.x>.
-glVertexArrayVertexBuffer
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @bindingindex@.
-  -> GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexArrayVertexBuffer v1 v2 v3 v4 v5 = liftIO $ dyn836 ptr_glVertexArrayVertexBuffer v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexArrayVertexBuffer #-}
-ptr_glVertexArrayVertexBuffer :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
-ptr_glVertexArrayVertexBuffer = unsafePerformIO $ getCommand "glVertexArrayVertexBuffer"
-
--- glVertexArrayVertexBuffers --------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffers.xhtml OpenGL 4.x>.
-glVertexArrayVertexBuffers
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @buffers@.
-  -> Ptr GLintptr -- ^ @offsets@.
-  -> Ptr GLsizei -- ^ @strides@.
-  -> m ()
-glVertexArrayVertexBuffers v1 v2 v3 v4 v5 v6 = liftIO $ dyn843 ptr_glVertexArrayVertexBuffers v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayVertexBuffers #-}
-ptr_glVertexArrayVertexBuffers :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
-ptr_glVertexArrayVertexBuffers = unsafePerformIO $ getCommand "glVertexArrayVertexBuffers"
-
--- glVertexArrayVertexOffsetEXT ------------------------------------------------
-
-glVertexArrayVertexOffsetEXT
-  :: MonadIO m
-  => GLuint -- ^ @vaobj@.
-  -> GLuint -- ^ @buffer@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLintptr -- ^ @offset@.
-  -> m ()
-glVertexArrayVertexOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn837 ptr_glVertexArrayVertexOffsetEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexArrayVertexOffsetEXT #-}
-ptr_glVertexArrayVertexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
-ptr_glVertexArrayVertexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexOffsetEXT"
-
--- glVertexAttrib1d ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1dv'.
-glVertexAttrib1d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexAttrib1d v1 v2 = liftIO $ dyn844 ptr_glVertexAttrib1d v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1d #-}
-ptr_glVertexAttrib1d :: FunPtr (GLuint -> GLdouble -> IO ())
-ptr_glVertexAttrib1d = unsafePerformIO $ getCommand "glVertexAttrib1d"
-
--- glVertexAttrib1dARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1dvARB'. This command is an alias for 'glVertexAttrib1d'.
-glVertexAttrib1dARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexAttrib1dARB v1 v2 = liftIO $ dyn844 ptr_glVertexAttrib1dARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1dARB #-}
-ptr_glVertexAttrib1dARB :: FunPtr (GLuint -> GLdouble -> IO ())
-ptr_glVertexAttrib1dARB = unsafePerformIO $ getCommand "glVertexAttrib1dARB"
+  glUniform4ivARB,
+  glUniform4ui,
+  glUniform4ui64ARB,
+  glUniform4ui64NV,
+  glUniform4ui64vARB,
+  glUniform4ui64vNV,
+  glUniform4uiEXT,
+  glUniform4uiv,
+  glUniform4uivEXT,
+  glUniformBlockBinding,
+  glUniformBufferEXT,
+  glUniformHandleui64ARB,
+  glUniformHandleui64IMG,
+  glUniformHandleui64NV,
+  glUniformHandleui64vARB,
+  glUniformHandleui64vIMG,
+  glUniformHandleui64vNV,
+  glUniformMatrix2dv,
+  glUniformMatrix2fv,
+  glUniformMatrix2fvARB,
+  glUniformMatrix2x3dv,
+  glUniformMatrix2x3fv,
+  glUniformMatrix2x3fvNV,
+  glUniformMatrix2x4dv,
+  glUniformMatrix2x4fv,
+  glUniformMatrix2x4fvNV,
+  glUniformMatrix3dv,
+  glUniformMatrix3fv,
+  glUniformMatrix3fvARB,
+  glUniformMatrix3x2dv,
+  glUniformMatrix3x2fv,
+  glUniformMatrix3x2fvNV,
+  glUniformMatrix3x4dv,
+  glUniformMatrix3x4fv,
+  glUniformMatrix3x4fvNV,
+  glUniformMatrix4dv,
+  glUniformMatrix4fv,
+  glUniformMatrix4fvARB,
+  glUniformMatrix4x2dv,
+  glUniformMatrix4x2fv,
+  glUniformMatrix4x2fvNV,
+  glUniformMatrix4x3dv,
+  glUniformMatrix4x3fv,
+  glUniformMatrix4x3fvNV,
+  glUniformSubroutinesuiv,
+  glUniformui64NV,
+  glUniformui64vNV,
+  glUnlockArraysEXT,
+  glUnmapBuffer,
+  glUnmapBufferARB,
+  glUnmapBufferOES,
+  glUnmapNamedBuffer,
+  glUnmapNamedBufferEXT,
+  glUnmapObjectBufferATI,
+  glUnmapTexture2DINTEL,
+  glUpdateObjectBufferATI,
+  glUseProgram,
+  glUseProgramObjectARB,
+  glUseProgramStages,
+  glUseProgramStagesEXT,
+  glUseShaderProgramEXT,
+  glVDPAUFiniNV,
+  glVDPAUGetSurfaceivNV,
+  glVDPAUInitNV,
+  glVDPAUIsSurfaceNV,
+  glVDPAUMapSurfacesNV,
+  glVDPAURegisterOutputSurfaceNV,
+  glVDPAURegisterVideoSurfaceNV,
+  glVDPAUSurfaceAccessNV,
+  glVDPAUUnmapSurfacesNV,
+  glVDPAUUnregisterSurfaceNV,
+  glValidateProgram,
+  glValidateProgramARB,
+  glValidateProgramPipeline,
+  glValidateProgramPipelineEXT,
+  glVariantArrayObjectATI,
+  glVariantPointerEXT,
+  glVariantbvEXT,
+  glVariantdvEXT,
+  glVariantfvEXT,
+  glVariantivEXT,
+  glVariantsvEXT,
+  glVariantubvEXT,
+  glVariantuivEXT,
+  glVariantusvEXT,
+  glVertex2bOES,
+  glVertex2bvOES,
+  glVertex2d,
+  glVertex2dv,
+  glVertex2f,
+  glVertex2fv,
+  glVertex2hNV,
+  glVertex2hvNV,
+  glVertex2i,
+  glVertex2iv,
+  glVertex2s,
+  glVertex2sv,
+  glVertex2xOES,
+  glVertex2xvOES,
+  glVertex3bOES
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glUniform4ivARB -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4iv'.
+glUniform4ivARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
+  -> m ()
+glUniform4ivARB v1 v2 v3 = liftIO $ dyn824 ptr_glUniform4ivARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4ivARB #-}
+ptr_glUniform4ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glUniform4ivARB = unsafePerformIO $ getCommand "glUniform4ivARB"
+
+-- glUniform4ui ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4ui
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> GLuint -- ^ @v3@.
+  -> m ()
+glUniform4ui v1 v2 v3 v4 v5 = liftIO $ dyn847 ptr_glUniform4ui v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4ui #-}
+ptr_glUniform4ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glUniform4ui = unsafePerformIO $ getCommand "glUniform4ui"
+
+-- glUniform4ui64ARB -----------------------------------------------------------
+
+glUniform4ui64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @x@.
+  -> GLuint64 -- ^ @y@.
+  -> GLuint64 -- ^ @z@.
+  -> GLuint64 -- ^ @w@.
+  -> m ()
+glUniform4ui64ARB v1 v2 v3 v4 v5 = liftIO $ dyn848 ptr_glUniform4ui64ARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4ui64ARB #-}
+ptr_glUniform4ui64ARB :: FunPtr (GLint -> GLuint64 -> GLuint64 -> GLuint64 -> GLuint64 -> IO ())
+ptr_glUniform4ui64ARB = unsafePerformIO $ getCommand "glUniform4ui64ARB"
+
+-- glUniform4ui64NV ------------------------------------------------------------
+
+glUniform4ui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> GLuint64EXT -- ^ @w@.
+  -> m ()
+glUniform4ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn849 ptr_glUniform4ui64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4ui64NV #-}
+ptr_glUniform4ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glUniform4ui64NV = unsafePerformIO $ getCommand "glUniform4ui64NV"
+
+-- glUniform4ui64vARB ----------------------------------------------------------
+
+glUniform4ui64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count*4@ elements of type @GLuint64@.
+  -> m ()
+glUniform4ui64vARB v1 v2 v3 = liftIO $ dyn828 ptr_glUniform4ui64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4ui64vARB #-}
+ptr_glUniform4ui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniform4ui64vARB = unsafePerformIO $ getCommand "glUniform4ui64vARB"
+
+-- glUniform4ui64vNV -----------------------------------------------------------
+
+glUniform4ui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
+  -> m ()
+glUniform4ui64vNV v1 v2 v3 = liftIO $ dyn829 ptr_glUniform4ui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4ui64vNV #-}
+ptr_glUniform4ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glUniform4ui64vNV = unsafePerformIO $ getCommand "glUniform4ui64vNV"
+
+-- glUniform4uiEXT -------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4ui'.
+glUniform4uiEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> GLuint -- ^ @v3@.
+  -> m ()
+glUniform4uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn847 ptr_glUniform4uiEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUniform4uiEXT #-}
+ptr_glUniform4uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glUniform4uiEXT = unsafePerformIO $ getCommand "glUniform4uiEXT"
+
+-- glUniform4uiv ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform4uiv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glUniform4uiv v1 v2 v3 = liftIO $ dyn830 ptr_glUniform4uiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4uiv #-}
+ptr_glUniform4uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform4uiv = unsafePerformIO $ getCommand "glUniform4uiv"
+
+-- glUniform4uivEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform4uiv'.
+glUniform4uivEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
+  -> m ()
+glUniform4uivEXT v1 v2 v3 = liftIO $ dyn830 ptr_glUniform4uivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform4uivEXT #-}
+ptr_glUniform4uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform4uivEXT = unsafePerformIO $ getCommand "glUniform4uivEXT"
+
+-- glUniformBlockBinding -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniformBlockBinding.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniformBlockBinding.xhtml OpenGL 4.x>.
+glUniformBlockBinding
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLuint -- ^ @uniformBlockIndex@.
+  -> GLuint -- ^ @uniformBlockBinding@.
+  -> m ()
+glUniformBlockBinding v1 v2 v3 = liftIO $ dyn105 ptr_glUniformBlockBinding v1 v2 v3
+
+{-# NOINLINE ptr_glUniformBlockBinding #-}
+ptr_glUniformBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glUniformBlockBinding = unsafePerformIO $ getCommand "glUniformBlockBinding"
+
+-- glUniformBufferEXT ----------------------------------------------------------
+
+glUniformBufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glUniformBufferEXT v1 v2 v3 = liftIO $ dyn662 ptr_glUniformBufferEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniformBufferEXT #-}
+ptr_glUniformBufferEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
+ptr_glUniformBufferEXT = unsafePerformIO $ getCommand "glUniformBufferEXT"
+
+-- glUniformHandleui64ARB ------------------------------------------------------
+
+glUniformHandleui64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glUniformHandleui64ARB v1 v2 = liftIO $ dyn826 ptr_glUniformHandleui64ARB v1 v2
+
+{-# NOINLINE ptr_glUniformHandleui64ARB #-}
+ptr_glUniformHandleui64ARB :: FunPtr (GLint -> GLuint64 -> IO ())
+ptr_glUniformHandleui64ARB = unsafePerformIO $ getCommand "glUniformHandleui64ARB"
+
+-- glUniformHandleui64IMG ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformHandleui64ARB'.
+glUniformHandleui64IMG
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glUniformHandleui64IMG v1 v2 = liftIO $ dyn826 ptr_glUniformHandleui64IMG v1 v2
+
+{-# NOINLINE ptr_glUniformHandleui64IMG #-}
+ptr_glUniformHandleui64IMG :: FunPtr (GLint -> GLuint64 -> IO ())
+ptr_glUniformHandleui64IMG = unsafePerformIO $ getCommand "glUniformHandleui64IMG"
+
+-- glUniformHandleui64NV -------------------------------------------------------
+
+glUniformHandleui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64 -- ^ @value@.
+  -> m ()
+glUniformHandleui64NV v1 v2 = liftIO $ dyn826 ptr_glUniformHandleui64NV v1 v2
+
+{-# NOINLINE ptr_glUniformHandleui64NV #-}
+ptr_glUniformHandleui64NV :: FunPtr (GLint -> GLuint64 -> IO ())
+ptr_glUniformHandleui64NV = unsafePerformIO $ getCommand "glUniformHandleui64NV"
+
+-- glUniformHandleui64vARB -----------------------------------------------------
+
+glUniformHandleui64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glUniformHandleui64vARB v1 v2 v3 = liftIO $ dyn828 ptr_glUniformHandleui64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniformHandleui64vARB #-}
+ptr_glUniformHandleui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniformHandleui64vARB = unsafePerformIO $ getCommand "glUniformHandleui64vARB"
+
+-- glUniformHandleui64vIMG -----------------------------------------------------
+
+-- | This command is an alias for 'glUniformHandleui64vARB'.
+glUniformHandleui64vIMG
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glUniformHandleui64vIMG v1 v2 v3 = liftIO $ dyn828 ptr_glUniformHandleui64vIMG v1 v2 v3
+
+{-# NOINLINE ptr_glUniformHandleui64vIMG #-}
+ptr_glUniformHandleui64vIMG :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniformHandleui64vIMG = unsafePerformIO $ getCommand "glUniformHandleui64vIMG"
+
+-- glUniformHandleui64vNV ------------------------------------------------------
+
+glUniformHandleui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
+  -> m ()
+glUniformHandleui64vNV v1 v2 v3 = liftIO $ dyn828 ptr_glUniformHandleui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniformHandleui64vNV #-}
+ptr_glUniformHandleui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
+ptr_glUniformHandleui64vNV = unsafePerformIO $ getCommand "glUniformHandleui64vNV"
+
+-- glUniformMatrix2dv ----------------------------------------------------------
+
+glUniformMatrix2dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix2dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix2dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2dv #-}
+ptr_glUniformMatrix2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix2dv = unsafePerformIO $ getCommand "glUniformMatrix2dv"
+
+-- glUniformMatrix2fv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix2fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2fv #-}
+ptr_glUniformMatrix2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2fv = unsafePerformIO $ getCommand "glUniformMatrix2fv"
+
+-- glUniformMatrix2fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix2fv'.
+glUniformMatrix2fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2fvARB v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2fvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2fvARB #-}
+ptr_glUniformMatrix2fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2fvARB = unsafePerformIO $ getCommand "glUniformMatrix2fvARB"
+
+-- glUniformMatrix2x3dv --------------------------------------------------------
+
+glUniformMatrix2x3dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix2x3dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix2x3dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x3dv #-}
+ptr_glUniformMatrix2x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix2x3dv = unsafePerformIO $ getCommand "glUniformMatrix2x3dv"
+
+-- glUniformMatrix2x3fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix2x3fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2x3fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2x3fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x3fv #-}
+ptr_glUniformMatrix2x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2x3fv = unsafePerformIO $ getCommand "glUniformMatrix2x3fv"
+
+-- glUniformMatrix2x3fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix2x3fv'.
+glUniformMatrix2x3fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2x3fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2x3fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x3fvNV #-}
+ptr_glUniformMatrix2x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x3fvNV"
+
+-- glUniformMatrix2x4dv --------------------------------------------------------
+
+glUniformMatrix2x4dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix2x4dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix2x4dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x4dv #-}
+ptr_glUniformMatrix2x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix2x4dv = unsafePerformIO $ getCommand "glUniformMatrix2x4dv"
+
+-- glUniformMatrix2x4fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix2x4fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2x4fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2x4fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x4fv #-}
+ptr_glUniformMatrix2x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2x4fv = unsafePerformIO $ getCommand "glUniformMatrix2x4fv"
+
+-- glUniformMatrix2x4fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix2x4fv'.
+glUniformMatrix2x4fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix2x4fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix2x4fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix2x4fvNV #-}
+ptr_glUniformMatrix2x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix2x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x4fvNV"
+
+-- glUniformMatrix3dv ----------------------------------------------------------
+
+glUniformMatrix3dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix3dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix3dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3dv #-}
+ptr_glUniformMatrix3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix3dv = unsafePerformIO $ getCommand "glUniformMatrix3dv"
+
+-- glUniformMatrix3fv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix3fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3fv #-}
+ptr_glUniformMatrix3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3fv = unsafePerformIO $ getCommand "glUniformMatrix3fv"
+
+-- glUniformMatrix3fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix3fv'.
+glUniformMatrix3fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3fvARB v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3fvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3fvARB #-}
+ptr_glUniformMatrix3fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3fvARB = unsafePerformIO $ getCommand "glUniformMatrix3fvARB"
+
+-- glUniformMatrix3x2dv --------------------------------------------------------
+
+glUniformMatrix3x2dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix3x2dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix3x2dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x2dv #-}
+ptr_glUniformMatrix3x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix3x2dv = unsafePerformIO $ getCommand "glUniformMatrix3x2dv"
+
+-- glUniformMatrix3x2fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix3x2fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3x2fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3x2fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x2fv #-}
+ptr_glUniformMatrix3x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3x2fv = unsafePerformIO $ getCommand "glUniformMatrix3x2fv"
+
+-- glUniformMatrix3x2fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix3x2fv'.
+glUniformMatrix3x2fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3x2fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3x2fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x2fvNV #-}
+ptr_glUniformMatrix3x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x2fvNV"
+
+-- glUniformMatrix3x4dv --------------------------------------------------------
+
+glUniformMatrix3x4dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix3x4dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix3x4dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x4dv #-}
+ptr_glUniformMatrix3x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix3x4dv = unsafePerformIO $ getCommand "glUniformMatrix3x4dv"
+
+-- glUniformMatrix3x4fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix3x4fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3x4fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3x4fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x4fv #-}
+ptr_glUniformMatrix3x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3x4fv = unsafePerformIO $ getCommand "glUniformMatrix3x4fv"
+
+-- glUniformMatrix3x4fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix3x4fv'.
+glUniformMatrix3x4fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix3x4fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix3x4fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix3x4fvNV #-}
+ptr_glUniformMatrix3x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix3x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x4fvNV"
+
+-- glUniformMatrix4dv ----------------------------------------------------------
+
+glUniformMatrix4dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix4dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix4dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4dv #-}
+ptr_glUniformMatrix4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix4dv = unsafePerformIO $ getCommand "glUniformMatrix4dv"
+
+-- glUniformMatrix4fv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix4fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4fv #-}
+ptr_glUniformMatrix4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4fv = unsafePerformIO $ getCommand "glUniformMatrix4fv"
+
+-- glUniformMatrix4fvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix4fv'.
+glUniformMatrix4fvARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4fvARB v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4fvARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4fvARB #-}
+ptr_glUniformMatrix4fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4fvARB = unsafePerformIO $ getCommand "glUniformMatrix4fvARB"
+
+-- glUniformMatrix4x2dv --------------------------------------------------------
+
+glUniformMatrix4x2dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix4x2dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix4x2dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x2dv #-}
+ptr_glUniformMatrix4x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix4x2dv = unsafePerformIO $ getCommand "glUniformMatrix4x2dv"
+
+-- glUniformMatrix4x2fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix4x2fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4x2fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4x2fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x2fv #-}
+ptr_glUniformMatrix4x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4x2fv = unsafePerformIO $ getCommand "glUniformMatrix4x2fv"
+
+-- glUniformMatrix4x2fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix4x2fv'.
+glUniformMatrix4x2fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4x2fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4x2fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x2fvNV #-}
+ptr_glUniformMatrix4x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x2fvNV"
+
+-- glUniformMatrix4x3dv --------------------------------------------------------
+
+glUniformMatrix4x3dv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
+  -> m ()
+glUniformMatrix4x3dv v1 v2 v3 v4 = liftIO $ dyn850 ptr_glUniformMatrix4x3dv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x3dv #-}
+ptr_glUniformMatrix4x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glUniformMatrix4x3dv = unsafePerformIO $ getCommand "glUniformMatrix4x3dv"
+
+-- glUniformMatrix4x3fv --------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniformMatrix4x3fv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4x3fv v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4x3fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x3fv #-}
+ptr_glUniformMatrix4x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4x3fv = unsafePerformIO $ getCommand "glUniformMatrix4x3fv"
+
+-- glUniformMatrix4x3fvNV ------------------------------------------------------
+
+-- | This command is an alias for 'glUniformMatrix4x3fv'.
+glUniformMatrix4x3fvNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
+  -> m ()
+glUniformMatrix4x3fvNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glUniformMatrix4x3fvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniformMatrix4x3fvNV #-}
+ptr_glUniformMatrix4x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
+ptr_glUniformMatrix4x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x3fvNV"
+
+-- glUniformSubroutinesuiv -----------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUniformSubroutines.xhtml OpenGL 4.x>.
+glUniformSubroutinesuiv
+  :: MonadIO m
+  => GLenum -- ^ @shadertype@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @indices@ pointing to @count@ elements of type @GLuint@.
+  -> m ()
+glUniformSubroutinesuiv v1 v2 v3 = liftIO $ dyn200 ptr_glUniformSubroutinesuiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniformSubroutinesuiv #-}
+ptr_glUniformSubroutinesuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniformSubroutinesuiv = unsafePerformIO $ getCommand "glUniformSubroutinesuiv"
+
+-- glUniformui64NV -------------------------------------------------------------
+
+glUniformui64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLuint64EXT -- ^ @value@.
+  -> m ()
+glUniformui64NV v1 v2 = liftIO $ dyn827 ptr_glUniformui64NV v1 v2
+
+{-# NOINLINE ptr_glUniformui64NV #-}
+ptr_glUniformui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
+ptr_glUniformui64NV = unsafePerformIO $ getCommand "glUniformui64NV"
+
+-- glUniformui64vNV ------------------------------------------------------------
+
+glUniformui64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
+  -> m ()
+glUniformui64vNV v1 v2 v3 = liftIO $ dyn829 ptr_glUniformui64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniformui64vNV #-}
+ptr_glUniformui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glUniformui64vNV = unsafePerformIO $ getCommand "glUniformui64vNV"
+
+-- glUnlockArraysEXT -----------------------------------------------------------
+
+glUnlockArraysEXT
+  :: MonadIO m
+  => m ()
+glUnlockArraysEXT = liftIO $ dyn11 ptr_glUnlockArraysEXT
+
+{-# NOINLINE ptr_glUnlockArraysEXT #-}
+ptr_glUnlockArraysEXT :: FunPtr (IO ())
+ptr_glUnlockArraysEXT = unsafePerformIO $ getCommand "glUnlockArraysEXT"
+
+-- glUnmapBuffer ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>.
+glUnmapBuffer
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glUnmapBuffer v1 = liftIO $ dyn492 ptr_glUnmapBuffer v1
+
+{-# NOINLINE ptr_glUnmapBuffer #-}
+ptr_glUnmapBuffer :: FunPtr (GLenum -> IO GLboolean)
+ptr_glUnmapBuffer = unsafePerformIO $ getCommand "glUnmapBuffer"
+
+-- glUnmapBufferARB ------------------------------------------------------------
+
+-- | This command is an alias for 'glUnmapBuffer'.
+glUnmapBufferARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glUnmapBufferARB v1 = liftIO $ dyn492 ptr_glUnmapBufferARB v1
+
+{-# NOINLINE ptr_glUnmapBufferARB #-}
+ptr_glUnmapBufferARB :: FunPtr (GLenum -> IO GLboolean)
+ptr_glUnmapBufferARB = unsafePerformIO $ getCommand "glUnmapBufferARB"
+
+-- glUnmapBufferOES ------------------------------------------------------------
+
+-- | This command is an alias for 'glUnmapBuffer'.
+glUnmapBufferOES
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> m GLboolean
+glUnmapBufferOES v1 = liftIO $ dyn492 ptr_glUnmapBufferOES v1
+
+{-# NOINLINE ptr_glUnmapBufferOES #-}
+ptr_glUnmapBufferOES :: FunPtr (GLenum -> IO GLboolean)
+ptr_glUnmapBufferOES = unsafePerformIO $ getCommand "glUnmapBufferOES"
+
+-- glUnmapNamedBuffer ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>.
+glUnmapNamedBuffer
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m GLboolean
+glUnmapNamedBuffer v1 = liftIO $ dyn277 ptr_glUnmapNamedBuffer v1
+
+{-# NOINLINE ptr_glUnmapNamedBuffer #-}
+ptr_glUnmapNamedBuffer :: FunPtr (GLuint -> IO GLboolean)
+ptr_glUnmapNamedBuffer = unsafePerformIO $ getCommand "glUnmapNamedBuffer"
+
+-- glUnmapNamedBufferEXT -------------------------------------------------------
+
+glUnmapNamedBufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glUnmapNamedBufferEXT v1 = liftIO $ dyn277 ptr_glUnmapNamedBufferEXT v1
+
+{-# NOINLINE ptr_glUnmapNamedBufferEXT #-}
+ptr_glUnmapNamedBufferEXT :: FunPtr (GLuint -> IO GLboolean)
+ptr_glUnmapNamedBufferEXT = unsafePerformIO $ getCommand "glUnmapNamedBufferEXT"
+
+-- glUnmapObjectBufferATI ------------------------------------------------------
+
+glUnmapObjectBufferATI
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> m ()
+glUnmapObjectBufferATI v1 = liftIO $ dyn3 ptr_glUnmapObjectBufferATI v1
+
+{-# NOINLINE ptr_glUnmapObjectBufferATI #-}
+ptr_glUnmapObjectBufferATI :: FunPtr (GLuint -> IO ())
+ptr_glUnmapObjectBufferATI = unsafePerformIO $ getCommand "glUnmapObjectBufferATI"
+
+-- glUnmapTexture2DINTEL -------------------------------------------------------
+
+glUnmapTexture2DINTEL
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> m ()
+glUnmapTexture2DINTEL v1 v2 = liftIO $ dyn490 ptr_glUnmapTexture2DINTEL v1 v2
+
+{-# NOINLINE ptr_glUnmapTexture2DINTEL #-}
+ptr_glUnmapTexture2DINTEL :: FunPtr (GLuint -> GLint -> IO ())
+ptr_glUnmapTexture2DINTEL = unsafePerformIO $ getCommand "glUnmapTexture2DINTEL"
+
+-- glUpdateObjectBufferATI -----------------------------------------------------
+
+glUpdateObjectBufferATI
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @offset@.
+  -> GLsizei -- ^ @size@.
+  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
+  -> GLenum -- ^ @preserve@ of type @PreserveModeATI@.
+  -> m ()
+glUpdateObjectBufferATI v1 v2 v3 v4 v5 = liftIO $ dyn852 ptr_glUpdateObjectBufferATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glUpdateObjectBufferATI #-}
+ptr_glUpdateObjectBufferATI :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
+ptr_glUpdateObjectBufferATI = unsafePerformIO $ getCommand "glUpdateObjectBufferATI"
+
+-- glUseProgram ----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUseProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUseProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUseProgram.xhtml OpenGL 4.x>.
+glUseProgram
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> m ()
+glUseProgram v1 = liftIO $ dyn3 ptr_glUseProgram v1
+
+{-# NOINLINE ptr_glUseProgram #-}
+ptr_glUseProgram :: FunPtr (GLuint -> IO ())
+ptr_glUseProgram = unsafePerformIO $ getCommand "glUseProgram"
+
+-- glUseProgramObjectARB -------------------------------------------------------
+
+-- | This command is an alias for 'glUseProgram'.
+glUseProgramObjectARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
+  -> m ()
+glUseProgramObjectARB v1 = liftIO $ dyn140 ptr_glUseProgramObjectARB v1
+
+{-# NOINLINE ptr_glUseProgramObjectARB #-}
+ptr_glUseProgramObjectARB :: FunPtr (GLhandleARB -> IO ())
+ptr_glUseProgramObjectARB = unsafePerformIO $ getCommand "glUseProgramObjectARB"
+
+-- glUseProgramStages ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUseProgramStages.xhtml OpenGL 4.x>.
+glUseProgramStages
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> GLbitfield -- ^ @stages@.
+  -> GLuint -- ^ @program@.
+  -> m ()
+glUseProgramStages v1 v2 v3 = liftIO $ dyn853 ptr_glUseProgramStages v1 v2 v3
+
+{-# NOINLINE ptr_glUseProgramStages #-}
+ptr_glUseProgramStages :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
+ptr_glUseProgramStages = unsafePerformIO $ getCommand "glUseProgramStages"
+
+-- glUseProgramStagesEXT -------------------------------------------------------
+
+glUseProgramStagesEXT
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> GLbitfield -- ^ @stages@.
+  -> GLuint -- ^ @program@.
+  -> m ()
+glUseProgramStagesEXT v1 v2 v3 = liftIO $ dyn853 ptr_glUseProgramStagesEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUseProgramStagesEXT #-}
+ptr_glUseProgramStagesEXT :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
+ptr_glUseProgramStagesEXT = unsafePerformIO $ getCommand "glUseProgramStagesEXT"
+
+-- glUseShaderProgramEXT -------------------------------------------------------
+
+glUseShaderProgramEXT
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @program@.
+  -> m ()
+glUseShaderProgramEXT v1 v2 = liftIO $ dyn17 ptr_glUseShaderProgramEXT v1 v2
+
+{-# NOINLINE ptr_glUseShaderProgramEXT #-}
+ptr_glUseShaderProgramEXT :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glUseShaderProgramEXT = unsafePerformIO $ getCommand "glUseShaderProgramEXT"
+
+-- glVDPAUFiniNV ---------------------------------------------------------------
+
+glVDPAUFiniNV
+  :: MonadIO m
+  => m ()
+glVDPAUFiniNV = liftIO $ dyn11 ptr_glVDPAUFiniNV
+
+{-# NOINLINE ptr_glVDPAUFiniNV #-}
+ptr_glVDPAUFiniNV :: FunPtr (IO ())
+ptr_glVDPAUFiniNV = unsafePerformIO $ getCommand "glVDPAUFiniNV"
+
+-- glVDPAUGetSurfaceivNV -------------------------------------------------------
+
+glVDPAUGetSurfaceivNV
+  :: MonadIO m
+  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
+  -> GLenum -- ^ @pname@.
+  -> GLsizei -- ^ @bufSize@.
+  -> Ptr GLsizei -- ^ @length@.
+  -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
+  -> m ()
+glVDPAUGetSurfaceivNV v1 v2 v3 v4 v5 = liftIO $ dyn854 ptr_glVDPAUGetSurfaceivNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVDPAUGetSurfaceivNV #-}
+ptr_glVDPAUGetSurfaceivNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
+ptr_glVDPAUGetSurfaceivNV = unsafePerformIO $ getCommand "glVDPAUGetSurfaceivNV"
+
+-- glVDPAUInitNV ---------------------------------------------------------------
+
+glVDPAUInitNV
+  :: MonadIO m
+  => Ptr a -- ^ @vdpDevice@.
+  -> Ptr b -- ^ @getProcAddress@.
+  -> m ()
+glVDPAUInitNV v1 v2 = liftIO $ dyn855 ptr_glVDPAUInitNV v1 v2
+
+{-# NOINLINE ptr_glVDPAUInitNV #-}
+ptr_glVDPAUInitNV :: FunPtr (Ptr a -> Ptr b -> IO ())
+ptr_glVDPAUInitNV = unsafePerformIO $ getCommand "glVDPAUInitNV"
+
+-- glVDPAUIsSurfaceNV ----------------------------------------------------------
+
+glVDPAUIsSurfaceNV
+  :: MonadIO m
+  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
+  -> m GLboolean
+glVDPAUIsSurfaceNV v1 = liftIO $ dyn856 ptr_glVDPAUIsSurfaceNV v1
+
+{-# NOINLINE ptr_glVDPAUIsSurfaceNV #-}
+ptr_glVDPAUIsSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
+ptr_glVDPAUIsSurfaceNV = unsafePerformIO $ getCommand "glVDPAUIsSurfaceNV"
+
+-- glVDPAUMapSurfacesNV --------------------------------------------------------
+
+glVDPAUMapSurfacesNV
+  :: MonadIO m
+  => GLsizei -- ^ @numSurfaces@.
+  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurfaces@ elements of type @vdpauSurfaceNV@.
+  -> m ()
+glVDPAUMapSurfacesNV v1 v2 = liftIO $ dyn857 ptr_glVDPAUMapSurfacesNV v1 v2
+
+{-# NOINLINE ptr_glVDPAUMapSurfacesNV #-}
+ptr_glVDPAUMapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
+ptr_glVDPAUMapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUMapSurfacesNV"
+
+-- glVDPAURegisterOutputSurfaceNV ----------------------------------------------
+
+glVDPAURegisterOutputSurfaceNV
+  :: MonadIO m
+  => Ptr a -- ^ @vdpSurface@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @numTextureNames@.
+  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
+  -> m GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
+glVDPAURegisterOutputSurfaceNV v1 v2 v3 v4 = liftIO $ dyn858 ptr_glVDPAURegisterOutputSurfaceNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVDPAURegisterOutputSurfaceNV #-}
+ptr_glVDPAURegisterOutputSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
+ptr_glVDPAURegisterOutputSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterOutputSurfaceNV"
+
+-- glVDPAURegisterVideoSurfaceNV -----------------------------------------------
+
+glVDPAURegisterVideoSurfaceNV
+  :: MonadIO m
+  => Ptr a -- ^ @vdpSurface@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @numTextureNames@.
+  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
+  -> m GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
+glVDPAURegisterVideoSurfaceNV v1 v2 v3 v4 = liftIO $ dyn858 ptr_glVDPAURegisterVideoSurfaceNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVDPAURegisterVideoSurfaceNV #-}
+ptr_glVDPAURegisterVideoSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
+ptr_glVDPAURegisterVideoSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterVideoSurfaceNV"
+
+-- glVDPAUSurfaceAccessNV ------------------------------------------------------
+
+glVDPAUSurfaceAccessNV
+  :: MonadIO m
+  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
+  -> GLenum -- ^ @access@.
+  -> m ()
+glVDPAUSurfaceAccessNV v1 v2 = liftIO $ dyn859 ptr_glVDPAUSurfaceAccessNV v1 v2
+
+{-# NOINLINE ptr_glVDPAUSurfaceAccessNV #-}
+ptr_glVDPAUSurfaceAccessNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
+ptr_glVDPAUSurfaceAccessNV = unsafePerformIO $ getCommand "glVDPAUSurfaceAccessNV"
+
+-- glVDPAUUnmapSurfacesNV ------------------------------------------------------
+
+glVDPAUUnmapSurfacesNV
+  :: MonadIO m
+  => GLsizei -- ^ @numSurface@.
+  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurface@ elements of type @vdpauSurfaceNV@.
+  -> m ()
+glVDPAUUnmapSurfacesNV v1 v2 = liftIO $ dyn857 ptr_glVDPAUUnmapSurfacesNV v1 v2
+
+{-# NOINLINE ptr_glVDPAUUnmapSurfacesNV #-}
+ptr_glVDPAUUnmapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
+ptr_glVDPAUUnmapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUUnmapSurfacesNV"
+
+-- glVDPAUUnregisterSurfaceNV --------------------------------------------------
+
+glVDPAUUnregisterSurfaceNV
+  :: MonadIO m
+  => GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
+  -> m ()
+glVDPAUUnregisterSurfaceNV v1 = liftIO $ dyn860 ptr_glVDPAUUnregisterSurfaceNV v1
+
+{-# NOINLINE ptr_glVDPAUUnregisterSurfaceNV #-}
+ptr_glVDPAUUnregisterSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO ())
+ptr_glVDPAUUnregisterSurfaceNV = unsafePerformIO $ getCommand "glVDPAUUnregisterSurfaceNV"
+
+-- glValidateProgram -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glValidateProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glValidateProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glValidateProgram.xhtml OpenGL 4.x>.
+glValidateProgram
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> m ()
+glValidateProgram v1 = liftIO $ dyn3 ptr_glValidateProgram v1
+
+{-# NOINLINE ptr_glValidateProgram #-}
+ptr_glValidateProgram :: FunPtr (GLuint -> IO ())
+ptr_glValidateProgram = unsafePerformIO $ getCommand "glValidateProgram"
+
+-- glValidateProgramARB --------------------------------------------------------
+
+-- | This command is an alias for 'glValidateProgram'.
+glValidateProgramARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
+  -> m ()
+glValidateProgramARB v1 = liftIO $ dyn140 ptr_glValidateProgramARB v1
+
+{-# NOINLINE ptr_glValidateProgramARB #-}
+ptr_glValidateProgramARB :: FunPtr (GLhandleARB -> IO ())
+ptr_glValidateProgramARB = unsafePerformIO $ getCommand "glValidateProgramARB"
+
+-- glValidateProgramPipeline ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glValidateProgramPipeline.xhtml OpenGL 4.x>.
+glValidateProgramPipeline
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m ()
+glValidateProgramPipeline v1 = liftIO $ dyn3 ptr_glValidateProgramPipeline v1
+
+{-# NOINLINE ptr_glValidateProgramPipeline #-}
+ptr_glValidateProgramPipeline :: FunPtr (GLuint -> IO ())
+ptr_glValidateProgramPipeline = unsafePerformIO $ getCommand "glValidateProgramPipeline"
+
+-- glValidateProgramPipelineEXT ------------------------------------------------
+
+glValidateProgramPipelineEXT
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m ()
+glValidateProgramPipelineEXT v1 = liftIO $ dyn3 ptr_glValidateProgramPipelineEXT v1
+
+{-# NOINLINE ptr_glValidateProgramPipelineEXT #-}
+ptr_glValidateProgramPipelineEXT :: FunPtr (GLuint -> IO ())
+ptr_glValidateProgramPipelineEXT = unsafePerformIO $ getCommand "glValidateProgramPipelineEXT"
+
+-- glVariantArrayObjectATI -----------------------------------------------------
+
+glVariantArrayObjectATI
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> GLsizei -- ^ @stride@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @offset@.
+  -> m ()
+glVariantArrayObjectATI v1 v2 v3 v4 v5 = liftIO $ dyn861 ptr_glVariantArrayObjectATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVariantArrayObjectATI #-}
+ptr_glVariantArrayObjectATI :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
+ptr_glVariantArrayObjectATI = unsafePerformIO $ getCommand "glVariantArrayObjectATI"
+
+-- glVariantPointerEXT ---------------------------------------------------------
+
+glVariantPointerEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> GLuint -- ^ @stride@.
+  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type,stride)@ elements of type @a@.
+  -> m ()
+glVariantPointerEXT v1 v2 v3 v4 = liftIO $ dyn862 ptr_glVariantPointerEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVariantPointerEXT #-}
+ptr_glVariantPointerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
+ptr_glVariantPointerEXT = unsafePerformIO $ getCommand "glVariantPointerEXT"
+
+-- glVariantbvEXT --------------------------------------------------------------
+
+glVariantbvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLbyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLbyte@.
+  -> m ()
+glVariantbvEXT v1 v2 = liftIO $ dyn863 ptr_glVariantbvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantbvEXT #-}
+ptr_glVariantbvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVariantbvEXT = unsafePerformIO $ getCommand "glVariantbvEXT"
+
+-- glVariantdvEXT --------------------------------------------------------------
+
+glVariantdvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLdouble -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLdouble@.
+  -> m ()
+glVariantdvEXT v1 v2 = liftIO $ dyn864 ptr_glVariantdvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantdvEXT #-}
+ptr_glVariantdvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVariantdvEXT = unsafePerformIO $ getCommand "glVariantdvEXT"
+
+-- glVariantfvEXT --------------------------------------------------------------
+
+glVariantfvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLfloat -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
+  -> m ()
+glVariantfvEXT v1 v2 = liftIO $ dyn386 ptr_glVariantfvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantfvEXT #-}
+ptr_glVariantfvEXT :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVariantfvEXT = unsafePerformIO $ getCommand "glVariantfvEXT"
+
+-- glVariantivEXT --------------------------------------------------------------
+
+glVariantivEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
+  -> m ()
+glVariantivEXT v1 v2 = liftIO $ dyn726 ptr_glVariantivEXT v1 v2
+
+{-# NOINLINE ptr_glVariantivEXT #-}
+ptr_glVariantivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVariantivEXT = unsafePerformIO $ getCommand "glVariantivEXT"
+
+-- glVariantsvEXT --------------------------------------------------------------
+
+glVariantsvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLshort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLshort@.
+  -> m ()
+glVariantsvEXT v1 v2 = liftIO $ dyn865 ptr_glVariantsvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantsvEXT #-}
+ptr_glVariantsvEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVariantsvEXT = unsafePerformIO $ getCommand "glVariantsvEXT"
+
+-- glVariantubvEXT -------------------------------------------------------------
+
+glVariantubvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLubyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLubyte@.
+  -> m ()
+glVariantubvEXT v1 v2 = liftIO $ dyn385 ptr_glVariantubvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantubvEXT #-}
+ptr_glVariantubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVariantubvEXT = unsafePerformIO $ getCommand "glVariantubvEXT"
+
+-- glVariantuivEXT -------------------------------------------------------------
+
+glVariantuivEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLuint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLuint@.
+  -> m ()
+glVariantuivEXT v1 v2 = liftIO $ dyn197 ptr_glVariantuivEXT v1 v2
+
+{-# NOINLINE ptr_glVariantuivEXT #-}
+ptr_glVariantuivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVariantuivEXT = unsafePerformIO $ getCommand "glVariantuivEXT"
+
+-- glVariantusvEXT -------------------------------------------------------------
+
+glVariantusvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLushort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLushort@.
+  -> m ()
+glVariantusvEXT v1 v2 = liftIO $ dyn866 ptr_glVariantusvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantusvEXT #-}
+ptr_glVariantusvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVariantusvEXT = unsafePerformIO $ getCommand "glVariantusvEXT"
+
+-- glVertex2bOES ---------------------------------------------------------------
+
+glVertex2bOES
+  :: MonadIO m
+  => GLbyte -- ^ @x@.
+  -> GLbyte -- ^ @y@.
+  -> m ()
+glVertex2bOES v1 v2 = liftIO $ dyn748 ptr_glVertex2bOES v1 v2
+
+{-# NOINLINE ptr_glVertex2bOES #-}
+ptr_glVertex2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
+ptr_glVertex2bOES = unsafePerformIO $ getCommand "glVertex2bOES"
+
+-- glVertex2bvOES --------------------------------------------------------------
+
+glVertex2bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
+  -> m ()
+glVertex2bvOES v1 = liftIO $ dyn38 ptr_glVertex2bvOES v1
+
+{-# NOINLINE ptr_glVertex2bvOES #-}
+ptr_glVertex2bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glVertex2bvOES = unsafePerformIO $ getCommand "glVertex2bvOES"
+
+-- glVertex2d ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2dv'.
+glVertex2d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> m ()
+glVertex2d v1 v2 = liftIO $ dyn220 ptr_glVertex2d v1 v2
+
+{-# NOINLINE ptr_glVertex2d #-}
+ptr_glVertex2d :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glVertex2d = unsafePerformIO $ getCommand "glVertex2d"
+
+-- glVertex2dv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex2dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glVertex2dv v1 = liftIO $ dyn40 ptr_glVertex2dv v1
+
+{-# NOINLINE ptr_glVertex2dv #-}
+ptr_glVertex2dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glVertex2dv = unsafePerformIO $ getCommand "glVertex2dv"
+
+-- glVertex2f ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2fv'.
+glVertex2f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> m ()
+glVertex2f v1 v2 = liftIO $ dyn225 ptr_glVertex2f v1 v2
+
+{-# NOINLINE ptr_glVertex2f #-}
+ptr_glVertex2f :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glVertex2f = unsafePerformIO $ getCommand "glVertex2f"
+
+-- glVertex2fv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex2fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glVertex2fv v1 = liftIO $ dyn42 ptr_glVertex2fv v1
+
+{-# NOINLINE ptr_glVertex2fv #-}
+ptr_glVertex2fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glVertex2fv = unsafePerformIO $ getCommand "glVertex2fv"
+
+-- glVertex2hNV ----------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertex2hvNV'.
+glVertex2hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> m ()
+glVertex2hNV v1 v2 = liftIO $ dyn753 ptr_glVertex2hNV v1 v2
+
+{-# NOINLINE ptr_glVertex2hNV #-}
+ptr_glVertex2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertex2hNV = unsafePerformIO $ getCommand "glVertex2hNV"
+
+-- glVertex2hvNV ---------------------------------------------------------------
+
+glVertex2hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
+  -> m ()
+glVertex2hvNV v1 = liftIO $ dyn102 ptr_glVertex2hvNV v1
+
+{-# NOINLINE ptr_glVertex2hvNV #-}
+ptr_glVertex2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glVertex2hvNV = unsafePerformIO $ getCommand "glVertex2hvNV"
+
+-- glVertex2i ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2iv'.
+glVertex2i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glVertex2i v1 v2 = liftIO $ dyn270 ptr_glVertex2i v1 v2
+
+{-# NOINLINE ptr_glVertex2i #-}
+ptr_glVertex2i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glVertex2i = unsafePerformIO $ getCommand "glVertex2i"
+
+-- glVertex2iv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex2iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glVertex2iv v1 = liftIO $ dyn44 ptr_glVertex2iv v1
+
+{-# NOINLINE ptr_glVertex2iv #-}
+ptr_glVertex2iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glVertex2iv = unsafePerformIO $ getCommand "glVertex2iv"
+
+-- glVertex2s ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2sv'.
+glVertex2s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glVertex2s v1 v2 = liftIO $ dyn694 ptr_glVertex2s v1 v2
+
+{-# NOINLINE ptr_glVertex2s #-}
+ptr_glVertex2s :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glVertex2s = unsafePerformIO $ getCommand "glVertex2s"
+
+-- glVertex2sv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex2sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glVertex2sv v1 = liftIO $ dyn46 ptr_glVertex2sv v1
+
+{-# NOINLINE ptr_glVertex2sv #-}
+ptr_glVertex2sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glVertex2sv = unsafePerformIO $ getCommand "glVertex2sv"
+
+-- glVertex2xOES ---------------------------------------------------------------
+
+glVertex2xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> m ()
+glVertex2xOES v1 = liftIO $ dyn84 ptr_glVertex2xOES v1
+
+{-# NOINLINE ptr_glVertex2xOES #-}
+ptr_glVertex2xOES :: FunPtr (GLfixed -> IO ())
+ptr_glVertex2xOES = unsafePerformIO $ getCommand "glVertex2xOES"
+
+-- glVertex2xvOES --------------------------------------------------------------
+
+glVertex2xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glVertex2xvOES v1 = liftIO $ dyn110 ptr_glVertex2xvOES v1
+
+{-# NOINLINE ptr_glVertex2xvOES #-}
+ptr_glVertex2xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glVertex2xvOES = unsafePerformIO $ getCommand "glVertex2xvOES"
+
+-- glVertex3bOES ---------------------------------------------------------------
+
+glVertex3bOES
+  :: MonadIO m
+  => GLbyte -- ^ @x@.
+  -> GLbyte -- ^ @y@.
+  -> GLbyte -- ^ @z@.
+  -> m ()
+glVertex3bOES v1 v2 v3 = liftIO $ dyn37 ptr_glVertex3bOES v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3bOES #-}
+ptr_glVertex3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glVertex3bOES = unsafePerformIO $ getCommand "glVertex3bOES"
 
diff --git a/src/Graphics/GL/Functions/F29.hs b/src/Graphics/GL/Functions/F29.hs
--- a/src/Graphics/GL/Functions/F29.hs
+++ b/src/Graphics/GL/Functions/F29.hs
@@ -15,1576 +15,1581 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F29 (
-  glVertexAttrib1dNV,
-  glVertexAttrib1dv,
-  glVertexAttrib1dvARB,
-  glVertexAttrib1dvNV,
-  glVertexAttrib1f,
-  glVertexAttrib1fARB,
-  glVertexAttrib1fNV,
-  glVertexAttrib1fv,
-  glVertexAttrib1fvARB,
-  glVertexAttrib1fvNV,
-  glVertexAttrib1hNV,
-  glVertexAttrib1hvNV,
-  glVertexAttrib1s,
-  glVertexAttrib1sARB,
-  glVertexAttrib1sNV,
-  glVertexAttrib1sv,
-  glVertexAttrib1svARB,
-  glVertexAttrib1svNV,
-  glVertexAttrib2d,
-  glVertexAttrib2dARB,
-  glVertexAttrib2dNV,
-  glVertexAttrib2dv,
-  glVertexAttrib2dvARB,
-  glVertexAttrib2dvNV,
-  glVertexAttrib2f,
-  glVertexAttrib2fARB,
-  glVertexAttrib2fNV,
-  glVertexAttrib2fv,
-  glVertexAttrib2fvARB,
-  glVertexAttrib2fvNV,
-  glVertexAttrib2hNV,
-  glVertexAttrib2hvNV,
-  glVertexAttrib2s,
-  glVertexAttrib2sARB,
-  glVertexAttrib2sNV,
-  glVertexAttrib2sv,
-  glVertexAttrib2svARB,
-  glVertexAttrib2svNV,
-  glVertexAttrib3d,
-  glVertexAttrib3dARB,
-  glVertexAttrib3dNV,
-  glVertexAttrib3dv,
-  glVertexAttrib3dvARB,
-  glVertexAttrib3dvNV,
-  glVertexAttrib3f,
-  glVertexAttrib3fARB,
-  glVertexAttrib3fNV,
-  glVertexAttrib3fv,
-  glVertexAttrib3fvARB,
-  glVertexAttrib3fvNV,
-  glVertexAttrib3hNV,
-  glVertexAttrib3hvNV,
-  glVertexAttrib3s,
-  glVertexAttrib3sARB,
-  glVertexAttrib3sNV,
-  glVertexAttrib3sv,
-  glVertexAttrib3svARB,
-  glVertexAttrib3svNV,
-  glVertexAttrib4Nbv,
-  glVertexAttrib4NbvARB,
-  glVertexAttrib4Niv,
-  glVertexAttrib4NivARB,
-  glVertexAttrib4Nsv,
-  glVertexAttrib4NsvARB,
-  glVertexAttrib4Nub,
-  glVertexAttrib4NubARB,
-  glVertexAttrib4Nubv,
-  glVertexAttrib4NubvARB,
-  glVertexAttrib4Nuiv,
-  glVertexAttrib4NuivARB,
-  glVertexAttrib4Nusv,
-  glVertexAttrib4NusvARB,
-  glVertexAttrib4bv,
-  glVertexAttrib4bvARB,
-  glVertexAttrib4d,
-  glVertexAttrib4dARB,
-  glVertexAttrib4dNV,
-  glVertexAttrib4dv,
-  glVertexAttrib4dvARB,
-  glVertexAttrib4dvNV,
-  glVertexAttrib4f,
-  glVertexAttrib4fARB,
-  glVertexAttrib4fNV,
-  glVertexAttrib4fv,
-  glVertexAttrib4fvARB,
-  glVertexAttrib4fvNV,
-  glVertexAttrib4hNV,
-  glVertexAttrib4hvNV,
-  glVertexAttrib4iv,
-  glVertexAttrib4ivARB,
-  glVertexAttrib4s,
-  glVertexAttrib4sARB,
-  glVertexAttrib4sNV,
-  glVertexAttrib4sv,
-  glVertexAttrib4svARB,
-  glVertexAttrib4svNV,
-  glVertexAttrib4ubNV,
-  glVertexAttrib4ubv,
-  glVertexAttrib4ubvARB,
-  glVertexAttrib4ubvNV
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glVertexAttrib1dNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1dvNV'. This command is an alias for 'glVertexAttrib1d'.
-glVertexAttrib1dNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexAttrib1dNV v1 v2 = liftIO $ dyn844 ptr_glVertexAttrib1dNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1dNV #-}
-ptr_glVertexAttrib1dNV :: FunPtr (GLuint -> GLdouble -> IO ())
-ptr_glVertexAttrib1dNV = unsafePerformIO $ getCommand "glVertexAttrib1dNV"
-
--- glVertexAttrib1dv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib1dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexAttrib1dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib1dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1dv #-}
-ptr_glVertexAttrib1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib1dv = unsafePerformIO $ getCommand "glVertexAttrib1dv"
-
--- glVertexAttrib1dvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1dv'.
-glVertexAttrib1dvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexAttrib1dvARB v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib1dvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1dvARB #-}
-ptr_glVertexAttrib1dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib1dvARB = unsafePerformIO $ getCommand "glVertexAttrib1dvARB"
-
--- glVertexAttrib1dvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1dv'.
-glVertexAttrib1dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexAttrib1dvNV v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib1dvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1dvNV #-}
-ptr_glVertexAttrib1dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib1dvNV = unsafePerformIO $ getCommand "glVertexAttrib1dvNV"
-
--- glVertexAttrib1f ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1fv'.
-glVertexAttrib1f
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> m ()
-glVertexAttrib1f v1 v2 = liftIO $ dyn845 ptr_glVertexAttrib1f v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1f #-}
-ptr_glVertexAttrib1f :: FunPtr (GLuint -> GLfloat -> IO ())
-ptr_glVertexAttrib1f = unsafePerformIO $ getCommand "glVertexAttrib1f"
-
--- glVertexAttrib1fARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1fvARB'. This command is an alias for 'glVertexAttrib1f'.
-glVertexAttrib1fARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> m ()
-glVertexAttrib1fARB v1 v2 = liftIO $ dyn845 ptr_glVertexAttrib1fARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1fARB #-}
-ptr_glVertexAttrib1fARB :: FunPtr (GLuint -> GLfloat -> IO ())
-ptr_glVertexAttrib1fARB = unsafePerformIO $ getCommand "glVertexAttrib1fARB"
-
--- glVertexAttrib1fNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1fvNV'. This command is an alias for 'glVertexAttrib1f'.
-glVertexAttrib1fNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> m ()
-glVertexAttrib1fNV v1 v2 = liftIO $ dyn845 ptr_glVertexAttrib1fNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1fNV #-}
-ptr_glVertexAttrib1fNV :: FunPtr (GLuint -> GLfloat -> IO ())
-ptr_glVertexAttrib1fNV = unsafePerformIO $ getCommand "glVertexAttrib1fNV"
-
--- glVertexAttrib1fv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib1fv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glVertexAttrib1fv v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib1fv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1fv #-}
-ptr_glVertexAttrib1fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib1fv = unsafePerformIO $ getCommand "glVertexAttrib1fv"
-
--- glVertexAttrib1fvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1fv'.
-glVertexAttrib1fvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glVertexAttrib1fvARB v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib1fvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1fvARB #-}
-ptr_glVertexAttrib1fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib1fvARB = unsafePerformIO $ getCommand "glVertexAttrib1fvARB"
-
--- glVertexAttrib1fvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1fv'.
-glVertexAttrib1fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glVertexAttrib1fvNV v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib1fvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1fvNV #-}
-ptr_glVertexAttrib1fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib1fvNV = unsafePerformIO $ getCommand "glVertexAttrib1fvNV"
-
--- glVertexAttrib1hNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1hvNV'.
-glVertexAttrib1hNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> m ()
-glVertexAttrib1hNV v1 v2 = liftIO $ dyn846 ptr_glVertexAttrib1hNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1hNV #-}
-ptr_glVertexAttrib1hNV :: FunPtr (GLuint -> GLhalfNV -> IO ())
-ptr_glVertexAttrib1hNV = unsafePerformIO $ getCommand "glVertexAttrib1hNV"
-
--- glVertexAttrib1hvNV ---------------------------------------------------------
-
-glVertexAttrib1hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
-  -> m ()
-glVertexAttrib1hvNV v1 v2 = liftIO $ dyn847 ptr_glVertexAttrib1hvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1hvNV #-}
-ptr_glVertexAttrib1hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttrib1hvNV = unsafePerformIO $ getCommand "glVertexAttrib1hvNV"
-
--- glVertexAttrib1s ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1sv'.
-glVertexAttrib1s
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> m ()
-glVertexAttrib1s v1 v2 = liftIO $ dyn848 ptr_glVertexAttrib1s v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1s #-}
-ptr_glVertexAttrib1s :: FunPtr (GLuint -> GLshort -> IO ())
-ptr_glVertexAttrib1s = unsafePerformIO $ getCommand "glVertexAttrib1s"
-
--- glVertexAttrib1sARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1svARB'. This command is an alias for 'glVertexAttrib1s'.
-glVertexAttrib1sARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> m ()
-glVertexAttrib1sARB v1 v2 = liftIO $ dyn848 ptr_glVertexAttrib1sARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1sARB #-}
-ptr_glVertexAttrib1sARB :: FunPtr (GLuint -> GLshort -> IO ())
-ptr_glVertexAttrib1sARB = unsafePerformIO $ getCommand "glVertexAttrib1sARB"
-
--- glVertexAttrib1sNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1svNV'. This command is an alias for 'glVertexAttrib1s'.
-glVertexAttrib1sNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> m ()
-glVertexAttrib1sNV v1 v2 = liftIO $ dyn848 ptr_glVertexAttrib1sNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1sNV #-}
-ptr_glVertexAttrib1sNV :: FunPtr (GLuint -> GLshort -> IO ())
-ptr_glVertexAttrib1sNV = unsafePerformIO $ getCommand "glVertexAttrib1sNV"
-
--- glVertexAttrib1sv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib1sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1sv v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib1sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1sv #-}
-ptr_glVertexAttrib1sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1sv = unsafePerformIO $ getCommand "glVertexAttrib1sv"
-
--- glVertexAttrib1svARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1sv'.
-glVertexAttrib1svARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1svARB v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib1svARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1svARB #-}
-ptr_glVertexAttrib1svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1svARB = unsafePerformIO $ getCommand "glVertexAttrib1svARB"
-
--- glVertexAttrib1svNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1sv'.
-glVertexAttrib1svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1svNV v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib1svNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1svNV #-}
-ptr_glVertexAttrib1svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1svNV = unsafePerformIO $ getCommand "glVertexAttrib1svNV"
-
--- glVertexAttrib2d ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2dv'.
-glVertexAttrib2d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttrib2d v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2d v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2d #-}
-ptr_glVertexAttrib2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib2d = unsafePerformIO $ getCommand "glVertexAttrib2d"
-
--- glVertexAttrib2dARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2dvARB'. This command is an alias for 'glVertexAttrib2d'.
-glVertexAttrib2dARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttrib2dARB v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2dARB v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2dARB #-}
-ptr_glVertexAttrib2dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib2dARB = unsafePerformIO $ getCommand "glVertexAttrib2dARB"
-
--- glVertexAttrib2dNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2dvNV'. This command is an alias for 'glVertexAttrib2d'.
-glVertexAttrib2dNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttrib2dNV v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2dNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2dNV #-}
-ptr_glVertexAttrib2dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib2dNV = unsafePerformIO $ getCommand "glVertexAttrib2dNV"
-
--- glVertexAttrib2dv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib2dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib2dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib2dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2dv #-}
-ptr_glVertexAttrib2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib2dv = unsafePerformIO $ getCommand "glVertexAttrib2dv"
-
--- glVertexAttrib2dvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2dv'.
-glVertexAttrib2dvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib2dvARB v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib2dvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2dvARB #-}
-ptr_glVertexAttrib2dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib2dvARB = unsafePerformIO $ getCommand "glVertexAttrib2dvARB"
-
--- glVertexAttrib2dvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2dv'.
-glVertexAttrib2dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib2dvNV v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib2dvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2dvNV #-}
-ptr_glVertexAttrib2dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib2dvNV = unsafePerformIO $ getCommand "glVertexAttrib2dvNV"
-
--- glVertexAttrib2f ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2fv'.
-glVertexAttrib2f
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m ()
-glVertexAttrib2f v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttrib2f v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2f #-}
-ptr_glVertexAttrib2f :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib2f = unsafePerformIO $ getCommand "glVertexAttrib2f"
-
--- glVertexAttrib2fARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2fvARB'. This command is an alias for 'glVertexAttrib2f'.
-glVertexAttrib2fARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m ()
-glVertexAttrib2fARB v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttrib2fARB v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2fARB #-}
-ptr_glVertexAttrib2fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib2fARB = unsafePerformIO $ getCommand "glVertexAttrib2fARB"
-
--- glVertexAttrib2fNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2fvNV'. This command is an alias for 'glVertexAttrib2f'.
-glVertexAttrib2fNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m ()
-glVertexAttrib2fNV v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttrib2fNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2fNV #-}
-ptr_glVertexAttrib2fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib2fNV = unsafePerformIO $ getCommand "glVertexAttrib2fNV"
-
--- glVertexAttrib2fv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib2fv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib2fv v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib2fv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2fv #-}
-ptr_glVertexAttrib2fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib2fv = unsafePerformIO $ getCommand "glVertexAttrib2fv"
-
--- glVertexAttrib2fvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2fv'.
-glVertexAttrib2fvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib2fvARB v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib2fvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2fvARB #-}
-ptr_glVertexAttrib2fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib2fvARB = unsafePerformIO $ getCommand "glVertexAttrib2fvARB"
-
--- glVertexAttrib2fvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2fv'.
-glVertexAttrib2fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib2fvNV v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib2fvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2fvNV #-}
-ptr_glVertexAttrib2fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib2fvNV = unsafePerformIO $ getCommand "glVertexAttrib2fvNV"
-
--- glVertexAttrib2hNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2hvNV'.
-glVertexAttrib2hNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> m ()
-glVertexAttrib2hNV v1 v2 v3 = liftIO $ dyn849 ptr_glVertexAttrib2hNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2hNV #-}
-ptr_glVertexAttrib2hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertexAttrib2hNV = unsafePerformIO $ getCommand "glVertexAttrib2hNV"
-
--- glVertexAttrib2hvNV ---------------------------------------------------------
-
-glVertexAttrib2hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttrib2hvNV v1 v2 = liftIO $ dyn847 ptr_glVertexAttrib2hvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2hvNV #-}
-ptr_glVertexAttrib2hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttrib2hvNV = unsafePerformIO $ getCommand "glVertexAttrib2hvNV"
-
--- glVertexAttrib2s ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2sv'.
-glVertexAttrib2s
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> m ()
-glVertexAttrib2s v1 v2 v3 = liftIO $ dyn850 ptr_glVertexAttrib2s v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2s #-}
-ptr_glVertexAttrib2s :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib2s = unsafePerformIO $ getCommand "glVertexAttrib2s"
-
--- glVertexAttrib2sARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2svARB'. This command is an alias for 'glVertexAttrib2s'.
-glVertexAttrib2sARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> m ()
-glVertexAttrib2sARB v1 v2 v3 = liftIO $ dyn850 ptr_glVertexAttrib2sARB v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2sARB #-}
-ptr_glVertexAttrib2sARB :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib2sARB = unsafePerformIO $ getCommand "glVertexAttrib2sARB"
-
--- glVertexAttrib2sNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2svNV'. This command is an alias for 'glVertexAttrib2s'.
-glVertexAttrib2sNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> m ()
-glVertexAttrib2sNV v1 v2 v3 = liftIO $ dyn850 ptr_glVertexAttrib2sNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2sNV #-}
-ptr_glVertexAttrib2sNV :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib2sNV = unsafePerformIO $ getCommand "glVertexAttrib2sNV"
-
--- glVertexAttrib2sv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib2sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib2sv v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib2sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2sv #-}
-ptr_glVertexAttrib2sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib2sv = unsafePerformIO $ getCommand "glVertexAttrib2sv"
-
--- glVertexAttrib2svARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2sv'.
-glVertexAttrib2svARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib2svARB v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib2svARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2svARB #-}
-ptr_glVertexAttrib2svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib2svARB = unsafePerformIO $ getCommand "glVertexAttrib2svARB"
-
--- glVertexAttrib2svNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib2sv'.
-glVertexAttrib2svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib2svNV v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib2svNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2svNV #-}
-ptr_glVertexAttrib2svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib2svNV = unsafePerformIO $ getCommand "glVertexAttrib2svNV"
-
--- glVertexAttrib3d ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3dv'.
-glVertexAttrib3d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexAttrib3d v1 v2 v3 v4 = liftIO $ dyn851 ptr_glVertexAttrib3d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3d #-}
-ptr_glVertexAttrib3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib3d = unsafePerformIO $ getCommand "glVertexAttrib3d"
-
--- glVertexAttrib3dARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3dvARB'. This command is an alias for 'glVertexAttrib3d'.
-glVertexAttrib3dARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexAttrib3dARB v1 v2 v3 v4 = liftIO $ dyn851 ptr_glVertexAttrib3dARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3dARB #-}
-ptr_glVertexAttrib3dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib3dARB = unsafePerformIO $ getCommand "glVertexAttrib3dARB"
-
--- glVertexAttrib3dNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3dvNV'. This command is an alias for 'glVertexAttrib3d'.
-glVertexAttrib3dNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexAttrib3dNV v1 v2 v3 v4 = liftIO $ dyn851 ptr_glVertexAttrib3dNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3dNV #-}
-ptr_glVertexAttrib3dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib3dNV = unsafePerformIO $ getCommand "glVertexAttrib3dNV"
-
--- glVertexAttrib3dv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib3dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib3dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib3dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3dv #-}
-ptr_glVertexAttrib3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib3dv = unsafePerformIO $ getCommand "glVertexAttrib3dv"
-
--- glVertexAttrib3dvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3dv'.
-glVertexAttrib3dvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib3dvARB v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib3dvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3dvARB #-}
-ptr_glVertexAttrib3dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib3dvARB = unsafePerformIO $ getCommand "glVertexAttrib3dvARB"
-
--- glVertexAttrib3dvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3dv'.
-glVertexAttrib3dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib3dvNV v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib3dvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3dvNV #-}
-ptr_glVertexAttrib3dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib3dvNV = unsafePerformIO $ getCommand "glVertexAttrib3dvNV"
-
--- glVertexAttrib3f ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3fv'.
-glVertexAttrib3f
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glVertexAttrib3f v1 v2 v3 v4 = liftIO $ dyn695 ptr_glVertexAttrib3f v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3f #-}
-ptr_glVertexAttrib3f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib3f = unsafePerformIO $ getCommand "glVertexAttrib3f"
-
--- glVertexAttrib3fARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3fvARB'. This command is an alias for 'glVertexAttrib3f'.
-glVertexAttrib3fARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glVertexAttrib3fARB v1 v2 v3 v4 = liftIO $ dyn695 ptr_glVertexAttrib3fARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3fARB #-}
-ptr_glVertexAttrib3fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib3fARB = unsafePerformIO $ getCommand "glVertexAttrib3fARB"
-
--- glVertexAttrib3fNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3fvNV'. This command is an alias for 'glVertexAttrib3f'.
-glVertexAttrib3fNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glVertexAttrib3fNV v1 v2 v3 v4 = liftIO $ dyn695 ptr_glVertexAttrib3fNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3fNV #-}
-ptr_glVertexAttrib3fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib3fNV = unsafePerformIO $ getCommand "glVertexAttrib3fNV"
-
--- glVertexAttrib3fv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib3fv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib3fv v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib3fv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3fv #-}
-ptr_glVertexAttrib3fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib3fv = unsafePerformIO $ getCommand "glVertexAttrib3fv"
-
--- glVertexAttrib3fvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3fv'.
-glVertexAttrib3fvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib3fvARB v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib3fvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3fvARB #-}
-ptr_glVertexAttrib3fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib3fvARB = unsafePerformIO $ getCommand "glVertexAttrib3fvARB"
-
--- glVertexAttrib3fvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3fv'.
-glVertexAttrib3fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib3fvNV v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib3fvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3fvNV #-}
-ptr_glVertexAttrib3fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib3fvNV = unsafePerformIO $ getCommand "glVertexAttrib3fvNV"
-
--- glVertexAttrib3hNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3hvNV'.
-glVertexAttrib3hNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
-  -> m ()
-glVertexAttrib3hNV v1 v2 v3 v4 = liftIO $ dyn852 ptr_glVertexAttrib3hNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3hNV #-}
-ptr_glVertexAttrib3hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertexAttrib3hNV = unsafePerformIO $ getCommand "glVertexAttrib3hNV"
-
--- glVertexAttrib3hvNV ---------------------------------------------------------
-
-glVertexAttrib3hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttrib3hvNV v1 v2 = liftIO $ dyn847 ptr_glVertexAttrib3hvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3hvNV #-}
-ptr_glVertexAttrib3hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttrib3hvNV = unsafePerformIO $ getCommand "glVertexAttrib3hvNV"
-
--- glVertexAttrib3s ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3sv'.
-glVertexAttrib3s
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> m ()
-glVertexAttrib3s v1 v2 v3 v4 = liftIO $ dyn853 ptr_glVertexAttrib3s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3s #-}
-ptr_glVertexAttrib3s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib3s = unsafePerformIO $ getCommand "glVertexAttrib3s"
-
--- glVertexAttrib3sARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3svARB'. This command is an alias for 'glVertexAttrib3s'.
-glVertexAttrib3sARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> m ()
-glVertexAttrib3sARB v1 v2 v3 v4 = liftIO $ dyn853 ptr_glVertexAttrib3sARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3sARB #-}
-ptr_glVertexAttrib3sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib3sARB = unsafePerformIO $ getCommand "glVertexAttrib3sARB"
-
--- glVertexAttrib3sNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib3svNV'. This command is an alias for 'glVertexAttrib3s'.
-glVertexAttrib3sNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> m ()
-glVertexAttrib3sNV v1 v2 v3 v4 = liftIO $ dyn853 ptr_glVertexAttrib3sNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttrib3sNV #-}
-ptr_glVertexAttrib3sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib3sNV = unsafePerformIO $ getCommand "glVertexAttrib3sNV"
-
--- glVertexAttrib3sv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib3sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib3sv v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib3sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3sv #-}
-ptr_glVertexAttrib3sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib3sv = unsafePerformIO $ getCommand "glVertexAttrib3sv"
-
--- glVertexAttrib3svARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3sv'.
-glVertexAttrib3svARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib3svARB v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib3svARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3svARB #-}
-ptr_glVertexAttrib3svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib3svARB = unsafePerformIO $ getCommand "glVertexAttrib3svARB"
-
--- glVertexAttrib3svNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib3sv'.
-glVertexAttrib3svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib3svNV v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib3svNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib3svNV #-}
-ptr_glVertexAttrib3svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib3svNV = unsafePerformIO $ getCommand "glVertexAttrib3svNV"
-
--- glVertexAttrib4Nbv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nbv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttrib4Nbv v1 v2 = liftIO $ dyn830 ptr_glVertexAttrib4Nbv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Nbv #-}
-ptr_glVertexAttrib4Nbv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttrib4Nbv = unsafePerformIO $ getCommand "glVertexAttrib4Nbv"
-
--- glVertexAttrib4NbvARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nbv'.
-glVertexAttrib4NbvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttrib4NbvARB v1 v2 = liftIO $ dyn830 ptr_glVertexAttrib4NbvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NbvARB #-}
-ptr_glVertexAttrib4NbvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttrib4NbvARB = unsafePerformIO $ getCommand "glVertexAttrib4NbvARB"
-
--- glVertexAttrib4Niv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Niv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttrib4Niv v1 v2 = liftIO $ dyn704 ptr_glVertexAttrib4Niv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Niv #-}
-ptr_glVertexAttrib4Niv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttrib4Niv = unsafePerformIO $ getCommand "glVertexAttrib4Niv"
-
--- glVertexAttrib4NivARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Niv'.
-glVertexAttrib4NivARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttrib4NivARB v1 v2 = liftIO $ dyn704 ptr_glVertexAttrib4NivARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NivARB #-}
-ptr_glVertexAttrib4NivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttrib4NivARB = unsafePerformIO $ getCommand "glVertexAttrib4NivARB"
-
--- glVertexAttrib4Nsv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nsv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib4Nsv v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib4Nsv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Nsv #-}
-ptr_glVertexAttrib4Nsv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib4Nsv = unsafePerformIO $ getCommand "glVertexAttrib4Nsv"
-
--- glVertexAttrib4NsvARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nsv'.
-glVertexAttrib4NsvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib4NsvARB v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib4NsvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NsvARB #-}
-ptr_glVertexAttrib4NsvARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib4NsvARB = unsafePerformIO $ getCommand "glVertexAttrib4NsvARB"
-
--- glVertexAttrib4Nub ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nub
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLubyte -- ^ @x@.
-  -> GLubyte -- ^ @y@.
-  -> GLubyte -- ^ @z@.
-  -> GLubyte -- ^ @w@.
-  -> m ()
-glVertexAttrib4Nub v1 v2 v3 v4 v5 = liftIO $ dyn854 ptr_glVertexAttrib4Nub v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4Nub #-}
-ptr_glVertexAttrib4Nub :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
-ptr_glVertexAttrib4Nub = unsafePerformIO $ getCommand "glVertexAttrib4Nub"
-
--- glVertexAttrib4NubARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nub'.
-glVertexAttrib4NubARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLubyte -- ^ @x@.
-  -> GLubyte -- ^ @y@.
-  -> GLubyte -- ^ @z@.
-  -> GLubyte -- ^ @w@.
-  -> m ()
-glVertexAttrib4NubARB v1 v2 v3 v4 v5 = liftIO $ dyn854 ptr_glVertexAttrib4NubARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4NubARB #-}
-ptr_glVertexAttrib4NubARB :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
-ptr_glVertexAttrib4NubARB = unsafePerformIO $ getCommand "glVertexAttrib4NubARB"
-
--- glVertexAttrib4Nubv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nubv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttrib4Nubv v1 v2 = liftIO $ dyn378 ptr_glVertexAttrib4Nubv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Nubv #-}
-ptr_glVertexAttrib4Nubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttrib4Nubv = unsafePerformIO $ getCommand "glVertexAttrib4Nubv"
-
--- glVertexAttrib4NubvARB ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nubv'.
-glVertexAttrib4NubvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttrib4NubvARB v1 v2 = liftIO $ dyn378 ptr_glVertexAttrib4NubvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NubvARB #-}
-ptr_glVertexAttrib4NubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttrib4NubvARB = unsafePerformIO $ getCommand "glVertexAttrib4NubvARB"
-
--- glVertexAttrib4Nuiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nuiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttrib4Nuiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttrib4Nuiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Nuiv #-}
-ptr_glVertexAttrib4Nuiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttrib4Nuiv = unsafePerformIO $ getCommand "glVertexAttrib4Nuiv"
-
--- glVertexAttrib4NuivARB ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nuiv'.
-glVertexAttrib4NuivARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttrib4NuivARB v1 v2 = liftIO $ dyn194 ptr_glVertexAttrib4NuivARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NuivARB #-}
-ptr_glVertexAttrib4NuivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttrib4NuivARB = unsafePerformIO $ getCommand "glVertexAttrib4NuivARB"
-
--- glVertexAttrib4Nusv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4Nusv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttrib4Nusv v1 v2 = liftIO $ dyn833 ptr_glVertexAttrib4Nusv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4Nusv #-}
-ptr_glVertexAttrib4Nusv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttrib4Nusv = unsafePerformIO $ getCommand "glVertexAttrib4Nusv"
-
--- glVertexAttrib4NusvARB ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nusv'.
-glVertexAttrib4NusvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttrib4NusvARB v1 v2 = liftIO $ dyn833 ptr_glVertexAttrib4NusvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4NusvARB #-}
-ptr_glVertexAttrib4NusvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttrib4NusvARB = unsafePerformIO $ getCommand "glVertexAttrib4NusvARB"
-
--- glVertexAttrib4bv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4bv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttrib4bv v1 v2 = liftIO $ dyn830 ptr_glVertexAttrib4bv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4bv #-}
-ptr_glVertexAttrib4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttrib4bv = unsafePerformIO $ getCommand "glVertexAttrib4bv"
-
--- glVertexAttrib4bvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4bv'.
-glVertexAttrib4bvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttrib4bvARB v1 v2 = liftIO $ dyn830 ptr_glVertexAttrib4bvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4bvARB #-}
-ptr_glVertexAttrib4bvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttrib4bvARB = unsafePerformIO $ getCommand "glVertexAttrib4bvARB"
-
--- glVertexAttrib4d ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4dv'.
-glVertexAttrib4d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexAttrib4d v1 v2 v3 v4 v5 = liftIO $ dyn855 ptr_glVertexAttrib4d v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4d #-}
-ptr_glVertexAttrib4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib4d = unsafePerformIO $ getCommand "glVertexAttrib4d"
-
--- glVertexAttrib4dARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4dvARB'. This command is an alias for 'glVertexAttrib4d'.
-glVertexAttrib4dARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexAttrib4dARB v1 v2 v3 v4 v5 = liftIO $ dyn855 ptr_glVertexAttrib4dARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4dARB #-}
-ptr_glVertexAttrib4dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib4dARB = unsafePerformIO $ getCommand "glVertexAttrib4dARB"
-
--- glVertexAttrib4dNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4dvNV'. This command is an alias for 'glVertexAttrib4d'.
-glVertexAttrib4dNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexAttrib4dNV v1 v2 v3 v4 v5 = liftIO $ dyn855 ptr_glVertexAttrib4dNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4dNV #-}
-ptr_glVertexAttrib4dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib4dNV = unsafePerformIO $ getCommand "glVertexAttrib4dNV"
-
--- glVertexAttrib4dv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib4dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib4dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4dv #-}
-ptr_glVertexAttrib4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib4dv = unsafePerformIO $ getCommand "glVertexAttrib4dv"
-
--- glVertexAttrib4dvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4dv'.
-glVertexAttrib4dvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib4dvARB v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib4dvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4dvARB #-}
-ptr_glVertexAttrib4dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib4dvARB = unsafePerformIO $ getCommand "glVertexAttrib4dvARB"
-
--- glVertexAttrib4dvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4dv'.
-glVertexAttrib4dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttrib4dvNV v1 v2 = liftIO $ dyn831 ptr_glVertexAttrib4dvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4dvNV #-}
-ptr_glVertexAttrib4dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttrib4dvNV = unsafePerformIO $ getCommand "glVertexAttrib4dvNV"
-
--- glVertexAttrib4f ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4fv'.
-glVertexAttrib4f
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glVertexAttrib4f v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glVertexAttrib4f v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4f #-}
-ptr_glVertexAttrib4f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib4f = unsafePerformIO $ getCommand "glVertexAttrib4f"
-
--- glVertexAttrib4fARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4fvARB'. This command is an alias for 'glVertexAttrib4f'.
-glVertexAttrib4fARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glVertexAttrib4fARB v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glVertexAttrib4fARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4fARB #-}
-ptr_glVertexAttrib4fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib4fARB = unsafePerformIO $ getCommand "glVertexAttrib4fARB"
-
--- glVertexAttrib4fNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4fvNV'. This command is an alias for 'glVertexAttrib4f'.
-glVertexAttrib4fNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glVertexAttrib4fNV v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glVertexAttrib4fNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4fNV #-}
-ptr_glVertexAttrib4fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib4fNV = unsafePerformIO $ getCommand "glVertexAttrib4fNV"
-
--- glVertexAttrib4fv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4fv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib4fv v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib4fv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4fv #-}
-ptr_glVertexAttrib4fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib4fv = unsafePerformIO $ getCommand "glVertexAttrib4fv"
-
--- glVertexAttrib4fvARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4fv'.
-glVertexAttrib4fvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib4fvARB v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib4fvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4fvARB #-}
-ptr_glVertexAttrib4fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib4fvARB = unsafePerformIO $ getCommand "glVertexAttrib4fvARB"
-
--- glVertexAttrib4fvNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4fv'.
-glVertexAttrib4fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib4fvNV v1 v2 = liftIO $ dyn379 ptr_glVertexAttrib4fvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4fvNV #-}
-ptr_glVertexAttrib4fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib4fvNV = unsafePerformIO $ getCommand "glVertexAttrib4fvNV"
-
--- glVertexAttrib4hNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4hvNV'.
-glVertexAttrib4hNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
-  -> m ()
-glVertexAttrib4hNV v1 v2 v3 v4 v5 = liftIO $ dyn857 ptr_glVertexAttrib4hNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4hNV #-}
-ptr_glVertexAttrib4hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glVertexAttrib4hNV = unsafePerformIO $ getCommand "glVertexAttrib4hNV"
-
--- glVertexAttrib4hvNV ---------------------------------------------------------
-
-glVertexAttrib4hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttrib4hvNV v1 v2 = liftIO $ dyn847 ptr_glVertexAttrib4hvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4hvNV #-}
-ptr_glVertexAttrib4hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttrib4hvNV = unsafePerformIO $ getCommand "glVertexAttrib4hvNV"
-
--- glVertexAttrib4iv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttrib4iv v1 v2 = liftIO $ dyn704 ptr_glVertexAttrib4iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4iv #-}
-ptr_glVertexAttrib4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttrib4iv = unsafePerformIO $ getCommand "glVertexAttrib4iv"
-
--- glVertexAttrib4ivARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4iv'.
-glVertexAttrib4ivARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttrib4ivARB v1 v2 = liftIO $ dyn704 ptr_glVertexAttrib4ivARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4ivARB #-}
-ptr_glVertexAttrib4ivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttrib4ivARB = unsafePerformIO $ getCommand "glVertexAttrib4ivARB"
-
--- glVertexAttrib4s ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4sv'.
-glVertexAttrib4s
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> GLshort -- ^ @w@.
-  -> m ()
-glVertexAttrib4s v1 v2 v3 v4 v5 = liftIO $ dyn858 ptr_glVertexAttrib4s v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4s #-}
-ptr_glVertexAttrib4s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib4s = unsafePerformIO $ getCommand "glVertexAttrib4s"
-
--- glVertexAttrib4sARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4svARB'. This command is an alias for 'glVertexAttrib4s'.
-glVertexAttrib4sARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> GLshort -- ^ @w@.
-  -> m ()
-glVertexAttrib4sARB v1 v2 v3 v4 v5 = liftIO $ dyn858 ptr_glVertexAttrib4sARB v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4sARB #-}
-ptr_glVertexAttrib4sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib4sARB = unsafePerformIO $ getCommand "glVertexAttrib4sARB"
-
--- glVertexAttrib4sNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4svNV'. This command is an alias for 'glVertexAttrib4s'.
-glVertexAttrib4sNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> GLshort -- ^ @w@.
-  -> m ()
-glVertexAttrib4sNV v1 v2 v3 v4 v5 = liftIO $ dyn858 ptr_glVertexAttrib4sNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4sNV #-}
-ptr_glVertexAttrib4sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexAttrib4sNV = unsafePerformIO $ getCommand "glVertexAttrib4sNV"
-
--- glVertexAttrib4sv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib4sv v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib4sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4sv #-}
-ptr_glVertexAttrib4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib4sv = unsafePerformIO $ getCommand "glVertexAttrib4sv"
-
--- glVertexAttrib4svARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4sv'.
-glVertexAttrib4svARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib4svARB v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib4svARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4svARB #-}
-ptr_glVertexAttrib4svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib4svARB = unsafePerformIO $ getCommand "glVertexAttrib4svARB"
-
--- glVertexAttrib4svNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4sv'.
-glVertexAttrib4svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttrib4svNV v1 v2 = liftIO $ dyn832 ptr_glVertexAttrib4svNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4svNV #-}
-ptr_glVertexAttrib4svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib4svNV = unsafePerformIO $ getCommand "glVertexAttrib4svNV"
-
--- glVertexAttrib4ubNV ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib4ubvNV'. This command is an alias for 'glVertexAttrib4Nub'.
-glVertexAttrib4ubNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLubyte -- ^ @x@ of type @ColorUB@.
-  -> GLubyte -- ^ @y@ of type @ColorUB@.
-  -> GLubyte -- ^ @z@ of type @ColorUB@.
-  -> GLubyte -- ^ @w@ of type @ColorUB@.
-  -> m ()
-glVertexAttrib4ubNV v1 v2 v3 v4 v5 = liftIO $ dyn854 ptr_glVertexAttrib4ubNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttrib4ubNV #-}
-ptr_glVertexAttrib4ubNV :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
-ptr_glVertexAttrib4ubNV = unsafePerformIO $ getCommand "glVertexAttrib4ubNV"
-
--- glVertexAttrib4ubv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4ubv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttrib4ubv v1 v2 = liftIO $ dyn378 ptr_glVertexAttrib4ubv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4ubv #-}
-ptr_glVertexAttrib4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttrib4ubv = unsafePerformIO $ getCommand "glVertexAttrib4ubv"
-
--- glVertexAttrib4ubvARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4ubv'.
-glVertexAttrib4ubvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttrib4ubvARB v1 v2 = liftIO $ dyn378 ptr_glVertexAttrib4ubvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4ubvARB #-}
-ptr_glVertexAttrib4ubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttrib4ubvARB = unsafePerformIO $ getCommand "glVertexAttrib4ubvARB"
-
--- glVertexAttrib4ubvNV --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4Nubv'.
-glVertexAttrib4ubvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @ColorUB@.
-  -> m ()
-glVertexAttrib4ubvNV v1 v2 = liftIO $ dyn378 ptr_glVertexAttrib4ubvNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4ubvNV #-}
-ptr_glVertexAttrib4ubvNV :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttrib4ubvNV = unsafePerformIO $ getCommand "glVertexAttrib4ubvNV"
+  glVertex3bvOES,
+  glVertex3d,
+  glVertex3dv,
+  glVertex3f,
+  glVertex3fv,
+  glVertex3hNV,
+  glVertex3hvNV,
+  glVertex3i,
+  glVertex3iv,
+  glVertex3s,
+  glVertex3sv,
+  glVertex3xOES,
+  glVertex3xvOES,
+  glVertex4bOES,
+  glVertex4bvOES,
+  glVertex4d,
+  glVertex4dv,
+  glVertex4f,
+  glVertex4fv,
+  glVertex4hNV,
+  glVertex4hvNV,
+  glVertex4i,
+  glVertex4iv,
+  glVertex4s,
+  glVertex4sv,
+  glVertex4xOES,
+  glVertex4xvOES,
+  glVertexArrayAttribBinding,
+  glVertexArrayAttribFormat,
+  glVertexArrayAttribIFormat,
+  glVertexArrayAttribLFormat,
+  glVertexArrayBindVertexBufferEXT,
+  glVertexArrayBindingDivisor,
+  glVertexArrayColorOffsetEXT,
+  glVertexArrayEdgeFlagOffsetEXT,
+  glVertexArrayElementBuffer,
+  glVertexArrayFogCoordOffsetEXT,
+  glVertexArrayIndexOffsetEXT,
+  glVertexArrayMultiTexCoordOffsetEXT,
+  glVertexArrayNormalOffsetEXT,
+  glVertexArrayParameteriAPPLE,
+  glVertexArrayRangeAPPLE,
+  glVertexArrayRangeNV,
+  glVertexArraySecondaryColorOffsetEXT,
+  glVertexArrayTexCoordOffsetEXT,
+  glVertexArrayVertexAttribBindingEXT,
+  glVertexArrayVertexAttribDivisorEXT,
+  glVertexArrayVertexAttribFormatEXT,
+  glVertexArrayVertexAttribIFormatEXT,
+  glVertexArrayVertexAttribIOffsetEXT,
+  glVertexArrayVertexAttribLFormatEXT,
+  glVertexArrayVertexAttribLOffsetEXT,
+  glVertexArrayVertexAttribOffsetEXT,
+  glVertexArrayVertexBindingDivisorEXT,
+  glVertexArrayVertexBuffer,
+  glVertexArrayVertexBuffers,
+  glVertexArrayVertexOffsetEXT,
+  glVertexAttrib1d,
+  glVertexAttrib1dARB,
+  glVertexAttrib1dNV,
+  glVertexAttrib1dv,
+  glVertexAttrib1dvARB,
+  glVertexAttrib1dvNV,
+  glVertexAttrib1f,
+  glVertexAttrib1fARB,
+  glVertexAttrib1fNV,
+  glVertexAttrib1fv,
+  glVertexAttrib1fvARB,
+  glVertexAttrib1fvNV,
+  glVertexAttrib1hNV,
+  glVertexAttrib1hvNV,
+  glVertexAttrib1s,
+  glVertexAttrib1sARB,
+  glVertexAttrib1sNV,
+  glVertexAttrib1sv,
+  glVertexAttrib1svARB,
+  glVertexAttrib1svNV,
+  glVertexAttrib2d,
+  glVertexAttrib2dARB,
+  glVertexAttrib2dNV,
+  glVertexAttrib2dv,
+  glVertexAttrib2dvARB,
+  glVertexAttrib2dvNV,
+  glVertexAttrib2f,
+  glVertexAttrib2fARB,
+  glVertexAttrib2fNV,
+  glVertexAttrib2fv,
+  glVertexAttrib2fvARB,
+  glVertexAttrib2fvNV,
+  glVertexAttrib2hNV,
+  glVertexAttrib2hvNV,
+  glVertexAttrib2s,
+  glVertexAttrib2sARB,
+  glVertexAttrib2sNV,
+  glVertexAttrib2sv,
+  glVertexAttrib2svARB,
+  glVertexAttrib2svNV,
+  glVertexAttrib3d,
+  glVertexAttrib3dARB,
+  glVertexAttrib3dNV
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glVertex3bvOES --------------------------------------------------------------
+
+glVertex3bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
+  -> m ()
+glVertex3bvOES v1 = liftIO $ dyn38 ptr_glVertex3bvOES v1
+
+{-# NOINLINE ptr_glVertex3bvOES #-}
+ptr_glVertex3bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glVertex3bvOES = unsafePerformIO $ getCommand "glVertex3bvOES"
+
+-- glVertex3d ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3dv'.
+glVertex3d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> m ()
+glVertex3d v1 v2 v3 = liftIO $ dyn39 ptr_glVertex3d v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3d #-}
+ptr_glVertex3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertex3d = unsafePerformIO $ getCommand "glVertex3d"
+
+-- glVertex3dv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glVertex3dv v1 = liftIO $ dyn40 ptr_glVertex3dv v1
+
+{-# NOINLINE ptr_glVertex3dv #-}
+ptr_glVertex3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glVertex3dv = unsafePerformIO $ getCommand "glVertex3dv"
+
+-- glVertex3f ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3fv'.
+glVertex3f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> m ()
+glVertex3f v1 v2 v3 = liftIO $ dyn41 ptr_glVertex3f v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3f #-}
+ptr_glVertex3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertex3f = unsafePerformIO $ getCommand "glVertex3f"
+
+-- glVertex3fv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glVertex3fv v1 = liftIO $ dyn42 ptr_glVertex3fv v1
+
+{-# NOINLINE ptr_glVertex3fv #-}
+ptr_glVertex3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glVertex3fv = unsafePerformIO $ getCommand "glVertex3fv"
+
+-- glVertex3hNV ----------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertex3hvNV'.
+glVertex3hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
+  -> m ()
+glVertex3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glVertex3hNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3hNV #-}
+ptr_glVertex3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertex3hNV = unsafePerformIO $ getCommand "glVertex3hNV"
+
+-- glVertex3hvNV ---------------------------------------------------------------
+
+glVertex3hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glVertex3hvNV v1 = liftIO $ dyn102 ptr_glVertex3hvNV v1
+
+{-# NOINLINE ptr_glVertex3hvNV #-}
+ptr_glVertex3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glVertex3hvNV = unsafePerformIO $ getCommand "glVertex3hvNV"
+
+-- glVertex3i ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3iv'.
+glVertex3i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> m ()
+glVertex3i v1 v2 v3 = liftIO $ dyn43 ptr_glVertex3i v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3i #-}
+ptr_glVertex3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glVertex3i = unsafePerformIO $ getCommand "glVertex3i"
+
+-- glVertex3iv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glVertex3iv v1 = liftIO $ dyn44 ptr_glVertex3iv v1
+
+{-# NOINLINE ptr_glVertex3iv #-}
+ptr_glVertex3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glVertex3iv = unsafePerformIO $ getCommand "glVertex3iv"
+
+-- glVertex3s ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex3sv'.
+glVertex3s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glVertex3s v1 v2 v3 = liftIO $ dyn45 ptr_glVertex3s v1 v2 v3
+
+{-# NOINLINE ptr_glVertex3s #-}
+ptr_glVertex3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertex3s = unsafePerformIO $ getCommand "glVertex3s"
+
+-- glVertex3sv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glVertex3sv v1 = liftIO $ dyn46 ptr_glVertex3sv v1
+
+{-# NOINLINE ptr_glVertex3sv #-}
+ptr_glVertex3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glVertex3sv = unsafePerformIO $ getCommand "glVertex3sv"
+
+-- glVertex3xOES ---------------------------------------------------------------
+
+glVertex3xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> m ()
+glVertex3xOES v1 v2 = liftIO $ dyn227 ptr_glVertex3xOES v1 v2
+
+{-# NOINLINE ptr_glVertex3xOES #-}
+ptr_glVertex3xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glVertex3xOES = unsafePerformIO $ getCommand "glVertex3xOES"
+
+-- glVertex3xvOES --------------------------------------------------------------
+
+glVertex3xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
+  -> m ()
+glVertex3xvOES v1 = liftIO $ dyn110 ptr_glVertex3xvOES v1
+
+{-# NOINLINE ptr_glVertex3xvOES #-}
+ptr_glVertex3xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glVertex3xvOES = unsafePerformIO $ getCommand "glVertex3xvOES"
+
+-- glVertex4bOES ---------------------------------------------------------------
+
+glVertex4bOES
+  :: MonadIO m
+  => GLbyte -- ^ @x@.
+  -> GLbyte -- ^ @y@.
+  -> GLbyte -- ^ @z@.
+  -> GLbyte -- ^ @w@.
+  -> m ()
+glVertex4bOES v1 v2 v3 v4 = liftIO $ dyn111 ptr_glVertex4bOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4bOES #-}
+ptr_glVertex4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
+ptr_glVertex4bOES = unsafePerformIO $ getCommand "glVertex4bOES"
+
+-- glVertex4bvOES --------------------------------------------------------------
+
+glVertex4bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertex4bvOES v1 = liftIO $ dyn38 ptr_glVertex4bvOES v1
+
+{-# NOINLINE ptr_glVertex4bvOES #-}
+ptr_glVertex4bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glVertex4bvOES = unsafePerformIO $ getCommand "glVertex4bvOES"
+
+-- glVertex4d ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4dv'.
+glVertex4d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> GLdouble -- ^ @w@ of type @CoordD@.
+  -> m ()
+glVertex4d v1 v2 v3 v4 = liftIO $ dyn112 ptr_glVertex4d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4d #-}
+ptr_glVertex4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertex4d = unsafePerformIO $ getCommand "glVertex4d"
+
+-- glVertex4dv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex4dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glVertex4dv v1 = liftIO $ dyn40 ptr_glVertex4dv v1
+
+{-# NOINLINE ptr_glVertex4dv #-}
+ptr_glVertex4dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glVertex4dv = unsafePerformIO $ getCommand "glVertex4dv"
+
+-- glVertex4f ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4fv'.
+glVertex4f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> GLfloat -- ^ @w@ of type @CoordF@.
+  -> m ()
+glVertex4f v1 v2 v3 v4 = liftIO $ dyn50 ptr_glVertex4f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4f #-}
+ptr_glVertex4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertex4f = unsafePerformIO $ getCommand "glVertex4f"
+
+-- glVertex4fv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex4fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glVertex4fv v1 = liftIO $ dyn42 ptr_glVertex4fv v1
+
+{-# NOINLINE ptr_glVertex4fv #-}
+ptr_glVertex4fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glVertex4fv = unsafePerformIO $ getCommand "glVertex4fv"
+
+-- glVertex4hNV ----------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertex4hvNV'.
+glVertex4hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
+  -> m ()
+glVertex4hNV v1 v2 v3 v4 = liftIO $ dyn115 ptr_glVertex4hNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4hNV #-}
+ptr_glVertex4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertex4hNV = unsafePerformIO $ getCommand "glVertex4hNV"
+
+-- glVertex4hvNV ---------------------------------------------------------------
+
+glVertex4hvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
+  -> m ()
+glVertex4hvNV v1 = liftIO $ dyn102 ptr_glVertex4hvNV v1
+
+{-# NOINLINE ptr_glVertex4hvNV #-}
+ptr_glVertex4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glVertex4hvNV = unsafePerformIO $ getCommand "glVertex4hvNV"
+
+-- glVertex4i ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4iv'.
+glVertex4i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> GLint -- ^ @w@ of type @CoordI@.
+  -> m ()
+glVertex4i v1 v2 v3 v4 = liftIO $ dyn79 ptr_glVertex4i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4i #-}
+ptr_glVertex4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertex4i = unsafePerformIO $ getCommand "glVertex4i"
+
+-- glVertex4iv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex4iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glVertex4iv v1 = liftIO $ dyn44 ptr_glVertex4iv v1
+
+{-# NOINLINE ptr_glVertex4iv #-}
+ptr_glVertex4iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glVertex4iv = unsafePerformIO $ getCommand "glVertex4iv"
+
+-- glVertex4s ------------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex4sv'.
+glVertex4s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> GLshort -- ^ @w@ of type @CoordS@.
+  -> m ()
+glVertex4s v1 v2 v3 v4 = liftIO $ dyn116 ptr_glVertex4s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertex4s #-}
+ptr_glVertex4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertex4s = unsafePerformIO $ getCommand "glVertex4s"
+
+-- glVertex4sv -----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>.
+glVertex4sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glVertex4sv v1 = liftIO $ dyn46 ptr_glVertex4sv v1
+
+{-# NOINLINE ptr_glVertex4sv #-}
+ptr_glVertex4sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glVertex4sv = unsafePerformIO $ getCommand "glVertex4sv"
+
+-- glVertex4xOES ---------------------------------------------------------------
+
+glVertex4xOES
+  :: MonadIO m
+  => GLfixed -- ^ @x@.
+  -> GLfixed -- ^ @y@.
+  -> GLfixed -- ^ @z@.
+  -> m ()
+glVertex4xOES v1 v2 v3 = liftIO $ dyn109 ptr_glVertex4xOES v1 v2 v3
+
+{-# NOINLINE ptr_glVertex4xOES #-}
+ptr_glVertex4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glVertex4xOES = unsafePerformIO $ getCommand "glVertex4xOES"
+
+-- glVertex4xvOES --------------------------------------------------------------
+
+glVertex4xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
+  -> m ()
+glVertex4xvOES v1 = liftIO $ dyn110 ptr_glVertex4xvOES v1
+
+{-# NOINLINE ptr_glVertex4xvOES #-}
+ptr_glVertex4xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glVertex4xvOES = unsafePerformIO $ getCommand "glVertex4xvOES"
+
+-- glVertexArrayAttribBinding --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>.
+glVertexArrayAttribBinding
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLuint -- ^ @bindingindex@.
+  -> m ()
+glVertexArrayAttribBinding v1 v2 v3 = liftIO $ dyn105 ptr_glVertexArrayAttribBinding v1 v2 v3
+
+{-# NOINLINE ptr_glVertexArrayAttribBinding #-}
+ptr_glVertexArrayAttribBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexArrayAttribBinding = unsafePerformIO $ getCommand "glVertexArrayAttribBinding"
+
+-- glVertexArrayAttribFormat ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexArrayAttribFormat
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayAttribFormat v1 v2 v3 v4 v5 v6 = liftIO $ dyn867 ptr_glVertexArrayAttribFormat v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayAttribFormat #-}
+ptr_glVertexArrayAttribFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexArrayAttribFormat = unsafePerformIO $ getCommand "glVertexArrayAttribFormat"
+
+-- glVertexArrayAttribIFormat --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexArrayAttribIFormat
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayAttribIFormat v1 v2 v3 v4 v5 = liftIO $ dyn868 ptr_glVertexArrayAttribIFormat v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayAttribIFormat #-}
+ptr_glVertexArrayAttribIFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexArrayAttribIFormat = unsafePerformIO $ getCommand "glVertexArrayAttribIFormat"
+
+-- glVertexArrayAttribLFormat --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexArrayAttribLFormat
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayAttribLFormat v1 v2 v3 v4 v5 = liftIO $ dyn868 ptr_glVertexArrayAttribLFormat v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayAttribLFormat #-}
+ptr_glVertexArrayAttribLFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexArrayAttribLFormat = unsafePerformIO $ getCommand "glVertexArrayAttribLFormat"
+
+-- glVertexArrayBindVertexBufferEXT --------------------------------------------
+
+glVertexArrayBindVertexBufferEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @bindingindex@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexArrayBindVertexBufferEXT v1 v2 v3 v4 v5 = liftIO $ dyn869 ptr_glVertexArrayBindVertexBufferEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayBindVertexBufferEXT #-}
+ptr_glVertexArrayBindVertexBufferEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
+ptr_glVertexArrayBindVertexBufferEXT = unsafePerformIO $ getCommand "glVertexArrayBindVertexBufferEXT"
+
+-- glVertexArrayBindingDivisor -------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>.
+glVertexArrayBindingDivisor
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @bindingindex@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexArrayBindingDivisor v1 v2 v3 = liftIO $ dyn105 ptr_glVertexArrayBindingDivisor v1 v2 v3
+
+{-# NOINLINE ptr_glVertexArrayBindingDivisor #-}
+ptr_glVertexArrayBindingDivisor :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexArrayBindingDivisor = unsafePerformIO $ getCommand "glVertexArrayBindingDivisor"
+
+-- glVertexArrayColorOffsetEXT -------------------------------------------------
+
+glVertexArrayColorOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayColorOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn870 ptr_glVertexArrayColorOffsetEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayColorOffsetEXT #-}
+ptr_glVertexArrayColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayColorOffsetEXT"
+
+-- glVertexArrayEdgeFlagOffsetEXT ----------------------------------------------
+
+glVertexArrayEdgeFlagOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayEdgeFlagOffsetEXT v1 v2 v3 v4 = liftIO $ dyn871 ptr_glVertexArrayEdgeFlagOffsetEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexArrayEdgeFlagOffsetEXT #-}
+ptr_glVertexArrayEdgeFlagOffsetEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayEdgeFlagOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayEdgeFlagOffsetEXT"
+
+-- glVertexArrayElementBuffer --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexArrayElementBuffer.xhtml OpenGL 4.x>.
+glVertexArrayElementBuffer
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> m ()
+glVertexArrayElementBuffer v1 v2 = liftIO $ dyn4 ptr_glVertexArrayElementBuffer v1 v2
+
+{-# NOINLINE ptr_glVertexArrayElementBuffer #-}
+ptr_glVertexArrayElementBuffer :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexArrayElementBuffer = unsafePerformIO $ getCommand "glVertexArrayElementBuffer"
+
+-- glVertexArrayFogCoordOffsetEXT ----------------------------------------------
+
+glVertexArrayFogCoordOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @type@ of type [FogCoordinatePointerType](Graphics-GL-Groups.html#FogCoordinatePointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayFogCoordOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn872 ptr_glVertexArrayFogCoordOffsetEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayFogCoordOffsetEXT #-}
+ptr_glVertexArrayFogCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayFogCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayFogCoordOffsetEXT"
+
+-- glVertexArrayIndexOffsetEXT -------------------------------------------------
+
+glVertexArrayIndexOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @type@ of type [IndexPointerType](Graphics-GL-Groups.html#IndexPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayIndexOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn872 ptr_glVertexArrayIndexOffsetEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayIndexOffsetEXT #-}
+ptr_glVertexArrayIndexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayIndexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayIndexOffsetEXT"
+
+-- glVertexArrayMultiTexCoordOffsetEXT -----------------------------------------
+
+glVertexArrayMultiTexCoordOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @texunit@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayMultiTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn873 ptr_glVertexArrayMultiTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glVertexArrayMultiTexCoordOffsetEXT #-}
+ptr_glVertexArrayMultiTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayMultiTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayMultiTexCoordOffsetEXT"
+
+-- glVertexArrayNormalOffsetEXT ------------------------------------------------
+
+glVertexArrayNormalOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLenum -- ^ @type@ of type [NormalPointerType](Graphics-GL-Groups.html#NormalPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayNormalOffsetEXT v1 v2 v3 v4 v5 = liftIO $ dyn872 ptr_glVertexArrayNormalOffsetEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayNormalOffsetEXT #-}
+ptr_glVertexArrayNormalOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayNormalOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayNormalOffsetEXT"
+
+-- glVertexArrayParameteriAPPLE ------------------------------------------------
+
+glVertexArrayParameteriAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @VertexArrayPNameAPPLE@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glVertexArrayParameteriAPPLE v1 v2 = liftIO $ dyn56 ptr_glVertexArrayParameteriAPPLE v1 v2
+
+{-# NOINLINE ptr_glVertexArrayParameteriAPPLE #-}
+ptr_glVertexArrayParameteriAPPLE :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glVertexArrayParameteriAPPLE = unsafePerformIO $ getCommand "glVertexArrayParameteriAPPLE"
+
+-- glVertexArrayRangeAPPLE -----------------------------------------------------
+
+glVertexArrayRangeAPPLE
+  :: MonadIO m
+  => GLsizei -- ^ @length@.
+  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
+  -> m ()
+glVertexArrayRangeAPPLE v1 v2 = liftIO $ dyn264 ptr_glVertexArrayRangeAPPLE v1 v2
+
+{-# NOINLINE ptr_glVertexArrayRangeAPPLE #-}
+ptr_glVertexArrayRangeAPPLE :: FunPtr (GLsizei -> Ptr a -> IO ())
+ptr_glVertexArrayRangeAPPLE = unsafePerformIO $ getCommand "glVertexArrayRangeAPPLE"
+
+-- glVertexArrayRangeNV --------------------------------------------------------
+
+glVertexArrayRangeNV
+  :: MonadIO m
+  => GLsizei -- ^ @length@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(length)@ elements of type @a@.
+  -> m ()
+glVertexArrayRangeNV v1 v2 = liftIO $ dyn264 ptr_glVertexArrayRangeNV v1 v2
+
+{-# NOINLINE ptr_glVertexArrayRangeNV #-}
+ptr_glVertexArrayRangeNV :: FunPtr (GLsizei -> Ptr a -> IO ())
+ptr_glVertexArrayRangeNV = unsafePerformIO $ getCommand "glVertexArrayRangeNV"
+
+-- glVertexArraySecondaryColorOffsetEXT ----------------------------------------
+
+glVertexArraySecondaryColorOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [ColorPointerType](Graphics-GL-Groups.html#ColorPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArraySecondaryColorOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn870 ptr_glVertexArraySecondaryColorOffsetEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArraySecondaryColorOffsetEXT #-}
+ptr_glVertexArraySecondaryColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArraySecondaryColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArraySecondaryColorOffsetEXT"
+
+-- glVertexArrayTexCoordOffsetEXT ----------------------------------------------
+
+glVertexArrayTexCoordOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayTexCoordOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn870 ptr_glVertexArrayTexCoordOffsetEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayTexCoordOffsetEXT #-}
+ptr_glVertexArrayTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayTexCoordOffsetEXT"
+
+-- glVertexArrayVertexAttribBindingEXT -----------------------------------------
+
+glVertexArrayVertexAttribBindingEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLuint -- ^ @bindingindex@.
+  -> m ()
+glVertexArrayVertexAttribBindingEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexArrayVertexAttribBindingEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribBindingEXT #-}
+ptr_glVertexArrayVertexAttribBindingEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexArrayVertexAttribBindingEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribBindingEXT"
+
+-- glVertexArrayVertexAttribDivisorEXT -----------------------------------------
+
+glVertexArrayVertexAttribDivisorEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexArrayVertexAttribDivisorEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexArrayVertexAttribDivisorEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribDivisorEXT #-}
+ptr_glVertexArrayVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexArrayVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribDivisorEXT"
+
+-- glVertexArrayVertexAttribFormatEXT ------------------------------------------
+
+glVertexArrayVertexAttribFormatEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayVertexAttribFormatEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn867 ptr_glVertexArrayVertexAttribFormatEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribFormatEXT #-}
+ptr_glVertexArrayVertexAttribFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexArrayVertexAttribFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribFormatEXT"
+
+-- glVertexArrayVertexAttribIFormatEXT -----------------------------------------
+
+glVertexArrayVertexAttribIFormatEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayVertexAttribIFormatEXT v1 v2 v3 v4 v5 = liftIO $ dyn868 ptr_glVertexArrayVertexAttribIFormatEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribIFormatEXT #-}
+ptr_glVertexArrayVertexAttribIFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexArrayVertexAttribIFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIFormatEXT"
+
+-- glVertexArrayVertexAttribIOffsetEXT -----------------------------------------
+
+glVertexArrayVertexAttribIOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayVertexAttribIOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn874 ptr_glVertexArrayVertexAttribIOffsetEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribIOffsetEXT #-}
+ptr_glVertexArrayVertexAttribIOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayVertexAttribIOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIOffsetEXT"
+
+-- glVertexArrayVertexAttribLFormatEXT -----------------------------------------
+
+glVertexArrayVertexAttribLFormatEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexArrayVertexAttribLFormatEXT v1 v2 v3 v4 v5 = liftIO $ dyn868 ptr_glVertexArrayVertexAttribLFormatEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribLFormatEXT #-}
+ptr_glVertexArrayVertexAttribLFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexArrayVertexAttribLFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLFormatEXT"
+
+-- glVertexArrayVertexAttribLOffsetEXT -----------------------------------------
+
+glVertexArrayVertexAttribLOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
+  -> m ()
+glVertexArrayVertexAttribLOffsetEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn874 ptr_glVertexArrayVertexAttribLOffsetEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribLOffsetEXT #-}
+ptr_glVertexArrayVertexAttribLOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayVertexAttribLOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLOffsetEXT"
+
+-- glVertexArrayVertexAttribOffsetEXT ------------------------------------------
+
+glVertexArrayVertexAttribOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
+  -> GLboolean -- ^ @normalized@.
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayVertexAttribOffsetEXT v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn875 ptr_glVertexArrayVertexAttribOffsetEXT v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glVertexArrayVertexAttribOffsetEXT #-}
+ptr_glVertexArrayVertexAttribOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayVertexAttribOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribOffsetEXT"
+
+-- glVertexArrayVertexBindingDivisorEXT ----------------------------------------
+
+glVertexArrayVertexBindingDivisorEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @bindingindex@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexArrayVertexBindingDivisorEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexArrayVertexBindingDivisorEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexArrayVertexBindingDivisorEXT #-}
+ptr_glVertexArrayVertexBindingDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexArrayVertexBindingDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexBindingDivisorEXT"
+
+-- glVertexArrayVertexBuffer ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffer.xhtml OpenGL 4.x>.
+glVertexArrayVertexBuffer
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @bindingindex@.
+  -> GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexArrayVertexBuffer v1 v2 v3 v4 v5 = liftIO $ dyn869 ptr_glVertexArrayVertexBuffer v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexArrayVertexBuffer #-}
+ptr_glVertexArrayVertexBuffer :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
+ptr_glVertexArrayVertexBuffer = unsafePerformIO $ getCommand "glVertexArrayVertexBuffer"
+
+-- glVertexArrayVertexBuffers --------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffers.xhtml OpenGL 4.x>.
+glVertexArrayVertexBuffers
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @buffers@.
+  -> Ptr GLintptr -- ^ @offsets@.
+  -> Ptr GLsizei -- ^ @strides@.
+  -> m ()
+glVertexArrayVertexBuffers v1 v2 v3 v4 v5 v6 = liftIO $ dyn876 ptr_glVertexArrayVertexBuffers v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayVertexBuffers #-}
+ptr_glVertexArrayVertexBuffers :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
+ptr_glVertexArrayVertexBuffers = unsafePerformIO $ getCommand "glVertexArrayVertexBuffers"
+
+-- glVertexArrayVertexOffsetEXT ------------------------------------------------
+
+glVertexArrayVertexOffsetEXT
+  :: MonadIO m
+  => GLuint -- ^ @vaobj@.
+  -> GLuint -- ^ @buffer@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLintptr -- ^ @offset@.
+  -> m ()
+glVertexArrayVertexOffsetEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn870 ptr_glVertexArrayVertexOffsetEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexArrayVertexOffsetEXT #-}
+ptr_glVertexArrayVertexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
+ptr_glVertexArrayVertexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexOffsetEXT"
+
+-- glVertexAttrib1d ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1dv'.
+glVertexAttrib1d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexAttrib1d v1 v2 = liftIO $ dyn877 ptr_glVertexAttrib1d v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1d #-}
+ptr_glVertexAttrib1d :: FunPtr (GLuint -> GLdouble -> IO ())
+ptr_glVertexAttrib1d = unsafePerformIO $ getCommand "glVertexAttrib1d"
+
+-- glVertexAttrib1dARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1dvARB'. This command is an alias for 'glVertexAttrib1d'.
+glVertexAttrib1dARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexAttrib1dARB v1 v2 = liftIO $ dyn877 ptr_glVertexAttrib1dARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1dARB #-}
+ptr_glVertexAttrib1dARB :: FunPtr (GLuint -> GLdouble -> IO ())
+ptr_glVertexAttrib1dARB = unsafePerformIO $ getCommand "glVertexAttrib1dARB"
+
+-- glVertexAttrib1dNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1dvNV'. This command is an alias for 'glVertexAttrib1d'.
+glVertexAttrib1dNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexAttrib1dNV v1 v2 = liftIO $ dyn877 ptr_glVertexAttrib1dNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1dNV #-}
+ptr_glVertexAttrib1dNV :: FunPtr (GLuint -> GLdouble -> IO ())
+ptr_glVertexAttrib1dNV = unsafePerformIO $ getCommand "glVertexAttrib1dNV"
+
+-- glVertexAttrib1dv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib1dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexAttrib1dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib1dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1dv #-}
+ptr_glVertexAttrib1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib1dv = unsafePerformIO $ getCommand "glVertexAttrib1dv"
+
+-- glVertexAttrib1dvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1dv'.
+glVertexAttrib1dvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexAttrib1dvARB v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib1dvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1dvARB #-}
+ptr_glVertexAttrib1dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib1dvARB = unsafePerformIO $ getCommand "glVertexAttrib1dvARB"
+
+-- glVertexAttrib1dvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1dv'.
+glVertexAttrib1dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexAttrib1dvNV v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib1dvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1dvNV #-}
+ptr_glVertexAttrib1dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib1dvNV = unsafePerformIO $ getCommand "glVertexAttrib1dvNV"
+
+-- glVertexAttrib1f ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1fv'.
+glVertexAttrib1f
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> m ()
+glVertexAttrib1f v1 v2 = liftIO $ dyn878 ptr_glVertexAttrib1f v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1f #-}
+ptr_glVertexAttrib1f :: FunPtr (GLuint -> GLfloat -> IO ())
+ptr_glVertexAttrib1f = unsafePerformIO $ getCommand "glVertexAttrib1f"
+
+-- glVertexAttrib1fARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1fvARB'. This command is an alias for 'glVertexAttrib1f'.
+glVertexAttrib1fARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> m ()
+glVertexAttrib1fARB v1 v2 = liftIO $ dyn878 ptr_glVertexAttrib1fARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1fARB #-}
+ptr_glVertexAttrib1fARB :: FunPtr (GLuint -> GLfloat -> IO ())
+ptr_glVertexAttrib1fARB = unsafePerformIO $ getCommand "glVertexAttrib1fARB"
+
+-- glVertexAttrib1fNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1fvNV'. This command is an alias for 'glVertexAttrib1f'.
+glVertexAttrib1fNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> m ()
+glVertexAttrib1fNV v1 v2 = liftIO $ dyn878 ptr_glVertexAttrib1fNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1fNV #-}
+ptr_glVertexAttrib1fNV :: FunPtr (GLuint -> GLfloat -> IO ())
+ptr_glVertexAttrib1fNV = unsafePerformIO $ getCommand "glVertexAttrib1fNV"
+
+-- glVertexAttrib1fv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib1fv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glVertexAttrib1fv v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib1fv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1fv #-}
+ptr_glVertexAttrib1fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib1fv = unsafePerformIO $ getCommand "glVertexAttrib1fv"
+
+-- glVertexAttrib1fvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1fv'.
+glVertexAttrib1fvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glVertexAttrib1fvARB v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib1fvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1fvARB #-}
+ptr_glVertexAttrib1fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib1fvARB = unsafePerformIO $ getCommand "glVertexAttrib1fvARB"
+
+-- glVertexAttrib1fvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1fv'.
+glVertexAttrib1fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glVertexAttrib1fvNV v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib1fvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1fvNV #-}
+ptr_glVertexAttrib1fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib1fvNV = unsafePerformIO $ getCommand "glVertexAttrib1fvNV"
+
+-- glVertexAttrib1hNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1hvNV'.
+glVertexAttrib1hNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> m ()
+glVertexAttrib1hNV v1 v2 = liftIO $ dyn879 ptr_glVertexAttrib1hNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1hNV #-}
+ptr_glVertexAttrib1hNV :: FunPtr (GLuint -> GLhalfNV -> IO ())
+ptr_glVertexAttrib1hNV = unsafePerformIO $ getCommand "glVertexAttrib1hNV"
+
+-- glVertexAttrib1hvNV ---------------------------------------------------------
+
+glVertexAttrib1hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ element of type @Half16NV@.
+  -> m ()
+glVertexAttrib1hvNV v1 v2 = liftIO $ dyn880 ptr_glVertexAttrib1hvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1hvNV #-}
+ptr_glVertexAttrib1hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttrib1hvNV = unsafePerformIO $ getCommand "glVertexAttrib1hvNV"
+
+-- glVertexAttrib1s ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib1sv'.
+glVertexAttrib1s
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> m ()
+glVertexAttrib1s v1 v2 = liftIO $ dyn881 ptr_glVertexAttrib1s v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1s #-}
+ptr_glVertexAttrib1s :: FunPtr (GLuint -> GLshort -> IO ())
+ptr_glVertexAttrib1s = unsafePerformIO $ getCommand "glVertexAttrib1s"
+
+-- glVertexAttrib1sARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1svARB'. This command is an alias for 'glVertexAttrib1s'.
+glVertexAttrib1sARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> m ()
+glVertexAttrib1sARB v1 v2 = liftIO $ dyn881 ptr_glVertexAttrib1sARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1sARB #-}
+ptr_glVertexAttrib1sARB :: FunPtr (GLuint -> GLshort -> IO ())
+ptr_glVertexAttrib1sARB = unsafePerformIO $ getCommand "glVertexAttrib1sARB"
+
+-- glVertexAttrib1sNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1svNV'. This command is an alias for 'glVertexAttrib1s'.
+glVertexAttrib1sNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> m ()
+glVertexAttrib1sNV v1 v2 = liftIO $ dyn881 ptr_glVertexAttrib1sNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1sNV #-}
+ptr_glVertexAttrib1sNV :: FunPtr (GLuint -> GLshort -> IO ())
+ptr_glVertexAttrib1sNV = unsafePerformIO $ getCommand "glVertexAttrib1sNV"
+
+-- glVertexAttrib1sv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib1sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1sv v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib1sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1sv #-}
+ptr_glVertexAttrib1sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1sv = unsafePerformIO $ getCommand "glVertexAttrib1sv"
+
+-- glVertexAttrib1svARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1sv'.
+glVertexAttrib1svARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1svARB v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib1svARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1svARB #-}
+ptr_glVertexAttrib1svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1svARB = unsafePerformIO $ getCommand "glVertexAttrib1svARB"
+
+-- glVertexAttrib1svNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1sv'.
+glVertexAttrib1svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1svNV v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib1svNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1svNV #-}
+ptr_glVertexAttrib1svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1svNV = unsafePerformIO $ getCommand "glVertexAttrib1svNV"
+
+-- glVertexAttrib2d ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2dv'.
+glVertexAttrib2d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttrib2d v1 v2 v3 = liftIO $ dyn223 ptr_glVertexAttrib2d v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2d #-}
+ptr_glVertexAttrib2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib2d = unsafePerformIO $ getCommand "glVertexAttrib2d"
+
+-- glVertexAttrib2dARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2dvARB'. This command is an alias for 'glVertexAttrib2d'.
+glVertexAttrib2dARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttrib2dARB v1 v2 v3 = liftIO $ dyn223 ptr_glVertexAttrib2dARB v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2dARB #-}
+ptr_glVertexAttrib2dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib2dARB = unsafePerformIO $ getCommand "glVertexAttrib2dARB"
+
+-- glVertexAttrib2dNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2dvNV'. This command is an alias for 'glVertexAttrib2d'.
+glVertexAttrib2dNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttrib2dNV v1 v2 v3 = liftIO $ dyn223 ptr_glVertexAttrib2dNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2dNV #-}
+ptr_glVertexAttrib2dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib2dNV = unsafePerformIO $ getCommand "glVertexAttrib2dNV"
+
+-- glVertexAttrib2dv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib2dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib2dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib2dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2dv #-}
+ptr_glVertexAttrib2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib2dv = unsafePerformIO $ getCommand "glVertexAttrib2dv"
+
+-- glVertexAttrib2dvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2dv'.
+glVertexAttrib2dvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib2dvARB v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib2dvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2dvARB #-}
+ptr_glVertexAttrib2dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib2dvARB = unsafePerformIO $ getCommand "glVertexAttrib2dvARB"
+
+-- glVertexAttrib2dvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2dv'.
+glVertexAttrib2dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib2dvNV v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib2dvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2dvNV #-}
+ptr_glVertexAttrib2dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib2dvNV = unsafePerformIO $ getCommand "glVertexAttrib2dvNV"
+
+-- glVertexAttrib2f ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2fv'.
+glVertexAttrib2f
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m ()
+glVertexAttrib2f v1 v2 v3 = liftIO $ dyn224 ptr_glVertexAttrib2f v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2f #-}
+ptr_glVertexAttrib2f :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib2f = unsafePerformIO $ getCommand "glVertexAttrib2f"
+
+-- glVertexAttrib2fARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2fvARB'. This command is an alias for 'glVertexAttrib2f'.
+glVertexAttrib2fARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m ()
+glVertexAttrib2fARB v1 v2 v3 = liftIO $ dyn224 ptr_glVertexAttrib2fARB v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2fARB #-}
+ptr_glVertexAttrib2fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib2fARB = unsafePerformIO $ getCommand "glVertexAttrib2fARB"
+
+-- glVertexAttrib2fNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2fvNV'. This command is an alias for 'glVertexAttrib2f'.
+glVertexAttrib2fNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m ()
+glVertexAttrib2fNV v1 v2 v3 = liftIO $ dyn224 ptr_glVertexAttrib2fNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2fNV #-}
+ptr_glVertexAttrib2fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib2fNV = unsafePerformIO $ getCommand "glVertexAttrib2fNV"
+
+-- glVertexAttrib2fv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib2fv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib2fv v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib2fv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2fv #-}
+ptr_glVertexAttrib2fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib2fv = unsafePerformIO $ getCommand "glVertexAttrib2fv"
+
+-- glVertexAttrib2fvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2fv'.
+glVertexAttrib2fvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib2fvARB v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib2fvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2fvARB #-}
+ptr_glVertexAttrib2fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib2fvARB = unsafePerformIO $ getCommand "glVertexAttrib2fvARB"
+
+-- glVertexAttrib2fvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2fv'.
+glVertexAttrib2fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib2fvNV v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib2fvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2fvNV #-}
+ptr_glVertexAttrib2fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib2fvNV = unsafePerformIO $ getCommand "glVertexAttrib2fvNV"
+
+-- glVertexAttrib2hNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2hvNV'.
+glVertexAttrib2hNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> m ()
+glVertexAttrib2hNV v1 v2 v3 = liftIO $ dyn882 ptr_glVertexAttrib2hNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2hNV #-}
+ptr_glVertexAttrib2hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertexAttrib2hNV = unsafePerformIO $ getCommand "glVertexAttrib2hNV"
+
+-- glVertexAttrib2hvNV ---------------------------------------------------------
+
+glVertexAttrib2hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttrib2hvNV v1 v2 = liftIO $ dyn880 ptr_glVertexAttrib2hvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2hvNV #-}
+ptr_glVertexAttrib2hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttrib2hvNV = unsafePerformIO $ getCommand "glVertexAttrib2hvNV"
+
+-- glVertexAttrib2s ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib2sv'.
+glVertexAttrib2s
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> m ()
+glVertexAttrib2s v1 v2 v3 = liftIO $ dyn883 ptr_glVertexAttrib2s v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2s #-}
+ptr_glVertexAttrib2s :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib2s = unsafePerformIO $ getCommand "glVertexAttrib2s"
+
+-- glVertexAttrib2sARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2svARB'. This command is an alias for 'glVertexAttrib2s'.
+glVertexAttrib2sARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> m ()
+glVertexAttrib2sARB v1 v2 v3 = liftIO $ dyn883 ptr_glVertexAttrib2sARB v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2sARB #-}
+ptr_glVertexAttrib2sARB :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib2sARB = unsafePerformIO $ getCommand "glVertexAttrib2sARB"
+
+-- glVertexAttrib2sNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2svNV'. This command is an alias for 'glVertexAttrib2s'.
+glVertexAttrib2sNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> m ()
+glVertexAttrib2sNV v1 v2 v3 = liftIO $ dyn883 ptr_glVertexAttrib2sNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2sNV #-}
+ptr_glVertexAttrib2sNV :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib2sNV = unsafePerformIO $ getCommand "glVertexAttrib2sNV"
+
+-- glVertexAttrib2sv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib2sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib2sv v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib2sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2sv #-}
+ptr_glVertexAttrib2sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib2sv = unsafePerformIO $ getCommand "glVertexAttrib2sv"
+
+-- glVertexAttrib2svARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2sv'.
+glVertexAttrib2svARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib2svARB v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib2svARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2svARB #-}
+ptr_glVertexAttrib2svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib2svARB = unsafePerformIO $ getCommand "glVertexAttrib2svARB"
+
+-- glVertexAttrib2svNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib2sv'.
+glVertexAttrib2svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib2svNV v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib2svNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2svNV #-}
+ptr_glVertexAttrib2svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib2svNV = unsafePerformIO $ getCommand "glVertexAttrib2svNV"
+
+-- glVertexAttrib3d ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3dv'.
+glVertexAttrib3d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexAttrib3d v1 v2 v3 v4 = liftIO $ dyn884 ptr_glVertexAttrib3d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3d #-}
+ptr_glVertexAttrib3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib3d = unsafePerformIO $ getCommand "glVertexAttrib3d"
+
+-- glVertexAttrib3dARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3dvARB'. This command is an alias for 'glVertexAttrib3d'.
+glVertexAttrib3dARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexAttrib3dARB v1 v2 v3 v4 = liftIO $ dyn884 ptr_glVertexAttrib3dARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3dARB #-}
+ptr_glVertexAttrib3dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib3dARB = unsafePerformIO $ getCommand "glVertexAttrib3dARB"
+
+-- glVertexAttrib3dNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3dvNV'. This command is an alias for 'glVertexAttrib3d'.
+glVertexAttrib3dNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexAttrib3dNV v1 v2 v3 v4 = liftIO $ dyn884 ptr_glVertexAttrib3dNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3dNV #-}
+ptr_glVertexAttrib3dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib3dNV = unsafePerformIO $ getCommand "glVertexAttrib3dNV"
 
diff --git a/src/Graphics/GL/Functions/F30.hs b/src/Graphics/GL/Functions/F30.hs
--- a/src/Graphics/GL/Functions/F30.hs
+++ b/src/Graphics/GL/Functions/F30.hs
@@ -15,1576 +15,1589 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F30 (
-  glVertexAttrib4uiv,
-  glVertexAttrib4uivARB,
-  glVertexAttrib4usv,
-  glVertexAttrib4usvARB,
-  glVertexAttribArrayObjectATI,
-  glVertexAttribBinding,
-  glVertexAttribDivisor,
-  glVertexAttribDivisorANGLE,
-  glVertexAttribDivisorARB,
-  glVertexAttribDivisorEXT,
-  glVertexAttribDivisorNV,
-  glVertexAttribFormat,
-  glVertexAttribFormatNV,
-  glVertexAttribI1i,
-  glVertexAttribI1iEXT,
-  glVertexAttribI1iv,
-  glVertexAttribI1ivEXT,
-  glVertexAttribI1ui,
-  glVertexAttribI1uiEXT,
-  glVertexAttribI1uiv,
-  glVertexAttribI1uivEXT,
-  glVertexAttribI2i,
-  glVertexAttribI2iEXT,
-  glVertexAttribI2iv,
-  glVertexAttribI2ivEXT,
-  glVertexAttribI2ui,
-  glVertexAttribI2uiEXT,
-  glVertexAttribI2uiv,
-  glVertexAttribI2uivEXT,
-  glVertexAttribI3i,
-  glVertexAttribI3iEXT,
-  glVertexAttribI3iv,
-  glVertexAttribI3ivEXT,
-  glVertexAttribI3ui,
-  glVertexAttribI3uiEXT,
-  glVertexAttribI3uiv,
-  glVertexAttribI3uivEXT,
-  glVertexAttribI4bv,
-  glVertexAttribI4bvEXT,
-  glVertexAttribI4i,
-  glVertexAttribI4iEXT,
-  glVertexAttribI4iv,
-  glVertexAttribI4ivEXT,
-  glVertexAttribI4sv,
-  glVertexAttribI4svEXT,
-  glVertexAttribI4ubv,
-  glVertexAttribI4ubvEXT,
-  glVertexAttribI4ui,
-  glVertexAttribI4uiEXT,
-  glVertexAttribI4uiv,
-  glVertexAttribI4uivEXT,
-  glVertexAttribI4usv,
-  glVertexAttribI4usvEXT,
-  glVertexAttribIFormat,
-  glVertexAttribIFormatNV,
-  glVertexAttribIPointer,
-  glVertexAttribIPointerEXT,
-  glVertexAttribL1d,
-  glVertexAttribL1dEXT,
-  glVertexAttribL1dv,
-  glVertexAttribL1dvEXT,
-  glVertexAttribL1i64NV,
-  glVertexAttribL1i64vNV,
-  glVertexAttribL1ui64ARB,
-  glVertexAttribL1ui64NV,
-  glVertexAttribL1ui64vARB,
-  glVertexAttribL1ui64vNV,
-  glVertexAttribL2d,
-  glVertexAttribL2dEXT,
-  glVertexAttribL2dv,
-  glVertexAttribL2dvEXT,
-  glVertexAttribL2i64NV,
-  glVertexAttribL2i64vNV,
-  glVertexAttribL2ui64NV,
-  glVertexAttribL2ui64vNV,
-  glVertexAttribL3d,
-  glVertexAttribL3dEXT,
-  glVertexAttribL3dv,
-  glVertexAttribL3dvEXT,
-  glVertexAttribL3i64NV,
-  glVertexAttribL3i64vNV,
-  glVertexAttribL3ui64NV,
-  glVertexAttribL3ui64vNV,
-  glVertexAttribL4d,
-  glVertexAttribL4dEXT,
-  glVertexAttribL4dv,
-  glVertexAttribL4dvEXT,
-  glVertexAttribL4i64NV,
-  glVertexAttribL4i64vNV,
-  glVertexAttribL4ui64NV,
-  glVertexAttribL4ui64vNV,
-  glVertexAttribLFormat,
-  glVertexAttribLFormatNV,
-  glVertexAttribLPointer,
-  glVertexAttribLPointerEXT,
-  glVertexAttribP1ui,
-  glVertexAttribP1uiv,
-  glVertexAttribP2ui,
-  glVertexAttribP2uiv,
-  glVertexAttribP3ui
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glVertexAttrib4uiv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttrib4uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttrib4uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4uiv #-}
-ptr_glVertexAttrib4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttrib4uiv = unsafePerformIO $ getCommand "glVertexAttrib4uiv"
-
--- glVertexAttrib4uivARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4uiv'.
-glVertexAttrib4uivARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttrib4uivARB v1 v2 = liftIO $ dyn194 ptr_glVertexAttrib4uivARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4uivARB #-}
-ptr_glVertexAttrib4uivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttrib4uivARB = unsafePerformIO $ getCommand "glVertexAttrib4uivARB"
-
--- glVertexAttrib4usv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib4usv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttrib4usv v1 v2 = liftIO $ dyn833 ptr_glVertexAttrib4usv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4usv #-}
-ptr_glVertexAttrib4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttrib4usv = unsafePerformIO $ getCommand "glVertexAttrib4usv"
-
--- glVertexAttrib4usvARB -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib4usv'.
-glVertexAttrib4usvARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttrib4usvARB v1 v2 = liftIO $ dyn833 ptr_glVertexAttrib4usvARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib4usvARB #-}
-ptr_glVertexAttrib4usvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttrib4usvARB = unsafePerformIO $ getCommand "glVertexAttrib4usvARB"
-
--- glVertexAttribArrayObjectATI ------------------------------------------------
-
-glVertexAttribArrayObjectATI
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLsizei -- ^ @stride@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @offset@.
-  -> m ()
-glVertexAttribArrayObjectATI v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn859 ptr_glVertexAttribArrayObjectATI v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glVertexAttribArrayObjectATI #-}
-ptr_glVertexAttribArrayObjectATI :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribArrayObjectATI = unsafePerformIO $ getCommand "glVertexAttribArrayObjectATI"
-
--- glVertexAttribBinding -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>.
-glVertexAttribBinding
-  :: MonadIO m
-  => GLuint -- ^ @attribindex@.
-  -> GLuint -- ^ @bindingindex@.
-  -> m ()
-glVertexAttribBinding v1 v2 = liftIO $ dyn3 ptr_glVertexAttribBinding v1 v2
-
-{-# NOINLINE ptr_glVertexAttribBinding #-}
-ptr_glVertexAttribBinding :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribBinding = unsafePerformIO $ getCommand "glVertexAttribBinding"
-
--- glVertexAttribDivisor -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribDivisor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribDivisor.xhtml OpenGL 4.x>.
-glVertexAttribDivisor
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexAttribDivisor v1 v2 = liftIO $ dyn3 ptr_glVertexAttribDivisor v1 v2
-
-{-# NOINLINE ptr_glVertexAttribDivisor #-}
-ptr_glVertexAttribDivisor :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribDivisor = unsafePerformIO $ getCommand "glVertexAttribDivisor"
-
--- glVertexAttribDivisorANGLE --------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribDivisor'.
-glVertexAttribDivisorANGLE
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexAttribDivisorANGLE v1 v2 = liftIO $ dyn3 ptr_glVertexAttribDivisorANGLE v1 v2
-
-{-# NOINLINE ptr_glVertexAttribDivisorANGLE #-}
-ptr_glVertexAttribDivisorANGLE :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribDivisorANGLE = unsafePerformIO $ getCommand "glVertexAttribDivisorANGLE"
-
--- glVertexAttribDivisorARB ----------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribDivisor'.
-glVertexAttribDivisorARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexAttribDivisorARB v1 v2 = liftIO $ dyn3 ptr_glVertexAttribDivisorARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttribDivisorARB #-}
-ptr_glVertexAttribDivisorARB :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribDivisorARB = unsafePerformIO $ getCommand "glVertexAttribDivisorARB"
-
--- glVertexAttribDivisorEXT ----------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribDivisor'.
-glVertexAttribDivisorEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexAttribDivisorEXT v1 v2 = liftIO $ dyn3 ptr_glVertexAttribDivisorEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribDivisorEXT #-}
-ptr_glVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexAttribDivisorEXT"
-
--- glVertexAttribDivisorNV -----------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribDivisor'.
-glVertexAttribDivisorNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexAttribDivisorNV v1 v2 = liftIO $ dyn3 ptr_glVertexAttribDivisorNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribDivisorNV #-}
-ptr_glVertexAttribDivisorNV :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribDivisorNV = unsafePerformIO $ getCommand "glVertexAttribDivisorNV"
-
--- glVertexAttribFormat --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexAttribFormat
-  :: MonadIO m
-  => GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexAttribFormat v1 v2 v3 v4 v5 = liftIO $ dyn860 ptr_glVertexAttribFormat v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribFormat #-}
-ptr_glVertexAttribFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexAttribFormat = unsafePerformIO $ getCommand "glVertexAttribFormat"
-
--- glVertexAttribFormatNV ------------------------------------------------------
-
-glVertexAttribFormatNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexAttribFormatNV v1 v2 v3 v4 v5 = liftIO $ dyn861 ptr_glVertexAttribFormatNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribFormatNV #-}
-ptr_glVertexAttribFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
-ptr_glVertexAttribFormatNV = unsafePerformIO $ getCommand "glVertexAttribFormatNV"
-
--- glVertexAttribI1i -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI1iv'.
-glVertexAttribI1i
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> m ()
-glVertexAttribI1i v1 v2 = liftIO $ dyn476 ptr_glVertexAttribI1i v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1i #-}
-ptr_glVertexAttribI1i :: FunPtr (GLuint -> GLint -> IO ())
-ptr_glVertexAttribI1i = unsafePerformIO $ getCommand "glVertexAttribI1i"
-
--- glVertexAttribI1iEXT --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI1ivEXT'. This command is an alias for 'glVertexAttribI1i'.
-glVertexAttribI1iEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> m ()
-glVertexAttribI1iEXT v1 v2 = liftIO $ dyn476 ptr_glVertexAttribI1iEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1iEXT #-}
-ptr_glVertexAttribI1iEXT :: FunPtr (GLuint -> GLint -> IO ())
-ptr_glVertexAttribI1iEXT = unsafePerformIO $ getCommand "glVertexAttribI1iEXT"
-
--- glVertexAttribI1iv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI1iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glVertexAttribI1iv v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI1iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1iv #-}
-ptr_glVertexAttribI1iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI1iv = unsafePerformIO $ getCommand "glVertexAttribI1iv"
-
--- glVertexAttribI1ivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI1iv'.
-glVertexAttribI1ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glVertexAttribI1ivEXT v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI1ivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1ivEXT #-}
-ptr_glVertexAttribI1ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI1ivEXT = unsafePerformIO $ getCommand "glVertexAttribI1ivEXT"
-
--- glVertexAttribI1ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI1uiv'.
-glVertexAttribI1ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> m ()
-glVertexAttribI1ui v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1ui v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1ui #-}
-ptr_glVertexAttribI1ui :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI1ui = unsafePerformIO $ getCommand "glVertexAttribI1ui"
-
--- glVertexAttribI1uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI1uivEXT'. This command is an alias for 'glVertexAttribI1ui'.
-glVertexAttribI1uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> m ()
-glVertexAttribI1uiEXT v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1uiEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1uiEXT #-}
-ptr_glVertexAttribI1uiEXT :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI1uiEXT = unsafePerformIO $ getCommand "glVertexAttribI1uiEXT"
-
--- glVertexAttribI1uiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI1uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribI1uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI1uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1uiv #-}
-ptr_glVertexAttribI1uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI1uiv = unsafePerformIO $ getCommand "glVertexAttribI1uiv"
-
--- glVertexAttribI1uivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI1uiv'.
-glVertexAttribI1uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribI1uivEXT v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI1uivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1uivEXT #-}
-ptr_glVertexAttribI1uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI1uivEXT = unsafePerformIO $ getCommand "glVertexAttribI1uivEXT"
-
--- glVertexAttribI2i -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI2iv'.
-glVertexAttribI2i
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> m ()
-glVertexAttribI2i v1 v2 v3 = liftIO $ dyn636 ptr_glVertexAttribI2i v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribI2i #-}
-ptr_glVertexAttribI2i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI2i = unsafePerformIO $ getCommand "glVertexAttribI2i"
-
--- glVertexAttribI2iEXT --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI2ivEXT'. This command is an alias for 'glVertexAttribI2i'.
-glVertexAttribI2iEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> m ()
-glVertexAttribI2iEXT v1 v2 v3 = liftIO $ dyn636 ptr_glVertexAttribI2iEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribI2iEXT #-}
-ptr_glVertexAttribI2iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI2iEXT = unsafePerformIO $ getCommand "glVertexAttribI2iEXT"
-
--- glVertexAttribI2iv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI2iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI2iv v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI2iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI2iv #-}
-ptr_glVertexAttribI2iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI2iv = unsafePerformIO $ getCommand "glVertexAttribI2iv"
-
--- glVertexAttribI2ivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI2iv'.
-glVertexAttribI2ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI2ivEXT v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI2ivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI2ivEXT #-}
-ptr_glVertexAttribI2ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI2ivEXT = unsafePerformIO $ getCommand "glVertexAttribI2ivEXT"
-
--- glVertexAttribI2ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI2uiv'.
-glVertexAttribI2ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> m ()
-glVertexAttribI2ui v1 v2 v3 = liftIO $ dyn102 ptr_glVertexAttribI2ui v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribI2ui #-}
-ptr_glVertexAttribI2ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI2ui = unsafePerformIO $ getCommand "glVertexAttribI2ui"
-
--- glVertexAttribI2uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI2uivEXT'. This command is an alias for 'glVertexAttribI2ui'.
-glVertexAttribI2uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> m ()
-glVertexAttribI2uiEXT v1 v2 v3 = liftIO $ dyn102 ptr_glVertexAttribI2uiEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribI2uiEXT #-}
-ptr_glVertexAttribI2uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI2uiEXT = unsafePerformIO $ getCommand "glVertexAttribI2uiEXT"
-
--- glVertexAttribI2uiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI2uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI2uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI2uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI2uiv #-}
-ptr_glVertexAttribI2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI2uiv = unsafePerformIO $ getCommand "glVertexAttribI2uiv"
-
--- glVertexAttribI2uivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI2uiv'.
-glVertexAttribI2uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI2uivEXT v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI2uivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI2uivEXT #-}
-ptr_glVertexAttribI2uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI2uivEXT = unsafePerformIO $ getCommand "glVertexAttribI2uivEXT"
-
--- glVertexAttribI3i -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI3iv'.
-glVertexAttribI3i
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> m ()
-glVertexAttribI3i v1 v2 v3 v4 = liftIO $ dyn646 ptr_glVertexAttribI3i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribI3i #-}
-ptr_glVertexAttribI3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI3i = unsafePerformIO $ getCommand "glVertexAttribI3i"
-
--- glVertexAttribI3iEXT --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI3ivEXT'. This command is an alias for 'glVertexAttribI3i'.
-glVertexAttribI3iEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> m ()
-glVertexAttribI3iEXT v1 v2 v3 v4 = liftIO $ dyn646 ptr_glVertexAttribI3iEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribI3iEXT #-}
-ptr_glVertexAttribI3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI3iEXT = unsafePerformIO $ getCommand "glVertexAttribI3iEXT"
-
--- glVertexAttribI3iv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI3iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI3iv v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI3iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI3iv #-}
-ptr_glVertexAttribI3iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI3iv = unsafePerformIO $ getCommand "glVertexAttribI3iv"
-
--- glVertexAttribI3ivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI3iv'.
-glVertexAttribI3ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI3ivEXT v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI3ivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI3ivEXT #-}
-ptr_glVertexAttribI3ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI3ivEXT = unsafePerformIO $ getCommand "glVertexAttribI3ivEXT"
-
--- glVertexAttribI3ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI3uiv'.
-glVertexAttribI3ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> m ()
-glVertexAttribI3ui v1 v2 v3 v4 = liftIO $ dyn77 ptr_glVertexAttribI3ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribI3ui #-}
-ptr_glVertexAttribI3ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI3ui = unsafePerformIO $ getCommand "glVertexAttribI3ui"
-
--- glVertexAttribI3uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI3uivEXT'. This command is an alias for 'glVertexAttribI3ui'.
-glVertexAttribI3uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> m ()
-glVertexAttribI3uiEXT v1 v2 v3 v4 = liftIO $ dyn77 ptr_glVertexAttribI3uiEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribI3uiEXT #-}
-ptr_glVertexAttribI3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI3uiEXT = unsafePerformIO $ getCommand "glVertexAttribI3uiEXT"
-
--- glVertexAttribI3uiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI3uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI3uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI3uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI3uiv #-}
-ptr_glVertexAttribI3uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI3uiv = unsafePerformIO $ getCommand "glVertexAttribI3uiv"
-
--- glVertexAttribI3uivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI3uiv'.
-glVertexAttribI3uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI3uivEXT v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI3uivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI3uivEXT #-}
-ptr_glVertexAttribI3uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI3uivEXT = unsafePerformIO $ getCommand "glVertexAttribI3uivEXT"
-
--- glVertexAttribI4bv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4bv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttribI4bv v1 v2 = liftIO $ dyn830 ptr_glVertexAttribI4bv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4bv #-}
-ptr_glVertexAttribI4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttribI4bv = unsafePerformIO $ getCommand "glVertexAttribI4bv"
-
--- glVertexAttribI4bvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4bv'.
-glVertexAttribI4bvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
-  -> m ()
-glVertexAttribI4bvEXT v1 v2 = liftIO $ dyn830 ptr_glVertexAttribI4bvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4bvEXT #-}
-ptr_glVertexAttribI4bvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVertexAttribI4bvEXT = unsafePerformIO $ getCommand "glVertexAttribI4bvEXT"
-
--- glVertexAttribI4i -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI4iv'.
-glVertexAttribI4i
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glVertexAttribI4i v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glVertexAttribI4i v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribI4i #-}
-ptr_glVertexAttribI4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI4i = unsafePerformIO $ getCommand "glVertexAttribI4i"
-
--- glVertexAttribI4iEXT --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI4ivEXT'. This command is an alias for 'glVertexAttribI4i'.
-glVertexAttribI4iEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glVertexAttribI4iEXT v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glVertexAttribI4iEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribI4iEXT #-}
-ptr_glVertexAttribI4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexAttribI4iEXT = unsafePerformIO $ getCommand "glVertexAttribI4iEXT"
-
--- glVertexAttribI4iv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI4iv v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI4iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4iv #-}
-ptr_glVertexAttribI4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI4iv = unsafePerformIO $ getCommand "glVertexAttribI4iv"
-
--- glVertexAttribI4ivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4iv'.
-glVertexAttribI4ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexAttribI4ivEXT v1 v2 = liftIO $ dyn704 ptr_glVertexAttribI4ivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4ivEXT #-}
-ptr_glVertexAttribI4ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI4ivEXT = unsafePerformIO $ getCommand "glVertexAttribI4ivEXT"
-
--- glVertexAttribI4sv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribI4sv v1 v2 = liftIO $ dyn832 ptr_glVertexAttribI4sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4sv #-}
-ptr_glVertexAttribI4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttribI4sv = unsafePerformIO $ getCommand "glVertexAttribI4sv"
-
--- glVertexAttribI4svEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4sv'.
-glVertexAttribI4svEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribI4svEXT v1 v2 = liftIO $ dyn832 ptr_glVertexAttribI4svEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4svEXT #-}
-ptr_glVertexAttribI4svEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttribI4svEXT = unsafePerformIO $ getCommand "glVertexAttribI4svEXT"
-
--- glVertexAttribI4ubv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4ubv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttribI4ubv v1 v2 = liftIO $ dyn378 ptr_glVertexAttribI4ubv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4ubv #-}
-ptr_glVertexAttribI4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttribI4ubv = unsafePerformIO $ getCommand "glVertexAttribI4ubv"
-
--- glVertexAttribI4ubvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4ubv'.
-glVertexAttribI4ubvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
-  -> m ()
-glVertexAttribI4ubvEXT v1 v2 = liftIO $ dyn378 ptr_glVertexAttribI4ubvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4ubvEXT #-}
-ptr_glVertexAttribI4ubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
-ptr_glVertexAttribI4ubvEXT = unsafePerformIO $ getCommand "glVertexAttribI4ubvEXT"
-
--- glVertexAttribI4ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI4uiv'.
-glVertexAttribI4ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glVertexAttribI4ui v1 v2 v3 v4 v5 = liftIO $ dyn862 ptr_glVertexAttribI4ui v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribI4ui #-}
-ptr_glVertexAttribI4ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI4ui = unsafePerformIO $ getCommand "glVertexAttribI4ui"
-
--- glVertexAttribI4uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI4uivEXT'. This command is an alias for 'glVertexAttribI4ui'.
-glVertexAttribI4uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glVertexAttribI4uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn862 ptr_glVertexAttribI4uiEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribI4uiEXT #-}
-ptr_glVertexAttribI4uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI4uiEXT = unsafePerformIO $ getCommand "glVertexAttribI4uiEXT"
-
--- glVertexAttribI4uiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI4uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI4uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4uiv #-}
-ptr_glVertexAttribI4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI4uiv = unsafePerformIO $ getCommand "glVertexAttribI4uiv"
-
--- glVertexAttribI4uivEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4uiv'.
-glVertexAttribI4uivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI4uivEXT v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI4uivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4uivEXT #-}
-ptr_glVertexAttribI4uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI4uivEXT = unsafePerformIO $ getCommand "glVertexAttribI4uivEXT"
-
--- glVertexAttribI4usv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI4usv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttribI4usv v1 v2 = liftIO $ dyn833 ptr_glVertexAttribI4usv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4usv #-}
-ptr_glVertexAttribI4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttribI4usv = unsafePerformIO $ getCommand "glVertexAttribI4usv"
-
--- glVertexAttribI4usvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI4usv'.
-glVertexAttribI4usvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
-  -> m ()
-glVertexAttribI4usvEXT v1 v2 = liftIO $ dyn833 ptr_glVertexAttribI4usvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI4usvEXT #-}
-ptr_glVertexAttribI4usvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
-ptr_glVertexAttribI4usvEXT = unsafePerformIO $ getCommand "glVertexAttribI4usvEXT"
-
--- glVertexAttribIFormat -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexAttribIFormat
-  :: MonadIO m
-  => GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexAttribIFormat v1 v2 v3 v4 = liftIO $ dyn863 ptr_glVertexAttribIFormat v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribIFormat #-}
-ptr_glVertexAttribIFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexAttribIFormat = unsafePerformIO $ getCommand "glVertexAttribIFormat"
-
--- glVertexAttribIFormatNV -----------------------------------------------------
-
-glVertexAttribIFormatNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexAttribIFormatNV v1 v2 v3 v4 = liftIO $ dyn864 ptr_glVertexAttribIFormatNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribIFormatNV #-}
-ptr_glVertexAttribIFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
-ptr_glVertexAttribIFormatNV = unsafePerformIO $ getCommand "glVertexAttribIFormatNV"
-
--- glVertexAttribIPointer ------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
-glVertexAttribIPointer
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexAttribIPointer v1 v2 v3 v4 v5 = liftIO $ dyn865 ptr_glVertexAttribIPointer v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribIPointer #-}
-ptr_glVertexAttribIPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribIPointer = unsafePerformIO $ getCommand "glVertexAttribIPointer"
-
--- glVertexAttribIPointerEXT ---------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribIPointer'.
-glVertexAttribIPointerEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexAttribIPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn865 ptr_glVertexAttribIPointerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribIPointerEXT #-}
-ptr_glVertexAttribIPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribIPointerEXT = unsafePerformIO $ getCommand "glVertexAttribIPointerEXT"
-
--- glVertexAttribL1d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL1d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexAttribL1d v1 v2 = liftIO $ dyn844 ptr_glVertexAttribL1d v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1d #-}
-ptr_glVertexAttribL1d :: FunPtr (GLuint -> GLdouble -> IO ())
-ptr_glVertexAttribL1d = unsafePerformIO $ getCommand "glVertexAttribL1d"
-
--- glVertexAttribL1dEXT --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL1d'.
-glVertexAttribL1dEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexAttribL1dEXT v1 v2 = liftIO $ dyn844 ptr_glVertexAttribL1dEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1dEXT #-}
-ptr_glVertexAttribL1dEXT :: FunPtr (GLuint -> GLdouble -> IO ())
-ptr_glVertexAttribL1dEXT = unsafePerformIO $ getCommand "glVertexAttribL1dEXT"
-
--- glVertexAttribL1dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL1dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexAttribL1dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL1dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1dv #-}
-ptr_glVertexAttribL1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL1dv = unsafePerformIO $ getCommand "glVertexAttribL1dv"
-
--- glVertexAttribL1dvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL1dv'.
-glVertexAttribL1dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexAttribL1dvEXT v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL1dvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1dvEXT #-}
-ptr_glVertexAttribL1dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL1dvEXT = unsafePerformIO $ getCommand "glVertexAttribL1dvEXT"
-
--- glVertexAttribL1i64NV -------------------------------------------------------
-
-glVertexAttribL1i64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint64EXT -- ^ @x@.
-  -> m ()
-glVertexAttribL1i64NV v1 v2 = liftIO $ dyn866 ptr_glVertexAttribL1i64NV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1i64NV #-}
-ptr_glVertexAttribL1i64NV :: FunPtr (GLuint -> GLint64EXT -> IO ())
-ptr_glVertexAttribL1i64NV = unsafePerformIO $ getCommand "glVertexAttribL1i64NV"
-
--- glVertexAttribL1i64vNV ------------------------------------------------------
-
-glVertexAttribL1i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint64EXT -- ^ @v@ pointing to @1@ element of type @GLint64EXT@.
-  -> m ()
-glVertexAttribL1i64vNV v1 v2 = liftIO $ dyn867 ptr_glVertexAttribL1i64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1i64vNV #-}
-ptr_glVertexAttribL1i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
-ptr_glVertexAttribL1i64vNV = unsafePerformIO $ getCommand "glVertexAttribL1i64vNV"
-
--- glVertexAttribL1ui64ARB -----------------------------------------------------
-
-glVertexAttribL1ui64ARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint64EXT -- ^ @x@.
-  -> m ()
-glVertexAttribL1ui64ARB v1 v2 = liftIO $ dyn868 ptr_glVertexAttribL1ui64ARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1ui64ARB #-}
-ptr_glVertexAttribL1ui64ARB :: FunPtr (GLuint -> GLuint64EXT -> IO ())
-ptr_glVertexAttribL1ui64ARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64ARB"
-
--- glVertexAttribL1ui64NV ------------------------------------------------------
-
-glVertexAttribL1ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint64EXT -- ^ @x@.
-  -> m ()
-glVertexAttribL1ui64NV v1 v2 = liftIO $ dyn868 ptr_glVertexAttribL1ui64NV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1ui64NV #-}
-ptr_glVertexAttribL1ui64NV :: FunPtr (GLuint -> GLuint64EXT -> IO ())
-ptr_glVertexAttribL1ui64NV = unsafePerformIO $ getCommand "glVertexAttribL1ui64NV"
-
--- glVertexAttribL1ui64vARB ----------------------------------------------------
-
-glVertexAttribL1ui64vARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint64EXT -- ^ @v@.
-  -> m ()
-glVertexAttribL1ui64vARB v1 v2 = liftIO $ dyn869 ptr_glVertexAttribL1ui64vARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1ui64vARB #-}
-ptr_glVertexAttribL1ui64vARB :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-ptr_glVertexAttribL1ui64vARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64vARB"
-
--- glVertexAttribL1ui64vNV -----------------------------------------------------
-
-glVertexAttribL1ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint64EXT -- ^ @v@ pointing to @1@ element of type @GLuint64EXT@.
-  -> m ()
-glVertexAttribL1ui64vNV v1 v2 = liftIO $ dyn869 ptr_glVertexAttribL1ui64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL1ui64vNV #-}
-ptr_glVertexAttribL1ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-ptr_glVertexAttribL1ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL1ui64vNV"
-
--- glVertexAttribL2d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL2d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttribL2d v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttribL2d v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribL2d #-}
-ptr_glVertexAttribL2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL2d = unsafePerformIO $ getCommand "glVertexAttribL2d"
-
--- glVertexAttribL2dEXT --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL2d'.
-glVertexAttribL2dEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttribL2dEXT v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttribL2dEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribL2dEXT #-}
-ptr_glVertexAttribL2dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL2dEXT = unsafePerformIO $ getCommand "glVertexAttribL2dEXT"
-
--- glVertexAttribL2dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL2dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL2dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL2dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL2dv #-}
-ptr_glVertexAttribL2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL2dv = unsafePerformIO $ getCommand "glVertexAttribL2dv"
-
--- glVertexAttribL2dvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL2dv'.
-glVertexAttribL2dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL2dvEXT v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL2dvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL2dvEXT #-}
-ptr_glVertexAttribL2dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL2dvEXT = unsafePerformIO $ getCommand "glVertexAttribL2dvEXT"
-
--- glVertexAttribL2i64NV -------------------------------------------------------
-
-glVertexAttribL2i64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> m ()
-glVertexAttribL2i64NV v1 v2 v3 = liftIO $ dyn870 ptr_glVertexAttribL2i64NV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribL2i64NV #-}
-ptr_glVertexAttribL2i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glVertexAttribL2i64NV = unsafePerformIO $ getCommand "glVertexAttribL2i64NV"
-
--- glVertexAttribL2i64vNV ------------------------------------------------------
-
-glVertexAttribL2i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint64EXT -- ^ @v@ pointing to @2@ elements of type @GLint64EXT@.
-  -> m ()
-glVertexAttribL2i64vNV v1 v2 = liftIO $ dyn867 ptr_glVertexAttribL2i64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL2i64vNV #-}
-ptr_glVertexAttribL2i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
-ptr_glVertexAttribL2i64vNV = unsafePerformIO $ getCommand "glVertexAttribL2i64vNV"
-
--- glVertexAttribL2ui64NV ------------------------------------------------------
-
-glVertexAttribL2ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> m ()
-glVertexAttribL2ui64NV v1 v2 v3 = liftIO $ dyn871 ptr_glVertexAttribL2ui64NV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribL2ui64NV #-}
-ptr_glVertexAttribL2ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glVertexAttribL2ui64NV = unsafePerformIO $ getCommand "glVertexAttribL2ui64NV"
-
--- glVertexAttribL2ui64vNV -----------------------------------------------------
-
-glVertexAttribL2ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint64EXT -- ^ @v@ pointing to @2@ elements of type @GLuint64EXT@.
-  -> m ()
-glVertexAttribL2ui64vNV v1 v2 = liftIO $ dyn869 ptr_glVertexAttribL2ui64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL2ui64vNV #-}
-ptr_glVertexAttribL2ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-ptr_glVertexAttribL2ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL2ui64vNV"
-
--- glVertexAttribL3d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL3d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexAttribL3d v1 v2 v3 v4 = liftIO $ dyn851 ptr_glVertexAttribL3d v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribL3d #-}
-ptr_glVertexAttribL3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL3d = unsafePerformIO $ getCommand "glVertexAttribL3d"
-
--- glVertexAttribL3dEXT --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL3d'.
-glVertexAttribL3dEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexAttribL3dEXT v1 v2 v3 v4 = liftIO $ dyn851 ptr_glVertexAttribL3dEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribL3dEXT #-}
-ptr_glVertexAttribL3dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL3dEXT = unsafePerformIO $ getCommand "glVertexAttribL3dEXT"
-
--- glVertexAttribL3dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL3dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL3dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL3dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL3dv #-}
-ptr_glVertexAttribL3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL3dv = unsafePerformIO $ getCommand "glVertexAttribL3dv"
-
--- glVertexAttribL3dvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL3dv'.
-glVertexAttribL3dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL3dvEXT v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL3dvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL3dvEXT #-}
-ptr_glVertexAttribL3dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL3dvEXT = unsafePerformIO $ getCommand "glVertexAttribL3dvEXT"
-
--- glVertexAttribL3i64NV -------------------------------------------------------
-
-glVertexAttribL3i64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> m ()
-glVertexAttribL3i64NV v1 v2 v3 v4 = liftIO $ dyn872 ptr_glVertexAttribL3i64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribL3i64NV #-}
-ptr_glVertexAttribL3i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glVertexAttribL3i64NV = unsafePerformIO $ getCommand "glVertexAttribL3i64NV"
-
--- glVertexAttribL3i64vNV ------------------------------------------------------
-
-glVertexAttribL3i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint64EXT -- ^ @v@ pointing to @3@ elements of type @GLint64EXT@.
-  -> m ()
-glVertexAttribL3i64vNV v1 v2 = liftIO $ dyn867 ptr_glVertexAttribL3i64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL3i64vNV #-}
-ptr_glVertexAttribL3i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
-ptr_glVertexAttribL3i64vNV = unsafePerformIO $ getCommand "glVertexAttribL3i64vNV"
-
--- glVertexAttribL3ui64NV ------------------------------------------------------
-
-glVertexAttribL3ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> m ()
-glVertexAttribL3ui64NV v1 v2 v3 v4 = liftIO $ dyn873 ptr_glVertexAttribL3ui64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribL3ui64NV #-}
-ptr_glVertexAttribL3ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glVertexAttribL3ui64NV = unsafePerformIO $ getCommand "glVertexAttribL3ui64NV"
-
--- glVertexAttribL3ui64vNV -----------------------------------------------------
-
-glVertexAttribL3ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint64EXT -- ^ @v@ pointing to @3@ elements of type @GLuint64EXT@.
-  -> m ()
-glVertexAttribL3ui64vNV v1 v2 = liftIO $ dyn869 ptr_glVertexAttribL3ui64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL3ui64vNV #-}
-ptr_glVertexAttribL3ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-ptr_glVertexAttribL3ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL3ui64vNV"
-
--- glVertexAttribL4d -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL4d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexAttribL4d v1 v2 v3 v4 v5 = liftIO $ dyn855 ptr_glVertexAttribL4d v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribL4d #-}
-ptr_glVertexAttribL4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL4d = unsafePerformIO $ getCommand "glVertexAttribL4d"
-
--- glVertexAttribL4dEXT --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL4d'.
-glVertexAttribL4dEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexAttribL4dEXT v1 v2 v3 v4 v5 = liftIO $ dyn855 ptr_glVertexAttribL4dEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribL4dEXT #-}
-ptr_glVertexAttribL4dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttribL4dEXT = unsafePerformIO $ getCommand "glVertexAttribL4dEXT"
-
--- glVertexAttribL4dv ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribL4dv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL4dv v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL4dv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL4dv #-}
-ptr_glVertexAttribL4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL4dv = unsafePerformIO $ getCommand "glVertexAttribL4dv"
-
--- glVertexAttribL4dvEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribL4dv'.
-glVertexAttribL4dvEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribL4dvEXT v1 v2 = liftIO $ dyn831 ptr_glVertexAttribL4dvEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL4dvEXT #-}
-ptr_glVertexAttribL4dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribL4dvEXT = unsafePerformIO $ getCommand "glVertexAttribL4dvEXT"
-
--- glVertexAttribL4i64NV -------------------------------------------------------
-
-glVertexAttribL4i64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> GLint64EXT -- ^ @w@.
-  -> m ()
-glVertexAttribL4i64NV v1 v2 v3 v4 v5 = liftIO $ dyn874 ptr_glVertexAttribL4i64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribL4i64NV #-}
-ptr_glVertexAttribL4i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glVertexAttribL4i64NV = unsafePerformIO $ getCommand "glVertexAttribL4i64NV"
-
--- glVertexAttribL4i64vNV ------------------------------------------------------
-
-glVertexAttribL4i64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint64EXT -- ^ @v@ pointing to @4@ elements of type @GLint64EXT@.
-  -> m ()
-glVertexAttribL4i64vNV v1 v2 = liftIO $ dyn867 ptr_glVertexAttribL4i64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL4i64vNV #-}
-ptr_glVertexAttribL4i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
-ptr_glVertexAttribL4i64vNV = unsafePerformIO $ getCommand "glVertexAttribL4i64vNV"
-
--- glVertexAttribL4ui64NV ------------------------------------------------------
-
-glVertexAttribL4ui64NV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint64EXT -- ^ @x@.
-  -> GLuint64EXT -- ^ @y@.
-  -> GLuint64EXT -- ^ @z@.
-  -> GLuint64EXT -- ^ @w@.
-  -> m ()
-glVertexAttribL4ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn875 ptr_glVertexAttribL4ui64NV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribL4ui64NV #-}
-ptr_glVertexAttribL4ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
-ptr_glVertexAttribL4ui64NV = unsafePerformIO $ getCommand "glVertexAttribL4ui64NV"
-
--- glVertexAttribL4ui64vNV -----------------------------------------------------
-
-glVertexAttribL4ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint64EXT -- ^ @v@ pointing to @4@ elements of type @GLuint64EXT@.
-  -> m ()
-glVertexAttribL4ui64vNV v1 v2 = liftIO $ dyn869 ptr_glVertexAttribL4ui64vNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttribL4ui64vNV #-}
-ptr_glVertexAttribL4ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
-ptr_glVertexAttribL4ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL4ui64vNV"
-
--- glVertexAttribLFormat -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
-glVertexAttribLFormat
-  :: MonadIO m
-  => GLuint -- ^ @attribindex@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLuint -- ^ @relativeoffset@.
-  -> m ()
-glVertexAttribLFormat v1 v2 v3 v4 = liftIO $ dyn863 ptr_glVertexAttribLFormat v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribLFormat #-}
-ptr_glVertexAttribLFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
-ptr_glVertexAttribLFormat = unsafePerformIO $ getCommand "glVertexAttribLFormat"
-
--- glVertexAttribLFormatNV -----------------------------------------------------
-
-glVertexAttribLFormatNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexAttribLFormatNV v1 v2 v3 v4 = liftIO $ dyn864 ptr_glVertexAttribLFormatNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribLFormatNV #-}
-ptr_glVertexAttribLFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
-ptr_glVertexAttribLFormatNV = unsafePerformIO $ getCommand "glVertexAttribLFormatNV"
-
--- glVertexAttribLPointer ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
-glVertexAttribLPointer
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
-  -> m ()
-glVertexAttribLPointer v1 v2 v3 v4 v5 = liftIO $ dyn865 ptr_glVertexAttribLPointer v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribLPointer #-}
-ptr_glVertexAttribLPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribLPointer = unsafePerformIO $ getCommand "glVertexAttribLPointer"
-
--- glVertexAttribLPointerEXT ---------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribLPointer'.
-glVertexAttribLPointerEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
-  -> m ()
-glVertexAttribLPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn865 ptr_glVertexAttribLPointerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribLPointerEXT #-}
-ptr_glVertexAttribLPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribLPointerEXT = unsafePerformIO $ getCommand "glVertexAttribLPointerEXT"
-
--- glVertexAttribP1ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribP1ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexAttribP1ui v1 v2 v3 v4 = liftIO $ dyn876 ptr_glVertexAttribP1ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP1ui #-}
-ptr_glVertexAttribP1ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexAttribP1ui = unsafePerformIO $ getCommand "glVertexAttribP1ui"
-
--- glVertexAttribP1uiv ---------------------------------------------------------
-
-glVertexAttribP1uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribP1uiv v1 v2 v3 v4 = liftIO $ dyn877 ptr_glVertexAttribP1uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP1uiv #-}
-ptr_glVertexAttribP1uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
-ptr_glVertexAttribP1uiv = unsafePerformIO $ getCommand "glVertexAttribP1uiv"
-
--- glVertexAttribP2ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribP2ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexAttribP2ui v1 v2 v3 v4 = liftIO $ dyn876 ptr_glVertexAttribP2ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP2ui #-}
-ptr_glVertexAttribP2ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexAttribP2ui = unsafePerformIO $ getCommand "glVertexAttribP2ui"
-
--- glVertexAttribP2uiv ---------------------------------------------------------
-
-glVertexAttribP2uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribP2uiv v1 v2 v3 v4 = liftIO $ dyn877 ptr_glVertexAttribP2uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP2uiv #-}
-ptr_glVertexAttribP2uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
-ptr_glVertexAttribP2uiv = unsafePerformIO $ getCommand "glVertexAttribP2uiv"
-
--- glVertexAttribP3ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribP3ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexAttribP3ui v1 v2 v3 v4 = liftIO $ dyn876 ptr_glVertexAttribP3ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP3ui #-}
-ptr_glVertexAttribP3ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexAttribP3ui = unsafePerformIO $ getCommand "glVertexAttribP3ui"
+  glVertexAttrib3dv,
+  glVertexAttrib3dvARB,
+  glVertexAttrib3dvNV,
+  glVertexAttrib3f,
+  glVertexAttrib3fARB,
+  glVertexAttrib3fNV,
+  glVertexAttrib3fv,
+  glVertexAttrib3fvARB,
+  glVertexAttrib3fvNV,
+  glVertexAttrib3hNV,
+  glVertexAttrib3hvNV,
+  glVertexAttrib3s,
+  glVertexAttrib3sARB,
+  glVertexAttrib3sNV,
+  glVertexAttrib3sv,
+  glVertexAttrib3svARB,
+  glVertexAttrib3svNV,
+  glVertexAttrib4Nbv,
+  glVertexAttrib4NbvARB,
+  glVertexAttrib4Niv,
+  glVertexAttrib4NivARB,
+  glVertexAttrib4Nsv,
+  glVertexAttrib4NsvARB,
+  glVertexAttrib4Nub,
+  glVertexAttrib4NubARB,
+  glVertexAttrib4Nubv,
+  glVertexAttrib4NubvARB,
+  glVertexAttrib4Nuiv,
+  glVertexAttrib4NuivARB,
+  glVertexAttrib4Nusv,
+  glVertexAttrib4NusvARB,
+  glVertexAttrib4bv,
+  glVertexAttrib4bvARB,
+  glVertexAttrib4d,
+  glVertexAttrib4dARB,
+  glVertexAttrib4dNV,
+  glVertexAttrib4dv,
+  glVertexAttrib4dvARB,
+  glVertexAttrib4dvNV,
+  glVertexAttrib4f,
+  glVertexAttrib4fARB,
+  glVertexAttrib4fNV,
+  glVertexAttrib4fv,
+  glVertexAttrib4fvARB,
+  glVertexAttrib4fvNV,
+  glVertexAttrib4hNV,
+  glVertexAttrib4hvNV,
+  glVertexAttrib4iv,
+  glVertexAttrib4ivARB,
+  glVertexAttrib4s,
+  glVertexAttrib4sARB,
+  glVertexAttrib4sNV,
+  glVertexAttrib4sv,
+  glVertexAttrib4svARB,
+  glVertexAttrib4svNV,
+  glVertexAttrib4ubNV,
+  glVertexAttrib4ubv,
+  glVertexAttrib4ubvARB,
+  glVertexAttrib4ubvNV,
+  glVertexAttrib4uiv,
+  glVertexAttrib4uivARB,
+  glVertexAttrib4usv,
+  glVertexAttrib4usvARB,
+  glVertexAttribArrayObjectATI,
+  glVertexAttribBinding,
+  glVertexAttribDivisor,
+  glVertexAttribDivisorANGLE,
+  glVertexAttribDivisorARB,
+  glVertexAttribDivisorEXT,
+  glVertexAttribDivisorNV,
+  glVertexAttribFormat,
+  glVertexAttribFormatNV,
+  glVertexAttribI1i,
+  glVertexAttribI1iEXT,
+  glVertexAttribI1iv,
+  glVertexAttribI1ivEXT,
+  glVertexAttribI1ui,
+  glVertexAttribI1uiEXT,
+  glVertexAttribI1uiv,
+  glVertexAttribI1uivEXT,
+  glVertexAttribI2i,
+  glVertexAttribI2iEXT,
+  glVertexAttribI2iv,
+  glVertexAttribI2ivEXT,
+  glVertexAttribI2ui,
+  glVertexAttribI2uiEXT,
+  glVertexAttribI2uiv,
+  glVertexAttribI2uivEXT,
+  glVertexAttribI3i,
+  glVertexAttribI3iEXT,
+  glVertexAttribI3iv,
+  glVertexAttribI3ivEXT,
+  glVertexAttribI3ui,
+  glVertexAttribI3uiEXT,
+  glVertexAttribI3uiv,
+  glVertexAttribI3uivEXT,
+  glVertexAttribI4bv,
+  glVertexAttribI4bvEXT,
+  glVertexAttribI4i,
+  glVertexAttribI4iEXT
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glVertexAttrib3dv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib3dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib3dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib3dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3dv #-}
+ptr_glVertexAttrib3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib3dv = unsafePerformIO $ getCommand "glVertexAttrib3dv"
+
+-- glVertexAttrib3dvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3dv'.
+glVertexAttrib3dvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib3dvARB v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib3dvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3dvARB #-}
+ptr_glVertexAttrib3dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib3dvARB = unsafePerformIO $ getCommand "glVertexAttrib3dvARB"
+
+-- glVertexAttrib3dvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3dv'.
+glVertexAttrib3dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib3dvNV v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib3dvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3dvNV #-}
+ptr_glVertexAttrib3dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib3dvNV = unsafePerformIO $ getCommand "glVertexAttrib3dvNV"
+
+-- glVertexAttrib3f ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3fv'.
+glVertexAttrib3f
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glVertexAttrib3f v1 v2 v3 v4 = liftIO $ dyn718 ptr_glVertexAttrib3f v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3f #-}
+ptr_glVertexAttrib3f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib3f = unsafePerformIO $ getCommand "glVertexAttrib3f"
+
+-- glVertexAttrib3fARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3fvARB'. This command is an alias for 'glVertexAttrib3f'.
+glVertexAttrib3fARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glVertexAttrib3fARB v1 v2 v3 v4 = liftIO $ dyn718 ptr_glVertexAttrib3fARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3fARB #-}
+ptr_glVertexAttrib3fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib3fARB = unsafePerformIO $ getCommand "glVertexAttrib3fARB"
+
+-- glVertexAttrib3fNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3fvNV'. This command is an alias for 'glVertexAttrib3f'.
+glVertexAttrib3fNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glVertexAttrib3fNV v1 v2 v3 v4 = liftIO $ dyn718 ptr_glVertexAttrib3fNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3fNV #-}
+ptr_glVertexAttrib3fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib3fNV = unsafePerformIO $ getCommand "glVertexAttrib3fNV"
+
+-- glVertexAttrib3fv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib3fv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib3fv v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib3fv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3fv #-}
+ptr_glVertexAttrib3fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib3fv = unsafePerformIO $ getCommand "glVertexAttrib3fv"
+
+-- glVertexAttrib3fvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3fv'.
+glVertexAttrib3fvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib3fvARB v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib3fvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3fvARB #-}
+ptr_glVertexAttrib3fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib3fvARB = unsafePerformIO $ getCommand "glVertexAttrib3fvARB"
+
+-- glVertexAttrib3fvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3fv'.
+glVertexAttrib3fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib3fvNV v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib3fvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3fvNV #-}
+ptr_glVertexAttrib3fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib3fvNV = unsafePerformIO $ getCommand "glVertexAttrib3fvNV"
+
+-- glVertexAttrib3hNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3hvNV'.
+glVertexAttrib3hNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
+  -> m ()
+glVertexAttrib3hNV v1 v2 v3 v4 = liftIO $ dyn885 ptr_glVertexAttrib3hNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3hNV #-}
+ptr_glVertexAttrib3hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertexAttrib3hNV = unsafePerformIO $ getCommand "glVertexAttrib3hNV"
+
+-- glVertexAttrib3hvNV ---------------------------------------------------------
+
+glVertexAttrib3hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttrib3hvNV v1 v2 = liftIO $ dyn880 ptr_glVertexAttrib3hvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3hvNV #-}
+ptr_glVertexAttrib3hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttrib3hvNV = unsafePerformIO $ getCommand "glVertexAttrib3hvNV"
+
+-- glVertexAttrib3s ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib3sv'.
+glVertexAttrib3s
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> m ()
+glVertexAttrib3s v1 v2 v3 v4 = liftIO $ dyn886 ptr_glVertexAttrib3s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3s #-}
+ptr_glVertexAttrib3s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib3s = unsafePerformIO $ getCommand "glVertexAttrib3s"
+
+-- glVertexAttrib3sARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3svARB'. This command is an alias for 'glVertexAttrib3s'.
+glVertexAttrib3sARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> m ()
+glVertexAttrib3sARB v1 v2 v3 v4 = liftIO $ dyn886 ptr_glVertexAttrib3sARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3sARB #-}
+ptr_glVertexAttrib3sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib3sARB = unsafePerformIO $ getCommand "glVertexAttrib3sARB"
+
+-- glVertexAttrib3sNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib3svNV'. This command is an alias for 'glVertexAttrib3s'.
+glVertexAttrib3sNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> m ()
+glVertexAttrib3sNV v1 v2 v3 v4 = liftIO $ dyn886 ptr_glVertexAttrib3sNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttrib3sNV #-}
+ptr_glVertexAttrib3sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib3sNV = unsafePerformIO $ getCommand "glVertexAttrib3sNV"
+
+-- glVertexAttrib3sv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib3sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib3sv v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib3sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3sv #-}
+ptr_glVertexAttrib3sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib3sv = unsafePerformIO $ getCommand "glVertexAttrib3sv"
+
+-- glVertexAttrib3svARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3sv'.
+glVertexAttrib3svARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib3svARB v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib3svARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3svARB #-}
+ptr_glVertexAttrib3svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib3svARB = unsafePerformIO $ getCommand "glVertexAttrib3svARB"
+
+-- glVertexAttrib3svNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib3sv'.
+glVertexAttrib3svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib3svNV v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib3svNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib3svNV #-}
+ptr_glVertexAttrib3svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib3svNV = unsafePerformIO $ getCommand "glVertexAttrib3svNV"
+
+-- glVertexAttrib4Nbv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nbv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttrib4Nbv v1 v2 = liftIO $ dyn863 ptr_glVertexAttrib4Nbv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Nbv #-}
+ptr_glVertexAttrib4Nbv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttrib4Nbv = unsafePerformIO $ getCommand "glVertexAttrib4Nbv"
+
+-- glVertexAttrib4NbvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nbv'.
+glVertexAttrib4NbvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttrib4NbvARB v1 v2 = liftIO $ dyn863 ptr_glVertexAttrib4NbvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NbvARB #-}
+ptr_glVertexAttrib4NbvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttrib4NbvARB = unsafePerformIO $ getCommand "glVertexAttrib4NbvARB"
+
+-- glVertexAttrib4Niv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Niv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttrib4Niv v1 v2 = liftIO $ dyn726 ptr_glVertexAttrib4Niv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Niv #-}
+ptr_glVertexAttrib4Niv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttrib4Niv = unsafePerformIO $ getCommand "glVertexAttrib4Niv"
+
+-- glVertexAttrib4NivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Niv'.
+glVertexAttrib4NivARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttrib4NivARB v1 v2 = liftIO $ dyn726 ptr_glVertexAttrib4NivARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NivARB #-}
+ptr_glVertexAttrib4NivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttrib4NivARB = unsafePerformIO $ getCommand "glVertexAttrib4NivARB"
+
+-- glVertexAttrib4Nsv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nsv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib4Nsv v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib4Nsv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Nsv #-}
+ptr_glVertexAttrib4Nsv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib4Nsv = unsafePerformIO $ getCommand "glVertexAttrib4Nsv"
+
+-- glVertexAttrib4NsvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nsv'.
+glVertexAttrib4NsvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib4NsvARB v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib4NsvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NsvARB #-}
+ptr_glVertexAttrib4NsvARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib4NsvARB = unsafePerformIO $ getCommand "glVertexAttrib4NsvARB"
+
+-- glVertexAttrib4Nub ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nub
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLubyte -- ^ @x@.
+  -> GLubyte -- ^ @y@.
+  -> GLubyte -- ^ @z@.
+  -> GLubyte -- ^ @w@.
+  -> m ()
+glVertexAttrib4Nub v1 v2 v3 v4 v5 = liftIO $ dyn887 ptr_glVertexAttrib4Nub v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4Nub #-}
+ptr_glVertexAttrib4Nub :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
+ptr_glVertexAttrib4Nub = unsafePerformIO $ getCommand "glVertexAttrib4Nub"
+
+-- glVertexAttrib4NubARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nub'.
+glVertexAttrib4NubARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLubyte -- ^ @x@.
+  -> GLubyte -- ^ @y@.
+  -> GLubyte -- ^ @z@.
+  -> GLubyte -- ^ @w@.
+  -> m ()
+glVertexAttrib4NubARB v1 v2 v3 v4 v5 = liftIO $ dyn887 ptr_glVertexAttrib4NubARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4NubARB #-}
+ptr_glVertexAttrib4NubARB :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
+ptr_glVertexAttrib4NubARB = unsafePerformIO $ getCommand "glVertexAttrib4NubARB"
+
+-- glVertexAttrib4Nubv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nubv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttrib4Nubv v1 v2 = liftIO $ dyn385 ptr_glVertexAttrib4Nubv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Nubv #-}
+ptr_glVertexAttrib4Nubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttrib4Nubv = unsafePerformIO $ getCommand "glVertexAttrib4Nubv"
+
+-- glVertexAttrib4NubvARB ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nubv'.
+glVertexAttrib4NubvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttrib4NubvARB v1 v2 = liftIO $ dyn385 ptr_glVertexAttrib4NubvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NubvARB #-}
+ptr_glVertexAttrib4NubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttrib4NubvARB = unsafePerformIO $ getCommand "glVertexAttrib4NubvARB"
+
+-- glVertexAttrib4Nuiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nuiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttrib4Nuiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttrib4Nuiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Nuiv #-}
+ptr_glVertexAttrib4Nuiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttrib4Nuiv = unsafePerformIO $ getCommand "glVertexAttrib4Nuiv"
+
+-- glVertexAttrib4NuivARB ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nuiv'.
+glVertexAttrib4NuivARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttrib4NuivARB v1 v2 = liftIO $ dyn197 ptr_glVertexAttrib4NuivARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NuivARB #-}
+ptr_glVertexAttrib4NuivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttrib4NuivARB = unsafePerformIO $ getCommand "glVertexAttrib4NuivARB"
+
+-- glVertexAttrib4Nusv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4Nusv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttrib4Nusv v1 v2 = liftIO $ dyn866 ptr_glVertexAttrib4Nusv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4Nusv #-}
+ptr_glVertexAttrib4Nusv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttrib4Nusv = unsafePerformIO $ getCommand "glVertexAttrib4Nusv"
+
+-- glVertexAttrib4NusvARB ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nusv'.
+glVertexAttrib4NusvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttrib4NusvARB v1 v2 = liftIO $ dyn866 ptr_glVertexAttrib4NusvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4NusvARB #-}
+ptr_glVertexAttrib4NusvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttrib4NusvARB = unsafePerformIO $ getCommand "glVertexAttrib4NusvARB"
+
+-- glVertexAttrib4bv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4bv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttrib4bv v1 v2 = liftIO $ dyn863 ptr_glVertexAttrib4bv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4bv #-}
+ptr_glVertexAttrib4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttrib4bv = unsafePerformIO $ getCommand "glVertexAttrib4bv"
+
+-- glVertexAttrib4bvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4bv'.
+glVertexAttrib4bvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttrib4bvARB v1 v2 = liftIO $ dyn863 ptr_glVertexAttrib4bvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4bvARB #-}
+ptr_glVertexAttrib4bvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttrib4bvARB = unsafePerformIO $ getCommand "glVertexAttrib4bvARB"
+
+-- glVertexAttrib4d ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4dv'.
+glVertexAttrib4d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexAttrib4d v1 v2 v3 v4 v5 = liftIO $ dyn888 ptr_glVertexAttrib4d v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4d #-}
+ptr_glVertexAttrib4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib4d = unsafePerformIO $ getCommand "glVertexAttrib4d"
+
+-- glVertexAttrib4dARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4dvARB'. This command is an alias for 'glVertexAttrib4d'.
+glVertexAttrib4dARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexAttrib4dARB v1 v2 v3 v4 v5 = liftIO $ dyn888 ptr_glVertexAttrib4dARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4dARB #-}
+ptr_glVertexAttrib4dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib4dARB = unsafePerformIO $ getCommand "glVertexAttrib4dARB"
+
+-- glVertexAttrib4dNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4dvNV'. This command is an alias for 'glVertexAttrib4d'.
+glVertexAttrib4dNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexAttrib4dNV v1 v2 v3 v4 v5 = liftIO $ dyn888 ptr_glVertexAttrib4dNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4dNV #-}
+ptr_glVertexAttrib4dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib4dNV = unsafePerformIO $ getCommand "glVertexAttrib4dNV"
+
+-- glVertexAttrib4dv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib4dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib4dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4dv #-}
+ptr_glVertexAttrib4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib4dv = unsafePerformIO $ getCommand "glVertexAttrib4dv"
+
+-- glVertexAttrib4dvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4dv'.
+glVertexAttrib4dvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib4dvARB v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib4dvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4dvARB #-}
+ptr_glVertexAttrib4dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib4dvARB = unsafePerformIO $ getCommand "glVertexAttrib4dvARB"
+
+-- glVertexAttrib4dvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4dv'.
+glVertexAttrib4dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttrib4dvNV v1 v2 = liftIO $ dyn864 ptr_glVertexAttrib4dvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4dvNV #-}
+ptr_glVertexAttrib4dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttrib4dvNV = unsafePerformIO $ getCommand "glVertexAttrib4dvNV"
+
+-- glVertexAttrib4f ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4fv'.
+glVertexAttrib4f
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glVertexAttrib4f v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glVertexAttrib4f v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4f #-}
+ptr_glVertexAttrib4f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib4f = unsafePerformIO $ getCommand "glVertexAttrib4f"
+
+-- glVertexAttrib4fARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4fvARB'. This command is an alias for 'glVertexAttrib4f'.
+glVertexAttrib4fARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glVertexAttrib4fARB v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glVertexAttrib4fARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4fARB #-}
+ptr_glVertexAttrib4fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib4fARB = unsafePerformIO $ getCommand "glVertexAttrib4fARB"
+
+-- glVertexAttrib4fNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4fvNV'. This command is an alias for 'glVertexAttrib4f'.
+glVertexAttrib4fNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glVertexAttrib4fNV v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glVertexAttrib4fNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4fNV #-}
+ptr_glVertexAttrib4fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib4fNV = unsafePerformIO $ getCommand "glVertexAttrib4fNV"
+
+-- glVertexAttrib4fv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4fv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib4fv v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib4fv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4fv #-}
+ptr_glVertexAttrib4fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib4fv = unsafePerformIO $ getCommand "glVertexAttrib4fv"
+
+-- glVertexAttrib4fvARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4fv'.
+glVertexAttrib4fvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib4fvARB v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib4fvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4fvARB #-}
+ptr_glVertexAttrib4fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib4fvARB = unsafePerformIO $ getCommand "glVertexAttrib4fvARB"
+
+-- glVertexAttrib4fvNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4fv'.
+glVertexAttrib4fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib4fvNV v1 v2 = liftIO $ dyn386 ptr_glVertexAttrib4fvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4fvNV #-}
+ptr_glVertexAttrib4fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib4fvNV = unsafePerformIO $ getCommand "glVertexAttrib4fvNV"
+
+-- glVertexAttrib4hNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4hvNV'.
+glVertexAttrib4hNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
+  -> m ()
+glVertexAttrib4hNV v1 v2 v3 v4 v5 = liftIO $ dyn890 ptr_glVertexAttrib4hNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4hNV #-}
+ptr_glVertexAttrib4hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glVertexAttrib4hNV = unsafePerformIO $ getCommand "glVertexAttrib4hNV"
+
+-- glVertexAttrib4hvNV ---------------------------------------------------------
+
+glVertexAttrib4hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttrib4hvNV v1 v2 = liftIO $ dyn880 ptr_glVertexAttrib4hvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4hvNV #-}
+ptr_glVertexAttrib4hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttrib4hvNV = unsafePerformIO $ getCommand "glVertexAttrib4hvNV"
+
+-- glVertexAttrib4iv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttrib4iv v1 v2 = liftIO $ dyn726 ptr_glVertexAttrib4iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4iv #-}
+ptr_glVertexAttrib4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttrib4iv = unsafePerformIO $ getCommand "glVertexAttrib4iv"
+
+-- glVertexAttrib4ivARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4iv'.
+glVertexAttrib4ivARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttrib4ivARB v1 v2 = liftIO $ dyn726 ptr_glVertexAttrib4ivARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4ivARB #-}
+ptr_glVertexAttrib4ivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttrib4ivARB = unsafePerformIO $ getCommand "glVertexAttrib4ivARB"
+
+-- glVertexAttrib4s ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttrib4sv'.
+glVertexAttrib4s
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> GLshort -- ^ @w@.
+  -> m ()
+glVertexAttrib4s v1 v2 v3 v4 v5 = liftIO $ dyn891 ptr_glVertexAttrib4s v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4s #-}
+ptr_glVertexAttrib4s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib4s = unsafePerformIO $ getCommand "glVertexAttrib4s"
+
+-- glVertexAttrib4sARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4svARB'. This command is an alias for 'glVertexAttrib4s'.
+glVertexAttrib4sARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> GLshort -- ^ @w@.
+  -> m ()
+glVertexAttrib4sARB v1 v2 v3 v4 v5 = liftIO $ dyn891 ptr_glVertexAttrib4sARB v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4sARB #-}
+ptr_glVertexAttrib4sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib4sARB = unsafePerformIO $ getCommand "glVertexAttrib4sARB"
+
+-- glVertexAttrib4sNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4svNV'. This command is an alias for 'glVertexAttrib4s'.
+glVertexAttrib4sNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> GLshort -- ^ @w@.
+  -> m ()
+glVertexAttrib4sNV v1 v2 v3 v4 v5 = liftIO $ dyn891 ptr_glVertexAttrib4sNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4sNV #-}
+ptr_glVertexAttrib4sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexAttrib4sNV = unsafePerformIO $ getCommand "glVertexAttrib4sNV"
+
+-- glVertexAttrib4sv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib4sv v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib4sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4sv #-}
+ptr_glVertexAttrib4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib4sv = unsafePerformIO $ getCommand "glVertexAttrib4sv"
+
+-- glVertexAttrib4svARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4sv'.
+glVertexAttrib4svARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib4svARB v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib4svARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4svARB #-}
+ptr_glVertexAttrib4svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib4svARB = unsafePerformIO $ getCommand "glVertexAttrib4svARB"
+
+-- glVertexAttrib4svNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4sv'.
+glVertexAttrib4svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttrib4svNV v1 v2 = liftIO $ dyn865 ptr_glVertexAttrib4svNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4svNV #-}
+ptr_glVertexAttrib4svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib4svNV = unsafePerformIO $ getCommand "glVertexAttrib4svNV"
+
+-- glVertexAttrib4ubNV ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib4ubvNV'. This command is an alias for 'glVertexAttrib4Nub'.
+glVertexAttrib4ubNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLubyte -- ^ @x@ of type @ColorUB@.
+  -> GLubyte -- ^ @y@ of type @ColorUB@.
+  -> GLubyte -- ^ @z@ of type @ColorUB@.
+  -> GLubyte -- ^ @w@ of type @ColorUB@.
+  -> m ()
+glVertexAttrib4ubNV v1 v2 v3 v4 v5 = liftIO $ dyn887 ptr_glVertexAttrib4ubNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttrib4ubNV #-}
+ptr_glVertexAttrib4ubNV :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
+ptr_glVertexAttrib4ubNV = unsafePerformIO $ getCommand "glVertexAttrib4ubNV"
+
+-- glVertexAttrib4ubv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4ubv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttrib4ubv v1 v2 = liftIO $ dyn385 ptr_glVertexAttrib4ubv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4ubv #-}
+ptr_glVertexAttrib4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttrib4ubv = unsafePerformIO $ getCommand "glVertexAttrib4ubv"
+
+-- glVertexAttrib4ubvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4ubv'.
+glVertexAttrib4ubvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttrib4ubvARB v1 v2 = liftIO $ dyn385 ptr_glVertexAttrib4ubvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4ubvARB #-}
+ptr_glVertexAttrib4ubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttrib4ubvARB = unsafePerformIO $ getCommand "glVertexAttrib4ubvARB"
+
+-- glVertexAttrib4ubvNV --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4Nubv'.
+glVertexAttrib4ubvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @ColorUB@.
+  -> m ()
+glVertexAttrib4ubvNV v1 v2 = liftIO $ dyn385 ptr_glVertexAttrib4ubvNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4ubvNV #-}
+ptr_glVertexAttrib4ubvNV :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttrib4ubvNV = unsafePerformIO $ getCommand "glVertexAttrib4ubvNV"
+
+-- glVertexAttrib4uiv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttrib4uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttrib4uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4uiv #-}
+ptr_glVertexAttrib4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttrib4uiv = unsafePerformIO $ getCommand "glVertexAttrib4uiv"
+
+-- glVertexAttrib4uivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4uiv'.
+glVertexAttrib4uivARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttrib4uivARB v1 v2 = liftIO $ dyn197 ptr_glVertexAttrib4uivARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4uivARB #-}
+ptr_glVertexAttrib4uivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttrib4uivARB = unsafePerformIO $ getCommand "glVertexAttrib4uivARB"
+
+-- glVertexAttrib4usv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib4usv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttrib4usv v1 v2 = liftIO $ dyn866 ptr_glVertexAttrib4usv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4usv #-}
+ptr_glVertexAttrib4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttrib4usv = unsafePerformIO $ getCommand "glVertexAttrib4usv"
+
+-- glVertexAttrib4usvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib4usv'.
+glVertexAttrib4usvARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttrib4usvARB v1 v2 = liftIO $ dyn866 ptr_glVertexAttrib4usvARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib4usvARB #-}
+ptr_glVertexAttrib4usvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttrib4usvARB = unsafePerformIO $ getCommand "glVertexAttrib4usvARB"
+
+-- glVertexAttribArrayObjectATI ------------------------------------------------
+
+glVertexAttribArrayObjectATI
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLsizei -- ^ @stride@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @offset@.
+  -> m ()
+glVertexAttribArrayObjectATI v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn892 ptr_glVertexAttribArrayObjectATI v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glVertexAttribArrayObjectATI #-}
+ptr_glVertexAttribArrayObjectATI :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribArrayObjectATI = unsafePerformIO $ getCommand "glVertexAttribArrayObjectATI"
+
+-- glVertexAttribBinding -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>.
+glVertexAttribBinding
+  :: MonadIO m
+  => GLuint -- ^ @attribindex@.
+  -> GLuint -- ^ @bindingindex@.
+  -> m ()
+glVertexAttribBinding v1 v2 = liftIO $ dyn4 ptr_glVertexAttribBinding v1 v2
+
+{-# NOINLINE ptr_glVertexAttribBinding #-}
+ptr_glVertexAttribBinding :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribBinding = unsafePerformIO $ getCommand "glVertexAttribBinding"
+
+-- glVertexAttribDivisor -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribDivisor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribDivisor.xhtml OpenGL 4.x>.
+glVertexAttribDivisor
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexAttribDivisor v1 v2 = liftIO $ dyn4 ptr_glVertexAttribDivisor v1 v2
+
+{-# NOINLINE ptr_glVertexAttribDivisor #-}
+ptr_glVertexAttribDivisor :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribDivisor = unsafePerformIO $ getCommand "glVertexAttribDivisor"
+
+-- glVertexAttribDivisorANGLE --------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribDivisor'.
+glVertexAttribDivisorANGLE
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexAttribDivisorANGLE v1 v2 = liftIO $ dyn4 ptr_glVertexAttribDivisorANGLE v1 v2
+
+{-# NOINLINE ptr_glVertexAttribDivisorANGLE #-}
+ptr_glVertexAttribDivisorANGLE :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribDivisorANGLE = unsafePerformIO $ getCommand "glVertexAttribDivisorANGLE"
+
+-- glVertexAttribDivisorARB ----------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribDivisor'.
+glVertexAttribDivisorARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexAttribDivisorARB v1 v2 = liftIO $ dyn4 ptr_glVertexAttribDivisorARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttribDivisorARB #-}
+ptr_glVertexAttribDivisorARB :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribDivisorARB = unsafePerformIO $ getCommand "glVertexAttribDivisorARB"
+
+-- glVertexAttribDivisorEXT ----------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribDivisor'.
+glVertexAttribDivisorEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexAttribDivisorEXT v1 v2 = liftIO $ dyn4 ptr_glVertexAttribDivisorEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribDivisorEXT #-}
+ptr_glVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexAttribDivisorEXT"
+
+-- glVertexAttribDivisorNV -----------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribDivisor'.
+glVertexAttribDivisorNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexAttribDivisorNV v1 v2 = liftIO $ dyn4 ptr_glVertexAttribDivisorNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribDivisorNV #-}
+ptr_glVertexAttribDivisorNV :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribDivisorNV = unsafePerformIO $ getCommand "glVertexAttribDivisorNV"
+
+-- glVertexAttribFormat --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexAttribFormat
+  :: MonadIO m
+  => GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexAttribFormat v1 v2 v3 v4 v5 = liftIO $ dyn893 ptr_glVertexAttribFormat v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribFormat #-}
+ptr_glVertexAttribFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexAttribFormat = unsafePerformIO $ getCommand "glVertexAttribFormat"
+
+-- glVertexAttribFormatNV ------------------------------------------------------
+
+glVertexAttribFormatNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexAttribFormatNV v1 v2 v3 v4 v5 = liftIO $ dyn894 ptr_glVertexAttribFormatNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribFormatNV #-}
+ptr_glVertexAttribFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
+ptr_glVertexAttribFormatNV = unsafePerformIO $ getCommand "glVertexAttribFormatNV"
+
+-- glVertexAttribI1i -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI1iv'.
+glVertexAttribI1i
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> m ()
+glVertexAttribI1i v1 v2 = liftIO $ dyn490 ptr_glVertexAttribI1i v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1i #-}
+ptr_glVertexAttribI1i :: FunPtr (GLuint -> GLint -> IO ())
+ptr_glVertexAttribI1i = unsafePerformIO $ getCommand "glVertexAttribI1i"
+
+-- glVertexAttribI1iEXT --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI1ivEXT'. This command is an alias for 'glVertexAttribI1i'.
+glVertexAttribI1iEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> m ()
+glVertexAttribI1iEXT v1 v2 = liftIO $ dyn490 ptr_glVertexAttribI1iEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1iEXT #-}
+ptr_glVertexAttribI1iEXT :: FunPtr (GLuint -> GLint -> IO ())
+ptr_glVertexAttribI1iEXT = unsafePerformIO $ getCommand "glVertexAttribI1iEXT"
+
+-- glVertexAttribI1iv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI1iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glVertexAttribI1iv v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI1iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1iv #-}
+ptr_glVertexAttribI1iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI1iv = unsafePerformIO $ getCommand "glVertexAttribI1iv"
+
+-- glVertexAttribI1ivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI1iv'.
+glVertexAttribI1ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glVertexAttribI1ivEXT v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI1ivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1ivEXT #-}
+ptr_glVertexAttribI1ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI1ivEXT = unsafePerformIO $ getCommand "glVertexAttribI1ivEXT"
+
+-- glVertexAttribI1ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI1uiv'.
+glVertexAttribI1ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> m ()
+glVertexAttribI1ui v1 v2 = liftIO $ dyn4 ptr_glVertexAttribI1ui v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1ui #-}
+ptr_glVertexAttribI1ui :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI1ui = unsafePerformIO $ getCommand "glVertexAttribI1ui"
+
+-- glVertexAttribI1uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI1uivEXT'. This command is an alias for 'glVertexAttribI1ui'.
+glVertexAttribI1uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> m ()
+glVertexAttribI1uiEXT v1 v2 = liftIO $ dyn4 ptr_glVertexAttribI1uiEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1uiEXT #-}
+ptr_glVertexAttribI1uiEXT :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI1uiEXT = unsafePerformIO $ getCommand "glVertexAttribI1uiEXT"
+
+-- glVertexAttribI1uiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI1uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribI1uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI1uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1uiv #-}
+ptr_glVertexAttribI1uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI1uiv = unsafePerformIO $ getCommand "glVertexAttribI1uiv"
+
+-- glVertexAttribI1uivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI1uiv'.
+glVertexAttribI1uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribI1uivEXT v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI1uivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1uivEXT #-}
+ptr_glVertexAttribI1uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI1uivEXT = unsafePerformIO $ getCommand "glVertexAttribI1uivEXT"
+
+-- glVertexAttribI2i -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI2iv'.
+glVertexAttribI2i
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> m ()
+glVertexAttribI2i v1 v2 v3 = liftIO $ dyn658 ptr_glVertexAttribI2i v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribI2i #-}
+ptr_glVertexAttribI2i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI2i = unsafePerformIO $ getCommand "glVertexAttribI2i"
+
+-- glVertexAttribI2iEXT --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI2ivEXT'. This command is an alias for 'glVertexAttribI2i'.
+glVertexAttribI2iEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> m ()
+glVertexAttribI2iEXT v1 v2 v3 = liftIO $ dyn658 ptr_glVertexAttribI2iEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribI2iEXT #-}
+ptr_glVertexAttribI2iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI2iEXT = unsafePerformIO $ getCommand "glVertexAttribI2iEXT"
+
+-- glVertexAttribI2iv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI2iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI2iv v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI2iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI2iv #-}
+ptr_glVertexAttribI2iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI2iv = unsafePerformIO $ getCommand "glVertexAttribI2iv"
+
+-- glVertexAttribI2ivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI2iv'.
+glVertexAttribI2ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI2ivEXT v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI2ivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI2ivEXT #-}
+ptr_glVertexAttribI2ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI2ivEXT = unsafePerformIO $ getCommand "glVertexAttribI2ivEXT"
+
+-- glVertexAttribI2ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI2uiv'.
+glVertexAttribI2ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> m ()
+glVertexAttribI2ui v1 v2 v3 = liftIO $ dyn105 ptr_glVertexAttribI2ui v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribI2ui #-}
+ptr_glVertexAttribI2ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI2ui = unsafePerformIO $ getCommand "glVertexAttribI2ui"
+
+-- glVertexAttribI2uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI2uivEXT'. This command is an alias for 'glVertexAttribI2ui'.
+glVertexAttribI2uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> m ()
+glVertexAttribI2uiEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexAttribI2uiEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribI2uiEXT #-}
+ptr_glVertexAttribI2uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI2uiEXT = unsafePerformIO $ getCommand "glVertexAttribI2uiEXT"
+
+-- glVertexAttribI2uiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI2uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI2uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI2uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI2uiv #-}
+ptr_glVertexAttribI2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI2uiv = unsafePerformIO $ getCommand "glVertexAttribI2uiv"
+
+-- glVertexAttribI2uivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI2uiv'.
+glVertexAttribI2uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI2uivEXT v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI2uivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI2uivEXT #-}
+ptr_glVertexAttribI2uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI2uivEXT = unsafePerformIO $ getCommand "glVertexAttribI2uivEXT"
+
+-- glVertexAttribI3i -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI3iv'.
+glVertexAttribI3i
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> m ()
+glVertexAttribI3i v1 v2 v3 v4 = liftIO $ dyn668 ptr_glVertexAttribI3i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribI3i #-}
+ptr_glVertexAttribI3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI3i = unsafePerformIO $ getCommand "glVertexAttribI3i"
+
+-- glVertexAttribI3iEXT --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI3ivEXT'. This command is an alias for 'glVertexAttribI3i'.
+glVertexAttribI3iEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> m ()
+glVertexAttribI3iEXT v1 v2 v3 v4 = liftIO $ dyn668 ptr_glVertexAttribI3iEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribI3iEXT #-}
+ptr_glVertexAttribI3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI3iEXT = unsafePerformIO $ getCommand "glVertexAttribI3iEXT"
+
+-- glVertexAttribI3iv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI3iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI3iv v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI3iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI3iv #-}
+ptr_glVertexAttribI3iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI3iv = unsafePerformIO $ getCommand "glVertexAttribI3iv"
+
+-- glVertexAttribI3ivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI3iv'.
+glVertexAttribI3ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI3ivEXT v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI3ivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI3ivEXT #-}
+ptr_glVertexAttribI3ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI3ivEXT = unsafePerformIO $ getCommand "glVertexAttribI3ivEXT"
+
+-- glVertexAttribI3ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI3uiv'.
+glVertexAttribI3ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> m ()
+glVertexAttribI3ui v1 v2 v3 v4 = liftIO $ dyn80 ptr_glVertexAttribI3ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribI3ui #-}
+ptr_glVertexAttribI3ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI3ui = unsafePerformIO $ getCommand "glVertexAttribI3ui"
+
+-- glVertexAttribI3uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI3uivEXT'. This command is an alias for 'glVertexAttribI3ui'.
+glVertexAttribI3uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> m ()
+glVertexAttribI3uiEXT v1 v2 v3 v4 = liftIO $ dyn80 ptr_glVertexAttribI3uiEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribI3uiEXT #-}
+ptr_glVertexAttribI3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI3uiEXT = unsafePerformIO $ getCommand "glVertexAttribI3uiEXT"
+
+-- glVertexAttribI3uiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI3uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI3uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI3uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI3uiv #-}
+ptr_glVertexAttribI3uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI3uiv = unsafePerformIO $ getCommand "glVertexAttribI3uiv"
+
+-- glVertexAttribI3uivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI3uiv'.
+glVertexAttribI3uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI3uivEXT v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI3uivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI3uivEXT #-}
+ptr_glVertexAttribI3uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI3uivEXT = unsafePerformIO $ getCommand "glVertexAttribI3uivEXT"
+
+-- glVertexAttribI4bv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4bv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttribI4bv v1 v2 = liftIO $ dyn863 ptr_glVertexAttribI4bv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4bv #-}
+ptr_glVertexAttribI4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttribI4bv = unsafePerformIO $ getCommand "glVertexAttribI4bv"
+
+-- glVertexAttribI4bvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4bv'.
+glVertexAttribI4bvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
+  -> m ()
+glVertexAttribI4bvEXT v1 v2 = liftIO $ dyn863 ptr_glVertexAttribI4bvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4bvEXT #-}
+ptr_glVertexAttribI4bvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVertexAttribI4bvEXT = unsafePerformIO $ getCommand "glVertexAttribI4bvEXT"
+
+-- glVertexAttribI4i -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI4iv'.
+glVertexAttribI4i
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glVertexAttribI4i v1 v2 v3 v4 v5 = liftIO $ dyn676 ptr_glVertexAttribI4i v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribI4i #-}
+ptr_glVertexAttribI4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI4i = unsafePerformIO $ getCommand "glVertexAttribI4i"
+
+-- glVertexAttribI4iEXT --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI4ivEXT'. This command is an alias for 'glVertexAttribI4i'.
+glVertexAttribI4iEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glVertexAttribI4iEXT v1 v2 v3 v4 v5 = liftIO $ dyn676 ptr_glVertexAttribI4iEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribI4iEXT #-}
+ptr_glVertexAttribI4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexAttribI4iEXT = unsafePerformIO $ getCommand "glVertexAttribI4iEXT"
 
diff --git a/src/Graphics/GL/Functions/F31.hs b/src/Graphics/GL/Functions/F31.hs
--- a/src/Graphics/GL/Functions/F31.hs
+++ b/src/Graphics/GL/Functions/F31.hs
@@ -15,1529 +15,1557 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F31 (
-  glVertexAttribP3uiv,
-  glVertexAttribP4ui,
-  glVertexAttribP4uiv,
-  glVertexAttribParameteriAMD,
-  glVertexAttribPointer,
-  glVertexAttribPointerARB,
-  glVertexAttribPointerNV,
-  glVertexAttribs1dvNV,
-  glVertexAttribs1fvNV,
-  glVertexAttribs1hvNV,
-  glVertexAttribs1svNV,
-  glVertexAttribs2dvNV,
-  glVertexAttribs2fvNV,
-  glVertexAttribs2hvNV,
-  glVertexAttribs2svNV,
-  glVertexAttribs3dvNV,
-  glVertexAttribs3fvNV,
-  glVertexAttribs3hvNV,
-  glVertexAttribs3svNV,
-  glVertexAttribs4dvNV,
-  glVertexAttribs4fvNV,
-  glVertexAttribs4hvNV,
-  glVertexAttribs4svNV,
-  glVertexAttribs4ubvNV,
-  glVertexBindingDivisor,
-  glVertexBlendARB,
-  glVertexBlendEnvfATI,
-  glVertexBlendEnviATI,
-  glVertexFormatNV,
-  glVertexP2ui,
-  glVertexP2uiv,
-  glVertexP3ui,
-  glVertexP3uiv,
-  glVertexP4ui,
-  glVertexP4uiv,
-  glVertexPointer,
-  glVertexPointerEXT,
-  glVertexPointerListIBM,
-  glVertexPointervINTEL,
-  glVertexStream1dATI,
-  glVertexStream1dvATI,
-  glVertexStream1fATI,
-  glVertexStream1fvATI,
-  glVertexStream1iATI,
-  glVertexStream1ivATI,
-  glVertexStream1sATI,
-  glVertexStream1svATI,
-  glVertexStream2dATI,
-  glVertexStream2dvATI,
-  glVertexStream2fATI,
-  glVertexStream2fvATI,
-  glVertexStream2iATI,
-  glVertexStream2ivATI,
-  glVertexStream2sATI,
-  glVertexStream2svATI,
-  glVertexStream3dATI,
-  glVertexStream3dvATI,
-  glVertexStream3fATI,
-  glVertexStream3fvATI,
-  glVertexStream3iATI,
-  glVertexStream3ivATI,
-  glVertexStream3sATI,
-  glVertexStream3svATI,
-  glVertexStream4dATI,
-  glVertexStream4dvATI,
-  glVertexStream4fATI,
-  glVertexStream4fvATI,
-  glVertexStream4iATI,
-  glVertexStream4ivATI,
-  glVertexStream4sATI,
-  glVertexStream4svATI,
-  glVertexWeightPointerEXT,
-  glVertexWeightfEXT,
-  glVertexWeightfvEXT,
-  glVertexWeighthNV,
-  glVertexWeighthvNV,
-  glVideoCaptureNV,
-  glVideoCaptureStreamParameterdvNV,
-  glVideoCaptureStreamParameterfvNV,
-  glVideoCaptureStreamParameterivNV,
-  glViewport,
-  glViewportArrayv,
-  glViewportArrayvNV,
-  glViewportArrayvOES,
-  glViewportIndexedf,
-  glViewportIndexedfNV,
-  glViewportIndexedfOES,
-  glViewportIndexedfv,
-  glViewportIndexedfvNV,
-  glViewportIndexedfvOES,
-  glViewportPositionWScaleNV,
-  glViewportSwizzleNV,
-  glWaitSync,
-  glWaitSyncAPPLE,
-  glWeightPathsNV,
-  glWeightPointerARB,
-  glWeightPointerOES,
-  glWeightbvARB,
-  glWeightdvARB,
-  glWeightfvARB
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glVertexAttribP3uiv ---------------------------------------------------------
-
-glVertexAttribP3uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribP3uiv v1 v2 v3 v4 = liftIO $ dyn877 ptr_glVertexAttribP3uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP3uiv #-}
-ptr_glVertexAttribP3uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
-ptr_glVertexAttribP3uiv = unsafePerformIO $ getCommand "glVertexAttribP3uiv"
-
--- glVertexAttribP4ui ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribP4ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexAttribP4ui v1 v2 v3 v4 = liftIO $ dyn876 ptr_glVertexAttribP4ui v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP4ui #-}
-ptr_glVertexAttribP4ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
-ptr_glVertexAttribP4ui = unsafePerformIO $ getCommand "glVertexAttribP4ui"
-
--- glVertexAttribP4uiv ---------------------------------------------------------
-
-glVertexAttribP4uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @type@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribP4uiv v1 v2 v3 v4 = liftIO $ dyn877 ptr_glVertexAttribP4uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexAttribP4uiv #-}
-ptr_glVertexAttribP4uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
-ptr_glVertexAttribP4uiv = unsafePerformIO $ getCommand "glVertexAttribP4uiv"
-
--- glVertexAttribParameteriAMD -------------------------------------------------
-
-glVertexAttribParameteriAMD
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @pname@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glVertexAttribParameteriAMD v1 v2 v3 = liftIO $ dyn490 ptr_glVertexAttribParameteriAMD v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribParameteriAMD #-}
-ptr_glVertexAttribParameteriAMD :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
-ptr_glVertexAttribParameteriAMD = unsafePerformIO $ getCommand "glVertexAttribParameteriAMD"
-
--- glVertexAttribPointer -------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttribPointer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
-glVertexAttribPointer
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexAttribPointer v1 v2 v3 v4 v5 v6 = liftIO $ dyn878 ptr_glVertexAttribPointer v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexAttribPointer #-}
-ptr_glVertexAttribPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribPointer = unsafePerformIO $ getCommand "glVertexAttribPointer"
-
--- glVertexAttribPointerARB ----------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribPointer'.
-glVertexAttribPointerARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
-  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexAttribPointerARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn878 ptr_glVertexAttribPointerARB v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glVertexAttribPointerARB #-}
-ptr_glVertexAttribPointerARB :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribPointerARB = unsafePerformIO $ getCommand "glVertexAttribPointerARB"
-
--- glVertexAttribPointerNV -----------------------------------------------------
-
-glVertexAttribPointerNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @fsize@.
-  -> GLenum -- ^ @type@ of type @VertexAttribEnumNV@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(fsize,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexAttribPointerNV v1 v2 v3 v4 v5 = liftIO $ dyn865 ptr_glVertexAttribPointerNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexAttribPointerNV #-}
-ptr_glVertexAttribPointerNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexAttribPointerNV = unsafePerformIO $ getCommand "glVertexAttribPointerNV"
-
--- glVertexAttribs1dvNV --------------------------------------------------------
-
-glVertexAttribs1dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs1dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs1dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs1dvNV #-}
-ptr_glVertexAttribs1dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs1dvNV = unsafePerformIO $ getCommand "glVertexAttribs1dvNV"
-
--- glVertexAttribs1fvNV --------------------------------------------------------
-
-glVertexAttribs1fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttribs1fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs1fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs1fvNV #-}
-ptr_glVertexAttribs1fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glVertexAttribs1fvNV = unsafePerformIO $ getCommand "glVertexAttribs1fvNV"
-
--- glVertexAttribs1hvNV --------------------------------------------------------
-
-glVertexAttribs1hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttribs1hvNV v1 v2 v3 = liftIO $ dyn879 ptr_glVertexAttribs1hvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs1hvNV #-}
-ptr_glVertexAttribs1hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttribs1hvNV = unsafePerformIO $ getCommand "glVertexAttribs1hvNV"
-
--- glVertexAttribs1svNV --------------------------------------------------------
-
-glVertexAttribs1svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs1svNV v1 v2 v3 = liftIO $ dyn880 ptr_glVertexAttribs1svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs1svNV #-}
-ptr_glVertexAttribs1svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs1svNV = unsafePerformIO $ getCommand "glVertexAttribs1svNV"
-
--- glVertexAttribs2dvNV --------------------------------------------------------
-
-glVertexAttribs2dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*2@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs2dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs2dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs2dvNV #-}
-ptr_glVertexAttribs2dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs2dvNV = unsafePerformIO $ getCommand "glVertexAttribs2dvNV"
-
--- glVertexAttribs2fvNV --------------------------------------------------------
-
-glVertexAttribs2fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count*2@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttribs2fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs2fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs2fvNV #-}
-ptr_glVertexAttribs2fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glVertexAttribs2fvNV = unsafePerformIO $ getCommand "glVertexAttribs2fvNV"
-
--- glVertexAttribs2hvNV --------------------------------------------------------
-
-glVertexAttribs2hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttribs2hvNV v1 v2 v3 = liftIO $ dyn879 ptr_glVertexAttribs2hvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs2hvNV #-}
-ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttribs2hvNV = unsafePerformIO $ getCommand "glVertexAttribs2hvNV"
-
--- glVertexAttribs2svNV --------------------------------------------------------
-
-glVertexAttribs2svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs2svNV v1 v2 v3 = liftIO $ dyn880 ptr_glVertexAttribs2svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs2svNV #-}
-ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs2svNV = unsafePerformIO $ getCommand "glVertexAttribs2svNV"
-
--- glVertexAttribs3dvNV --------------------------------------------------------
-
-glVertexAttribs3dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs3dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs3dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3dvNV #-}
-ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs3dvNV = unsafePerformIO $ getCommand "glVertexAttribs3dvNV"
-
--- glVertexAttribs3fvNV --------------------------------------------------------
-
-glVertexAttribs3fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttribs3fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs3fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3fvNV #-}
-ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glVertexAttribs3fvNV = unsafePerformIO $ getCommand "glVertexAttribs3fvNV"
-
--- glVertexAttribs3hvNV --------------------------------------------------------
-
-glVertexAttribs3hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttribs3hvNV v1 v2 v3 = liftIO $ dyn879 ptr_glVertexAttribs3hvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3hvNV #-}
-ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttribs3hvNV = unsafePerformIO $ getCommand "glVertexAttribs3hvNV"
-
--- glVertexAttribs3svNV --------------------------------------------------------
-
-glVertexAttribs3svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs3svNV v1 v2 v3 = liftIO $ dyn880 ptr_glVertexAttribs3svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3svNV #-}
-ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs3svNV = unsafePerformIO $ getCommand "glVertexAttribs3svNV"
-
--- glVertexAttribs4dvNV --------------------------------------------------------
-
-glVertexAttribs4dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs4dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs4dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4dvNV #-}
-ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs4dvNV = unsafePerformIO $ getCommand "glVertexAttribs4dvNV"
-
--- glVertexAttribs4fvNV --------------------------------------------------------
-
-glVertexAttribs4fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttribs4fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs4fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4fvNV #-}
-ptr_glVertexAttribs4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glVertexAttribs4fvNV = unsafePerformIO $ getCommand "glVertexAttribs4fvNV"
-
--- glVertexAttribs4hvNV --------------------------------------------------------
-
-glVertexAttribs4hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttribs4hvNV v1 v2 v3 = liftIO $ dyn879 ptr_glVertexAttribs4hvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4hvNV #-}
-ptr_glVertexAttribs4hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttribs4hvNV = unsafePerformIO $ getCommand "glVertexAttribs4hvNV"
-
--- glVertexAttribs4svNV --------------------------------------------------------
-
-glVertexAttribs4svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count*4@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs4svNV v1 v2 v3 = liftIO $ dyn880 ptr_glVertexAttribs4svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4svNV #-}
-ptr_glVertexAttribs4svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs4svNV = unsafePerformIO $ getCommand "glVertexAttribs4svNV"
-
--- glVertexAttribs4ubvNV -------------------------------------------------------
-
-glVertexAttribs4ubvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLubyte -- ^ @v@ pointing to @count*4@ elements of type @ColorUB@.
-  -> m ()
-glVertexAttribs4ubvNV v1 v2 v3 = liftIO $ dyn881 ptr_glVertexAttribs4ubvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4ubvNV #-}
-ptr_glVertexAttribs4ubvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
-ptr_glVertexAttribs4ubvNV = unsafePerformIO $ getCommand "glVertexAttribs4ubvNV"
-
--- glVertexBindingDivisor ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>.
-glVertexBindingDivisor
-  :: MonadIO m
-  => GLuint -- ^ @bindingindex@.
-  -> GLuint -- ^ @divisor@.
-  -> m ()
-glVertexBindingDivisor v1 v2 = liftIO $ dyn3 ptr_glVertexBindingDivisor v1 v2
-
-{-# NOINLINE ptr_glVertexBindingDivisor #-}
-ptr_glVertexBindingDivisor :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexBindingDivisor = unsafePerformIO $ getCommand "glVertexBindingDivisor"
-
--- glVertexBlendARB ------------------------------------------------------------
-
-glVertexBlendARB
-  :: MonadIO m
-  => GLint -- ^ @count@.
-  -> m ()
-glVertexBlendARB v1 = liftIO $ dyn12 ptr_glVertexBlendARB v1
-
-{-# NOINLINE ptr_glVertexBlendARB #-}
-ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
-ptr_glVertexBlendARB = unsafePerformIO $ getCommand "glVertexBlendARB"
-
--- glVertexBlendEnvfATI --------------------------------------------------------
-
-glVertexBlendEnvfATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glVertexBlendEnvfATI v1 v2 = liftIO $ dyn0 ptr_glVertexBlendEnvfATI v1 v2
-
-{-# NOINLINE ptr_glVertexBlendEnvfATI #-}
-ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glVertexBlendEnvfATI = unsafePerformIO $ getCommand "glVertexBlendEnvfATI"
-
--- glVertexBlendEnviATI --------------------------------------------------------
-
-glVertexBlendEnviATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glVertexBlendEnviATI v1 v2 = liftIO $ dyn55 ptr_glVertexBlendEnviATI v1 v2
-
-{-# NOINLINE ptr_glVertexBlendEnviATI #-}
-ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glVertexBlendEnviATI = unsafePerformIO $ getCommand "glVertexBlendEnviATI"
-
--- glVertexFormatNV ------------------------------------------------------------
-
-glVertexFormatNV
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> m ()
-glVertexFormatNV v1 v2 v3 = liftIO $ dyn119 ptr_glVertexFormatNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexFormatNV #-}
-ptr_glVertexFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
-ptr_glVertexFormatNV = unsafePerformIO $ getCommand "glVertexFormatNV"
-
--- glVertexP2ui ----------------------------------------------------------------
-
-glVertexP2ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexP2ui v1 v2 = liftIO $ dyn16 ptr_glVertexP2ui v1 v2
-
-{-# NOINLINE ptr_glVertexP2ui #-}
-ptr_glVertexP2ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glVertexP2ui = unsafePerformIO $ getCommand "glVertexP2ui"
-
--- glVertexP2uiv ---------------------------------------------------------------
-
-glVertexP2uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexP2uiv v1 v2 = liftIO $ dyn125 ptr_glVertexP2uiv v1 v2
-
-{-# NOINLINE ptr_glVertexP2uiv #-}
-ptr_glVertexP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glVertexP2uiv = unsafePerformIO $ getCommand "glVertexP2uiv"
-
--- glVertexP3ui ----------------------------------------------------------------
-
-glVertexP3ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexP3ui v1 v2 = liftIO $ dyn16 ptr_glVertexP3ui v1 v2
-
-{-# NOINLINE ptr_glVertexP3ui #-}
-ptr_glVertexP3ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glVertexP3ui = unsafePerformIO $ getCommand "glVertexP3ui"
-
--- glVertexP3uiv ---------------------------------------------------------------
-
-glVertexP3uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexP3uiv v1 v2 = liftIO $ dyn125 ptr_glVertexP3uiv v1 v2
-
-{-# NOINLINE ptr_glVertexP3uiv #-}
-ptr_glVertexP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glVertexP3uiv = unsafePerformIO $ getCommand "glVertexP3uiv"
-
--- glVertexP4ui ----------------------------------------------------------------
-
-glVertexP4ui
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> GLuint -- ^ @value@.
-  -> m ()
-glVertexP4ui v1 v2 = liftIO $ dyn16 ptr_glVertexP4ui v1 v2
-
-{-# NOINLINE ptr_glVertexP4ui #-}
-ptr_glVertexP4ui :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glVertexP4ui = unsafePerformIO $ getCommand "glVertexP4ui"
-
--- glVertexP4uiv ---------------------------------------------------------------
-
-glVertexP4uiv
-  :: MonadIO m
-  => GLenum -- ^ @type@.
-  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexP4uiv v1 v2 = liftIO $ dyn125 ptr_glVertexP4uiv v1 v2
-
-{-# NOINLINE ptr_glVertexP4uiv #-}
-ptr_glVertexP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
-ptr_glVertexP4uiv = unsafePerformIO $ getCommand "glVertexP4uiv"
-
--- glVertexPointer -------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexPointer.xml OpenGL 2.x>.
-glVertexPointer
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glVertexPointer v1 v2 v3 v4 = liftIO $ dyn126 ptr_glVertexPointer v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexPointer #-}
-ptr_glVertexPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexPointer = unsafePerformIO $ getCommand "glVertexPointer"
-
--- glVertexPointerEXT ----------------------------------------------------------
-
-glVertexPointerEXT
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> GLsizei -- ^ @stride@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
-  -> m ()
-glVertexPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn127 ptr_glVertexPointerEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexPointerEXT #-}
-ptr_glVertexPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexPointerEXT = unsafePerformIO $ getCommand "glVertexPointerEXT"
-
--- glVertexPointerListIBM ------------------------------------------------------
-
-glVertexPointerListIBM
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> GLint -- ^ @stride@.
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
-  -> GLint -- ^ @ptrstride@.
-  -> m ()
-glVertexPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn128 ptr_glVertexPointerListIBM v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexPointerListIBM #-}
-ptr_glVertexPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
-ptr_glVertexPointerListIBM = unsafePerformIO $ getCommand "glVertexPointerListIBM"
-
--- glVertexPointervINTEL -------------------------------------------------------
-
-glVertexPointervINTEL
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
-  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
-  -> m ()
-glVertexPointervINTEL v1 v2 v3 = liftIO $ dyn129 ptr_glVertexPointervINTEL v1 v2 v3
-
-{-# NOINLINE ptr_glVertexPointervINTEL #-}
-ptr_glVertexPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
-ptr_glVertexPointervINTEL = unsafePerformIO $ getCommand "glVertexPointervINTEL"
-
--- glVertexStream1dATI ---------------------------------------------------------
-
-glVertexStream1dATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLdouble -- ^ @x@.
-  -> m ()
-glVertexStream1dATI v1 v2 = liftIO $ dyn543 ptr_glVertexStream1dATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1dATI #-}
-ptr_glVertexStream1dATI :: FunPtr (GLenum -> GLdouble -> IO ())
-ptr_glVertexStream1dATI = unsafePerformIO $ getCommand "glVertexStream1dATI"
-
--- glVertexStream1dvATI --------------------------------------------------------
-
-glVertexStream1dvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLdouble -- ^ @coords@ pointing to @1@ element of type @GLdouble@.
-  -> m ()
-glVertexStream1dvATI v1 v2 = liftIO $ dyn93 ptr_glVertexStream1dvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1dvATI #-}
-ptr_glVertexStream1dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glVertexStream1dvATI = unsafePerformIO $ getCommand "glVertexStream1dvATI"
-
--- glVertexStream1fATI ---------------------------------------------------------
-
-glVertexStream1fATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @x@.
-  -> m ()
-glVertexStream1fATI v1 v2 = liftIO $ dyn0 ptr_glVertexStream1fATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1fATI #-}
-ptr_glVertexStream1fATI :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glVertexStream1fATI = unsafePerformIO $ getCommand "glVertexStream1fATI"
-
--- glVertexStream1fvATI --------------------------------------------------------
-
-glVertexStream1fvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLfloat -- ^ @coords@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glVertexStream1fvATI v1 v2 = liftIO $ dyn94 ptr_glVertexStream1fvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1fvATI #-}
-ptr_glVertexStream1fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glVertexStream1fvATI = unsafePerformIO $ getCommand "glVertexStream1fvATI"
-
--- glVertexStream1iATI ---------------------------------------------------------
-
-glVertexStream1iATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLint -- ^ @x@.
-  -> m ()
-glVertexStream1iATI v1 v2 = liftIO $ dyn55 ptr_glVertexStream1iATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1iATI #-}
-ptr_glVertexStream1iATI :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glVertexStream1iATI = unsafePerformIO $ getCommand "glVertexStream1iATI"
-
--- glVertexStream1ivATI --------------------------------------------------------
-
-glVertexStream1ivATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLint -- ^ @coords@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glVertexStream1ivATI v1 v2 = liftIO $ dyn136 ptr_glVertexStream1ivATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1ivATI #-}
-ptr_glVertexStream1ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glVertexStream1ivATI = unsafePerformIO $ getCommand "glVertexStream1ivATI"
-
--- glVertexStream1sATI ---------------------------------------------------------
-
-glVertexStream1sATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLshort -- ^ @x@.
-  -> m ()
-glVertexStream1sATI v1 v2 = liftIO $ dyn546 ptr_glVertexStream1sATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1sATI #-}
-ptr_glVertexStream1sATI :: FunPtr (GLenum -> GLshort -> IO ())
-ptr_glVertexStream1sATI = unsafePerformIO $ getCommand "glVertexStream1sATI"
-
--- glVertexStream1svATI --------------------------------------------------------
-
-glVertexStream1svATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLshort -- ^ @coords@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexStream1svATI v1 v2 = liftIO $ dyn547 ptr_glVertexStream1svATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream1svATI #-}
-ptr_glVertexStream1svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glVertexStream1svATI = unsafePerformIO $ getCommand "glVertexStream1svATI"
-
--- glVertexStream2dATI ---------------------------------------------------------
-
-glVertexStream2dATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexStream2dATI v1 v2 v3 = liftIO $ dyn549 ptr_glVertexStream2dATI v1 v2 v3
-
-{-# NOINLINE ptr_glVertexStream2dATI #-}
-ptr_glVertexStream2dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexStream2dATI = unsafePerformIO $ getCommand "glVertexStream2dATI"
-
--- glVertexStream2dvATI --------------------------------------------------------
-
-glVertexStream2dvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLdouble -- ^ @coords@ pointing to @2@ elements of type @GLdouble@.
-  -> m ()
-glVertexStream2dvATI v1 v2 = liftIO $ dyn93 ptr_glVertexStream2dvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream2dvATI #-}
-ptr_glVertexStream2dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glVertexStream2dvATI = unsafePerformIO $ getCommand "glVertexStream2dvATI"
-
--- glVertexStream2fATI ---------------------------------------------------------
-
-glVertexStream2fATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m ()
-glVertexStream2fATI v1 v2 v3 = liftIO $ dyn550 ptr_glVertexStream2fATI v1 v2 v3
-
-{-# NOINLINE ptr_glVertexStream2fATI #-}
-ptr_glVertexStream2fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexStream2fATI = unsafePerformIO $ getCommand "glVertexStream2fATI"
-
--- glVertexStream2fvATI --------------------------------------------------------
-
-glVertexStream2fvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLfloat -- ^ @coords@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glVertexStream2fvATI v1 v2 = liftIO $ dyn94 ptr_glVertexStream2fvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream2fvATI #-}
-ptr_glVertexStream2fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glVertexStream2fvATI = unsafePerformIO $ getCommand "glVertexStream2fvATI"
-
--- glVertexStream2iATI ---------------------------------------------------------
-
-glVertexStream2iATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> m ()
-glVertexStream2iATI v1 v2 v3 = liftIO $ dyn264 ptr_glVertexStream2iATI v1 v2 v3
-
-{-# NOINLINE ptr_glVertexStream2iATI #-}
-ptr_glVertexStream2iATI :: FunPtr (GLenum -> GLint -> GLint -> IO ())
-ptr_glVertexStream2iATI = unsafePerformIO $ getCommand "glVertexStream2iATI"
-
--- glVertexStream2ivATI --------------------------------------------------------
-
-glVertexStream2ivATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLint -- ^ @coords@ pointing to @2@ elements of type @GLint@.
-  -> m ()
-glVertexStream2ivATI v1 v2 = liftIO $ dyn136 ptr_glVertexStream2ivATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream2ivATI #-}
-ptr_glVertexStream2ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glVertexStream2ivATI = unsafePerformIO $ getCommand "glVertexStream2ivATI"
-
--- glVertexStream2sATI ---------------------------------------------------------
-
-glVertexStream2sATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> m ()
-glVertexStream2sATI v1 v2 v3 = liftIO $ dyn552 ptr_glVertexStream2sATI v1 v2 v3
-
-{-# NOINLINE ptr_glVertexStream2sATI #-}
-ptr_glVertexStream2sATI :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-ptr_glVertexStream2sATI = unsafePerformIO $ getCommand "glVertexStream2sATI"
-
--- glVertexStream2svATI --------------------------------------------------------
-
-glVertexStream2svATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLshort -- ^ @coords@ pointing to @2@ elements of type @GLshort@.
-  -> m ()
-glVertexStream2svATI v1 v2 = liftIO $ dyn547 ptr_glVertexStream2svATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream2svATI #-}
-ptr_glVertexStream2svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glVertexStream2svATI = unsafePerformIO $ getCommand "glVertexStream2svATI"
-
--- glVertexStream3dATI ---------------------------------------------------------
-
-glVertexStream3dATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> m ()
-glVertexStream3dATI v1 v2 v3 v4 = liftIO $ dyn524 ptr_glVertexStream3dATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexStream3dATI #-}
-ptr_glVertexStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexStream3dATI = unsafePerformIO $ getCommand "glVertexStream3dATI"
-
--- glVertexStream3dvATI --------------------------------------------------------
-
-glVertexStream3dvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
-  -> m ()
-glVertexStream3dvATI v1 v2 = liftIO $ dyn93 ptr_glVertexStream3dvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream3dvATI #-}
-ptr_glVertexStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glVertexStream3dvATI = unsafePerformIO $ getCommand "glVertexStream3dvATI"
-
--- glVertexStream3fATI ---------------------------------------------------------
-
-glVertexStream3fATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> m ()
-glVertexStream3fATI v1 v2 v3 v4 = liftIO $ dyn525 ptr_glVertexStream3fATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexStream3fATI #-}
-ptr_glVertexStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexStream3fATI = unsafePerformIO $ getCommand "glVertexStream3fATI"
-
--- glVertexStream3fvATI --------------------------------------------------------
-
-glVertexStream3fvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
-  -> m ()
-glVertexStream3fvATI v1 v2 = liftIO $ dyn94 ptr_glVertexStream3fvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream3fvATI #-}
-ptr_glVertexStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glVertexStream3fvATI = unsafePerformIO $ getCommand "glVertexStream3fvATI"
-
--- glVertexStream3iATI ---------------------------------------------------------
-
-glVertexStream3iATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> m ()
-glVertexStream3iATI v1 v2 v3 v4 = liftIO $ dyn556 ptr_glVertexStream3iATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexStream3iATI #-}
-ptr_glVertexStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexStream3iATI = unsafePerformIO $ getCommand "glVertexStream3iATI"
-
--- glVertexStream3ivATI --------------------------------------------------------
-
-glVertexStream3ivATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
-  -> m ()
-glVertexStream3ivATI v1 v2 = liftIO $ dyn136 ptr_glVertexStream3ivATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream3ivATI #-}
-ptr_glVertexStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glVertexStream3ivATI = unsafePerformIO $ getCommand "glVertexStream3ivATI"
-
--- glVertexStream3sATI ---------------------------------------------------------
-
-glVertexStream3sATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> m ()
-glVertexStream3sATI v1 v2 v3 v4 = liftIO $ dyn557 ptr_glVertexStream3sATI v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexStream3sATI #-}
-ptr_glVertexStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexStream3sATI = unsafePerformIO $ getCommand "glVertexStream3sATI"
-
--- glVertexStream3svATI --------------------------------------------------------
-
-glVertexStream3svATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
-  -> m ()
-glVertexStream3svATI v1 v2 = liftIO $ dyn547 ptr_glVertexStream3svATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream3svATI #-}
-ptr_glVertexStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glVertexStream3svATI = unsafePerformIO $ getCommand "glVertexStream3svATI"
-
--- glVertexStream4dATI ---------------------------------------------------------
-
-glVertexStream4dATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> GLdouble -- ^ @z@.
-  -> GLdouble -- ^ @w@.
-  -> m ()
-glVertexStream4dATI v1 v2 v3 v4 v5 = liftIO $ dyn522 ptr_glVertexStream4dATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexStream4dATI #-}
-ptr_glVertexStream4dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexStream4dATI = unsafePerformIO $ getCommand "glVertexStream4dATI"
-
--- glVertexStream4dvATI --------------------------------------------------------
-
-glVertexStream4dvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLdouble -- ^ @coords@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glVertexStream4dvATI v1 v2 = liftIO $ dyn93 ptr_glVertexStream4dvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream4dvATI #-}
-ptr_glVertexStream4dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glVertexStream4dvATI = unsafePerformIO $ getCommand "glVertexStream4dvATI"
-
--- glVertexStream4fATI ---------------------------------------------------------
-
-glVertexStream4fATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @z@.
-  -> GLfloat -- ^ @w@.
-  -> m ()
-glVertexStream4fATI v1 v2 v3 v4 v5 = liftIO $ dyn523 ptr_glVertexStream4fATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexStream4fATI #-}
-ptr_glVertexStream4fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexStream4fATI = unsafePerformIO $ getCommand "glVertexStream4fATI"
-
--- glVertexStream4fvATI --------------------------------------------------------
-
-glVertexStream4fvATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLfloat -- ^ @coords@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glVertexStream4fvATI v1 v2 = liftIO $ dyn94 ptr_glVertexStream4fvATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream4fvATI #-}
-ptr_glVertexStream4fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
-ptr_glVertexStream4fvATI = unsafePerformIO $ getCommand "glVertexStream4fvATI"
-
--- glVertexStream4iATI ---------------------------------------------------------
-
-glVertexStream4iATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLint -- ^ @x@.
-  -> GLint -- ^ @y@.
-  -> GLint -- ^ @z@.
-  -> GLint -- ^ @w@.
-  -> m ()
-glVertexStream4iATI v1 v2 v3 v4 v5 = liftIO $ dyn265 ptr_glVertexStream4iATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexStream4iATI #-}
-ptr_glVertexStream4iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glVertexStream4iATI = unsafePerformIO $ getCommand "glVertexStream4iATI"
-
--- glVertexStream4ivATI --------------------------------------------------------
-
-glVertexStream4ivATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLint -- ^ @coords@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glVertexStream4ivATI v1 v2 = liftIO $ dyn136 ptr_glVertexStream4ivATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream4ivATI #-}
-ptr_glVertexStream4ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
-ptr_glVertexStream4ivATI = unsafePerformIO $ getCommand "glVertexStream4ivATI"
-
--- glVertexStream4sATI ---------------------------------------------------------
-
-glVertexStream4sATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> GLshort -- ^ @x@.
-  -> GLshort -- ^ @y@.
-  -> GLshort -- ^ @z@.
-  -> GLshort -- ^ @w@.
-  -> m ()
-glVertexStream4sATI v1 v2 v3 v4 v5 = liftIO $ dyn561 ptr_glVertexStream4sATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVertexStream4sATI #-}
-ptr_glVertexStream4sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glVertexStream4sATI = unsafePerformIO $ getCommand "glVertexStream4sATI"
-
--- glVertexStream4svATI --------------------------------------------------------
-
-glVertexStream4svATI
-  :: MonadIO m
-  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
-  -> Ptr GLshort -- ^ @coords@ pointing to @4@ elements of type @GLshort@.
-  -> m ()
-glVertexStream4svATI v1 v2 = liftIO $ dyn547 ptr_glVertexStream4svATI v1 v2
-
-{-# NOINLINE ptr_glVertexStream4svATI #-}
-ptr_glVertexStream4svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
-ptr_glVertexStream4svATI = unsafePerformIO $ getCommand "glVertexStream4svATI"
-
--- glVertexWeightPointerEXT ----------------------------------------------------
-
-glVertexWeightPointerEXT
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @VertexWeightPointerTypeEXT@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glVertexWeightPointerEXT v1 v2 v3 v4 = liftIO $ dyn126 ptr_glVertexWeightPointerEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVertexWeightPointerEXT #-}
-ptr_glVertexWeightPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glVertexWeightPointerEXT = unsafePerformIO $ getCommand "glVertexWeightPointerEXT"
-
--- glVertexWeightfEXT ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexWeightfvEXT'.
-glVertexWeightfEXT
-  :: MonadIO m
-  => GLfloat -- ^ @weight@.
-  -> m ()
-glVertexWeightfEXT v1 = liftIO $ dyn79 ptr_glVertexWeightfEXT v1
-
-{-# NOINLINE ptr_glVertexWeightfEXT #-}
-ptr_glVertexWeightfEXT :: FunPtr (GLfloat -> IO ())
-ptr_glVertexWeightfEXT = unsafePerformIO $ getCommand "glVertexWeightfEXT"
-
--- glVertexWeightfvEXT ---------------------------------------------------------
-
-glVertexWeightfvEXT
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @weight@ pointing to @1@ element of type @GLfloat@.
-  -> m ()
-glVertexWeightfvEXT v1 = liftIO $ dyn41 ptr_glVertexWeightfvEXT v1
-
-{-# NOINLINE ptr_glVertexWeightfvEXT #-}
-ptr_glVertexWeightfvEXT :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glVertexWeightfvEXT = unsafePerformIO $ getCommand "glVertexWeightfvEXT"
-
--- glVertexWeighthNV -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexWeighthvNV'.
-glVertexWeighthNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @weight@ of type @Half16NV@.
-  -> m ()
-glVertexWeighthNV v1 = liftIO $ dyn281 ptr_glVertexWeighthNV v1
-
-{-# NOINLINE ptr_glVertexWeighthNV #-}
-ptr_glVertexWeighthNV :: FunPtr (GLhalfNV -> IO ())
-ptr_glVertexWeighthNV = unsafePerformIO $ getCommand "glVertexWeighthNV"
-
--- glVertexWeighthvNV ----------------------------------------------------------
-
-glVertexWeighthvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @weight@ pointing to @1@ element of type @Half16NV@.
-  -> m ()
-glVertexWeighthvNV v1 = liftIO $ dyn99 ptr_glVertexWeighthvNV v1
-
-{-# NOINLINE ptr_glVertexWeighthvNV #-}
-ptr_glVertexWeighthvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glVertexWeighthvNV = unsafePerformIO $ getCommand "glVertexWeighthvNV"
-
--- glVideoCaptureNV ------------------------------------------------------------
-
-glVideoCaptureNV
-  :: MonadIO m
-  => GLuint -- ^ @video_capture_slot@.
-  -> Ptr GLuint -- ^ @sequence_num@.
-  -> Ptr GLuint64EXT -- ^ @capture_time@.
-  -> m GLenum
-glVideoCaptureNV v1 v2 v3 = liftIO $ dyn882 ptr_glVideoCaptureNV v1 v2 v3
-
-{-# NOINLINE ptr_glVideoCaptureNV #-}
-ptr_glVideoCaptureNV :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
-ptr_glVideoCaptureNV = unsafePerformIO $ getCommand "glVideoCaptureNV"
-
--- glVideoCaptureStreamParameterdvNV -------------------------------------------
-
-glVideoCaptureStreamParameterdvNV
-  :: MonadIO m
-  => GLuint -- ^ @video_capture_slot@.
-  -> GLuint -- ^ @stream@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
-  -> m ()
-glVideoCaptureStreamParameterdvNV v1 v2 v3 v4 = liftIO $ dyn446 ptr_glVideoCaptureStreamParameterdvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVideoCaptureStreamParameterdvNV #-}
-ptr_glVideoCaptureStreamParameterdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
-ptr_glVideoCaptureStreamParameterdvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterdvNV"
-
--- glVideoCaptureStreamParameterfvNV -------------------------------------------
-
-glVideoCaptureStreamParameterfvNV
-  :: MonadIO m
-  => GLuint -- ^ @video_capture_slot@.
-  -> GLuint -- ^ @stream@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glVideoCaptureStreamParameterfvNV v1 v2 v3 v4 = liftIO $ dyn447 ptr_glVideoCaptureStreamParameterfvNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVideoCaptureStreamParameterfvNV #-}
-ptr_glVideoCaptureStreamParameterfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glVideoCaptureStreamParameterfvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterfvNV"
-
--- glVideoCaptureStreamParameterivNV -------------------------------------------
-
-glVideoCaptureStreamParameterivNV
-  :: MonadIO m
-  => GLuint -- ^ @video_capture_slot@.
-  -> GLuint -- ^ @stream@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glVideoCaptureStreamParameterivNV v1 v2 v3 v4 = liftIO $ dyn301 ptr_glVideoCaptureStreamParameterivNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVideoCaptureStreamParameterivNV #-}
-ptr_glVideoCaptureStreamParameterivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glVideoCaptureStreamParameterivNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterivNV"
-
--- glViewport ------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glViewport.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glViewport.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glViewport.xhtml OpenGL 4.x>.
-glViewport
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @WinCoord@.
-  -> GLint -- ^ @y@ of type @WinCoord@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glViewport v1 v2 v3 v4 = liftIO $ dyn701 ptr_glViewport v1 v2 v3 v4
-
-{-# NOINLINE ptr_glViewport #-}
-ptr_glViewport :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
-ptr_glViewport = unsafePerformIO $ getCommand "glViewport"
-
--- glViewportArrayv ------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportArray.xhtml OpenGL 4.x>.
-glViewportArrayv
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
-  -> m ()
-glViewportArrayv v1 v2 v3 = liftIO $ dyn218 ptr_glViewportArrayv v1 v2 v3
-
-{-# NOINLINE ptr_glViewportArrayv #-}
-ptr_glViewportArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glViewportArrayv = unsafePerformIO $ getCommand "glViewportArrayv"
-
--- glViewportArrayvNV ----------------------------------------------------------
-
--- | This command is an alias for 'glViewportArrayv'.
-glViewportArrayvNV
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
-  -> m ()
-glViewportArrayvNV v1 v2 v3 = liftIO $ dyn218 ptr_glViewportArrayvNV v1 v2 v3
-
-{-# NOINLINE ptr_glViewportArrayvNV #-}
-ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glViewportArrayvNV = unsafePerformIO $ getCommand "glViewportArrayvNV"
-
--- glViewportArrayvOES ---------------------------------------------------------
-
--- | This command is an alias for 'glViewportArrayv'.
-glViewportArrayvOES
-  :: MonadIO m
-  => GLuint -- ^ @first@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
-  -> m ()
-glViewportArrayvOES v1 v2 v3 = liftIO $ dyn218 ptr_glViewportArrayvOES v1 v2 v3
-
-{-# NOINLINE ptr_glViewportArrayvOES #-}
-ptr_glViewportArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glViewportArrayvOES = unsafePerformIO $ getCommand "glViewportArrayvOES"
-
--- glViewportIndexedf ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
-glViewportIndexedf
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @w@.
-  -> GLfloat -- ^ @h@.
-  -> m ()
-glViewportIndexedf v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glViewportIndexedf v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glViewportIndexedf #-}
-ptr_glViewportIndexedf :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glViewportIndexedf = unsafePerformIO $ getCommand "glViewportIndexedf"
-
--- glViewportIndexedfNV --------------------------------------------------------
-
--- | This command is an alias for 'glViewportIndexedf'.
-glViewportIndexedfNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @w@.
-  -> GLfloat -- ^ @h@.
-  -> m ()
-glViewportIndexedfNV v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glViewportIndexedfNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glViewportIndexedfNV #-}
-ptr_glViewportIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glViewportIndexedfNV = unsafePerformIO $ getCommand "glViewportIndexedfNV"
-
--- glViewportIndexedfOES -------------------------------------------------------
-
--- | This command is an alias for 'glViewportIndexedf'.
-glViewportIndexedfOES
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> GLfloat -- ^ @w@.
-  -> GLfloat -- ^ @h@.
-  -> m ()
-glViewportIndexedfOES v1 v2 v3 v4 v5 = liftIO $ dyn856 ptr_glViewportIndexedfOES v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glViewportIndexedfOES #-}
-ptr_glViewportIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glViewportIndexedfOES = unsafePerformIO $ getCommand "glViewportIndexedfOES"
-
--- glViewportIndexedfv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
-glViewportIndexedfv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glViewportIndexedfv v1 v2 = liftIO $ dyn379 ptr_glViewportIndexedfv v1 v2
-
-{-# NOINLINE ptr_glViewportIndexedfv #-}
-ptr_glViewportIndexedfv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glViewportIndexedfv = unsafePerformIO $ getCommand "glViewportIndexedfv"
-
--- glViewportIndexedfvNV -------------------------------------------------------
-
--- | This command is an alias for 'glViewportIndexedfv'.
-glViewportIndexedfvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glViewportIndexedfvNV v1 v2 = liftIO $ dyn379 ptr_glViewportIndexedfvNV v1 v2
-
-{-# NOINLINE ptr_glViewportIndexedfvNV #-}
-ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glViewportIndexedfvNV = unsafePerformIO $ getCommand "glViewportIndexedfvNV"
-
--- glViewportIndexedfvOES ------------------------------------------------------
-
--- | This command is an alias for 'glViewportIndexedfv'.
-glViewportIndexedfvOES
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
-  -> m ()
-glViewportIndexedfvOES v1 v2 = liftIO $ dyn379 ptr_glViewportIndexedfvOES v1 v2
-
-{-# NOINLINE ptr_glViewportIndexedfvOES #-}
-ptr_glViewportIndexedfvOES :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glViewportIndexedfvOES = unsafePerformIO $ getCommand "glViewportIndexedfvOES"
-
--- glViewportPositionWScaleNV --------------------------------------------------
-
-glViewportPositionWScaleNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @xcoeff@.
-  -> GLfloat -- ^ @ycoeff@.
-  -> m ()
-glViewportPositionWScaleNV v1 v2 v3 = liftIO $ dyn221 ptr_glViewportPositionWScaleNV v1 v2 v3
-
-{-# NOINLINE ptr_glViewportPositionWScaleNV #-}
-ptr_glViewportPositionWScaleNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glViewportPositionWScaleNV = unsafePerformIO $ getCommand "glViewportPositionWScaleNV"
-
--- glViewportSwizzleNV ---------------------------------------------------------
-
-glViewportSwizzleNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLenum -- ^ @swizzlex@.
-  -> GLenum -- ^ @swizzley@.
-  -> GLenum -- ^ @swizzlez@.
-  -> GLenum -- ^ @swizzlew@.
-  -> m ()
-glViewportSwizzleNV v1 v2 v3 v4 v5 = liftIO $ dyn54 ptr_glViewportSwizzleNV v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glViewportSwizzleNV #-}
-ptr_glViewportSwizzleNV :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glViewportSwizzleNV = unsafePerformIO $ getCommand "glViewportSwizzleNV"
-
--- glWaitSync ------------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glWaitSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glWaitSync.xhtml OpenGL 4.x>.
-glWaitSync
-  :: MonadIO m
-  => GLsync -- ^ @sync@ of type @sync@.
-  -> GLbitfield -- ^ @flags@.
-  -> GLuint64 -- ^ @timeout@.
-  -> m ()
-glWaitSync v1 v2 v3 = liftIO $ dyn883 ptr_glWaitSync v1 v2 v3
-
-{-# NOINLINE ptr_glWaitSync #-}
-ptr_glWaitSync :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
-ptr_glWaitSync = unsafePerformIO $ getCommand "glWaitSync"
-
--- glWaitSyncAPPLE -------------------------------------------------------------
-
--- | This command is an alias for 'glWaitSync'.
-glWaitSyncAPPLE
-  :: MonadIO m
-  => GLsync -- ^ @sync@.
-  -> GLbitfield -- ^ @flags@.
-  -> GLuint64 -- ^ @timeout@.
-  -> m ()
-glWaitSyncAPPLE v1 v2 v3 = liftIO $ dyn883 ptr_glWaitSyncAPPLE v1 v2 v3
-
-{-# NOINLINE ptr_glWaitSyncAPPLE #-}
-ptr_glWaitSyncAPPLE :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
-ptr_glWaitSyncAPPLE = unsafePerformIO $ getCommand "glWaitSyncAPPLE"
-
--- glWeightPathsNV -------------------------------------------------------------
-
-glWeightPathsNV
-  :: MonadIO m
-  => GLuint -- ^ @resultPath@ of type @Path@.
-  -> GLsizei -- ^ @numPaths@.
-  -> Ptr GLuint -- ^ @paths@ pointing to @numPaths@ elements of type @Path@.
-  -> Ptr GLfloat -- ^ @weights@ pointing to @numPaths@ elements of type @GLfloat@.
-  -> m ()
-glWeightPathsNV v1 v2 v3 v4 = liftIO $ dyn884 ptr_glWeightPathsNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWeightPathsNV #-}
-ptr_glWeightPathsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
-ptr_glWeightPathsNV = unsafePerformIO $ getCommand "glWeightPathsNV"
-
--- glWeightPointerARB ----------------------------------------------------------
-
-glWeightPointerARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @WeightPointerTypeARB@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glWeightPointerARB v1 v2 v3 v4 = liftIO $ dyn126 ptr_glWeightPointerARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWeightPointerARB #-}
-ptr_glWeightPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glWeightPointerARB = unsafePerformIO $ getCommand "glWeightPointerARB"
-
--- glWeightPointerOES ----------------------------------------------------------
-
-glWeightPointerOES
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
-  -> m ()
-glWeightPointerOES v1 v2 v3 v4 = liftIO $ dyn126 ptr_glWeightPointerOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWeightPointerOES #-}
-ptr_glWeightPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glWeightPointerOES = unsafePerformIO $ getCommand "glWeightPointerOES"
-
--- glWeightbvARB ---------------------------------------------------------------
-
-glWeightbvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLbyte -- ^ @weights@ pointing to @size@ elements of type @GLbyte@.
-  -> m ()
-glWeightbvARB v1 v2 = liftIO $ dyn885 ptr_glWeightbvARB v1 v2
-
-{-# NOINLINE ptr_glWeightbvARB #-}
-ptr_glWeightbvARB :: FunPtr (GLint -> Ptr GLbyte -> IO ())
-ptr_glWeightbvARB = unsafePerformIO $ getCommand "glWeightbvARB"
-
--- glWeightdvARB ---------------------------------------------------------------
-
-glWeightdvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLdouble -- ^ @weights@ pointing to @size@ elements of type @GLdouble@.
-  -> m ()
-glWeightdvARB v1 v2 = liftIO $ dyn886 ptr_glWeightdvARB v1 v2
-
-{-# NOINLINE ptr_glWeightdvARB #-}
-ptr_glWeightdvARB :: FunPtr (GLint -> Ptr GLdouble -> IO ())
-ptr_glWeightdvARB = unsafePerformIO $ getCommand "glWeightdvARB"
-
--- glWeightfvARB ---------------------------------------------------------------
-
-glWeightfvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLfloat -- ^ @weights@ pointing to @size@ elements of type @GLfloat@.
-  -> m ()
-glWeightfvARB v1 v2 = liftIO $ dyn887 ptr_glWeightfvARB v1 v2
-
-{-# NOINLINE ptr_glWeightfvARB #-}
-ptr_glWeightfvARB :: FunPtr (GLint -> Ptr GLfloat -> IO ())
-ptr_glWeightfvARB = unsafePerformIO $ getCommand "glWeightfvARB"
+  glVertexAttribI4iv,
+  glVertexAttribI4ivEXT,
+  glVertexAttribI4sv,
+  glVertexAttribI4svEXT,
+  glVertexAttribI4ubv,
+  glVertexAttribI4ubvEXT,
+  glVertexAttribI4ui,
+  glVertexAttribI4uiEXT,
+  glVertexAttribI4uiv,
+  glVertexAttribI4uivEXT,
+  glVertexAttribI4usv,
+  glVertexAttribI4usvEXT,
+  glVertexAttribIFormat,
+  glVertexAttribIFormatNV,
+  glVertexAttribIPointer,
+  glVertexAttribIPointerEXT,
+  glVertexAttribL1d,
+  glVertexAttribL1dEXT,
+  glVertexAttribL1dv,
+  glVertexAttribL1dvEXT,
+  glVertexAttribL1i64NV,
+  glVertexAttribL1i64vNV,
+  glVertexAttribL1ui64ARB,
+  glVertexAttribL1ui64NV,
+  glVertexAttribL1ui64vARB,
+  glVertexAttribL1ui64vNV,
+  glVertexAttribL2d,
+  glVertexAttribL2dEXT,
+  glVertexAttribL2dv,
+  glVertexAttribL2dvEXT,
+  glVertexAttribL2i64NV,
+  glVertexAttribL2i64vNV,
+  glVertexAttribL2ui64NV,
+  glVertexAttribL2ui64vNV,
+  glVertexAttribL3d,
+  glVertexAttribL3dEXT,
+  glVertexAttribL3dv,
+  glVertexAttribL3dvEXT,
+  glVertexAttribL3i64NV,
+  glVertexAttribL3i64vNV,
+  glVertexAttribL3ui64NV,
+  glVertexAttribL3ui64vNV,
+  glVertexAttribL4d,
+  glVertexAttribL4dEXT,
+  glVertexAttribL4dv,
+  glVertexAttribL4dvEXT,
+  glVertexAttribL4i64NV,
+  glVertexAttribL4i64vNV,
+  glVertexAttribL4ui64NV,
+  glVertexAttribL4ui64vNV,
+  glVertexAttribLFormat,
+  glVertexAttribLFormatNV,
+  glVertexAttribLPointer,
+  glVertexAttribLPointerEXT,
+  glVertexAttribP1ui,
+  glVertexAttribP1uiv,
+  glVertexAttribP2ui,
+  glVertexAttribP2uiv,
+  glVertexAttribP3ui,
+  glVertexAttribP3uiv,
+  glVertexAttribP4ui,
+  glVertexAttribP4uiv,
+  glVertexAttribParameteriAMD,
+  glVertexAttribPointer,
+  glVertexAttribPointerARB,
+  glVertexAttribPointerNV,
+  glVertexAttribs1dvNV,
+  glVertexAttribs1fvNV,
+  glVertexAttribs1hvNV,
+  glVertexAttribs1svNV,
+  glVertexAttribs2dvNV,
+  glVertexAttribs2fvNV,
+  glVertexAttribs2hvNV,
+  glVertexAttribs2svNV,
+  glVertexAttribs3dvNV,
+  glVertexAttribs3fvNV,
+  glVertexAttribs3hvNV,
+  glVertexAttribs3svNV,
+  glVertexAttribs4dvNV,
+  glVertexAttribs4fvNV,
+  glVertexAttribs4hvNV,
+  glVertexAttribs4svNV,
+  glVertexAttribs4ubvNV,
+  glVertexBindingDivisor,
+  glVertexBlendARB,
+  glVertexBlendEnvfATI,
+  glVertexBlendEnviATI,
+  glVertexFormatNV,
+  glVertexP2ui,
+  glVertexP2uiv,
+  glVertexP3ui,
+  glVertexP3uiv,
+  glVertexP4ui,
+  glVertexP4uiv,
+  glVertexPointer,
+  glVertexPointerEXT,
+  glVertexPointerListIBM,
+  glVertexPointervINTEL,
+  glVertexStream1dATI,
+  glVertexStream1dvATI
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glVertexAttribI4iv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI4iv v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI4iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4iv #-}
+ptr_glVertexAttribI4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI4iv = unsafePerformIO $ getCommand "glVertexAttribI4iv"
+
+-- glVertexAttribI4ivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4iv'.
+glVertexAttribI4ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexAttribI4ivEXT v1 v2 = liftIO $ dyn726 ptr_glVertexAttribI4ivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4ivEXT #-}
+ptr_glVertexAttribI4ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI4ivEXT = unsafePerformIO $ getCommand "glVertexAttribI4ivEXT"
+
+-- glVertexAttribI4sv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribI4sv v1 v2 = liftIO $ dyn865 ptr_glVertexAttribI4sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4sv #-}
+ptr_glVertexAttribI4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttribI4sv = unsafePerformIO $ getCommand "glVertexAttribI4sv"
+
+-- glVertexAttribI4svEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4sv'.
+glVertexAttribI4svEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribI4svEXT v1 v2 = liftIO $ dyn865 ptr_glVertexAttribI4svEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4svEXT #-}
+ptr_glVertexAttribI4svEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttribI4svEXT = unsafePerformIO $ getCommand "glVertexAttribI4svEXT"
+
+-- glVertexAttribI4ubv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4ubv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttribI4ubv v1 v2 = liftIO $ dyn385 ptr_glVertexAttribI4ubv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4ubv #-}
+ptr_glVertexAttribI4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttribI4ubv = unsafePerformIO $ getCommand "glVertexAttribI4ubv"
+
+-- glVertexAttribI4ubvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4ubv'.
+glVertexAttribI4ubvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
+  -> m ()
+glVertexAttribI4ubvEXT v1 v2 = liftIO $ dyn385 ptr_glVertexAttribI4ubvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4ubvEXT #-}
+ptr_glVertexAttribI4ubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
+ptr_glVertexAttribI4ubvEXT = unsafePerformIO $ getCommand "glVertexAttribI4ubvEXT"
+
+-- glVertexAttribI4ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>. The vector equivalent of this command is 'glVertexAttribI4uiv'.
+glVertexAttribI4ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glVertexAttribI4ui v1 v2 v3 v4 v5 = liftIO $ dyn895 ptr_glVertexAttribI4ui v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribI4ui #-}
+ptr_glVertexAttribI4ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI4ui = unsafePerformIO $ getCommand "glVertexAttribI4ui"
+
+-- glVertexAttribI4uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI4uivEXT'. This command is an alias for 'glVertexAttribI4ui'.
+glVertexAttribI4uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glVertexAttribI4uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn895 ptr_glVertexAttribI4uiEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribI4uiEXT #-}
+ptr_glVertexAttribI4uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI4uiEXT = unsafePerformIO $ getCommand "glVertexAttribI4uiEXT"
+
+-- glVertexAttribI4uiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI4uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI4uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4uiv #-}
+ptr_glVertexAttribI4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI4uiv = unsafePerformIO $ getCommand "glVertexAttribI4uiv"
+
+-- glVertexAttribI4uivEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4uiv'.
+glVertexAttribI4uivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI4uivEXT v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI4uivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4uivEXT #-}
+ptr_glVertexAttribI4uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI4uivEXT = unsafePerformIO $ getCommand "glVertexAttribI4uivEXT"
+
+-- glVertexAttribI4usv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI4usv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttribI4usv v1 v2 = liftIO $ dyn866 ptr_glVertexAttribI4usv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4usv #-}
+ptr_glVertexAttribI4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttribI4usv = unsafePerformIO $ getCommand "glVertexAttribI4usv"
+
+-- glVertexAttribI4usvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI4usv'.
+glVertexAttribI4usvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
+  -> m ()
+glVertexAttribI4usvEXT v1 v2 = liftIO $ dyn866 ptr_glVertexAttribI4usvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI4usvEXT #-}
+ptr_glVertexAttribI4usvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
+ptr_glVertexAttribI4usvEXT = unsafePerformIO $ getCommand "glVertexAttribI4usvEXT"
+
+-- glVertexAttribIFormat -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexAttribIFormat
+  :: MonadIO m
+  => GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexAttribIFormat v1 v2 v3 v4 = liftIO $ dyn896 ptr_glVertexAttribIFormat v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribIFormat #-}
+ptr_glVertexAttribIFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexAttribIFormat = unsafePerformIO $ getCommand "glVertexAttribIFormat"
+
+-- glVertexAttribIFormatNV -----------------------------------------------------
+
+glVertexAttribIFormatNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexAttribIFormatNV v1 v2 v3 v4 = liftIO $ dyn897 ptr_glVertexAttribIFormatNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribIFormatNV #-}
+ptr_glVertexAttribIFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
+ptr_glVertexAttribIFormatNV = unsafePerformIO $ getCommand "glVertexAttribIFormatNV"
+
+-- glVertexAttribIPointer ------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
+glVertexAttribIPointer
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexAttribIPointer v1 v2 v3 v4 v5 = liftIO $ dyn898 ptr_glVertexAttribIPointer v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribIPointer #-}
+ptr_glVertexAttribIPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribIPointer = unsafePerformIO $ getCommand "glVertexAttribIPointer"
+
+-- glVertexAttribIPointerEXT ---------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribIPointer'.
+glVertexAttribIPointerEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexAttribIPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn898 ptr_glVertexAttribIPointerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribIPointerEXT #-}
+ptr_glVertexAttribIPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribIPointerEXT = unsafePerformIO $ getCommand "glVertexAttribIPointerEXT"
+
+-- glVertexAttribL1d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL1d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexAttribL1d v1 v2 = liftIO $ dyn877 ptr_glVertexAttribL1d v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1d #-}
+ptr_glVertexAttribL1d :: FunPtr (GLuint -> GLdouble -> IO ())
+ptr_glVertexAttribL1d = unsafePerformIO $ getCommand "glVertexAttribL1d"
+
+-- glVertexAttribL1dEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL1d'.
+glVertexAttribL1dEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexAttribL1dEXT v1 v2 = liftIO $ dyn877 ptr_glVertexAttribL1dEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1dEXT #-}
+ptr_glVertexAttribL1dEXT :: FunPtr (GLuint -> GLdouble -> IO ())
+ptr_glVertexAttribL1dEXT = unsafePerformIO $ getCommand "glVertexAttribL1dEXT"
+
+-- glVertexAttribL1dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL1dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexAttribL1dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL1dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1dv #-}
+ptr_glVertexAttribL1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL1dv = unsafePerformIO $ getCommand "glVertexAttribL1dv"
+
+-- glVertexAttribL1dvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL1dv'.
+glVertexAttribL1dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexAttribL1dvEXT v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL1dvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1dvEXT #-}
+ptr_glVertexAttribL1dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL1dvEXT = unsafePerformIO $ getCommand "glVertexAttribL1dvEXT"
+
+-- glVertexAttribL1i64NV -------------------------------------------------------
+
+glVertexAttribL1i64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint64EXT -- ^ @x@.
+  -> m ()
+glVertexAttribL1i64NV v1 v2 = liftIO $ dyn899 ptr_glVertexAttribL1i64NV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1i64NV #-}
+ptr_glVertexAttribL1i64NV :: FunPtr (GLuint -> GLint64EXT -> IO ())
+ptr_glVertexAttribL1i64NV = unsafePerformIO $ getCommand "glVertexAttribL1i64NV"
+
+-- glVertexAttribL1i64vNV ------------------------------------------------------
+
+glVertexAttribL1i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint64EXT -- ^ @v@ pointing to @1@ element of type @GLint64EXT@.
+  -> m ()
+glVertexAttribL1i64vNV v1 v2 = liftIO $ dyn900 ptr_glVertexAttribL1i64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1i64vNV #-}
+ptr_glVertexAttribL1i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
+ptr_glVertexAttribL1i64vNV = unsafePerformIO $ getCommand "glVertexAttribL1i64vNV"
+
+-- glVertexAttribL1ui64ARB -----------------------------------------------------
+
+glVertexAttribL1ui64ARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint64EXT -- ^ @x@.
+  -> m ()
+glVertexAttribL1ui64ARB v1 v2 = liftIO $ dyn901 ptr_glVertexAttribL1ui64ARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1ui64ARB #-}
+ptr_glVertexAttribL1ui64ARB :: FunPtr (GLuint -> GLuint64EXT -> IO ())
+ptr_glVertexAttribL1ui64ARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64ARB"
+
+-- glVertexAttribL1ui64NV ------------------------------------------------------
+
+glVertexAttribL1ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint64EXT -- ^ @x@.
+  -> m ()
+glVertexAttribL1ui64NV v1 v2 = liftIO $ dyn901 ptr_glVertexAttribL1ui64NV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1ui64NV #-}
+ptr_glVertexAttribL1ui64NV :: FunPtr (GLuint -> GLuint64EXT -> IO ())
+ptr_glVertexAttribL1ui64NV = unsafePerformIO $ getCommand "glVertexAttribL1ui64NV"
+
+-- glVertexAttribL1ui64vARB ----------------------------------------------------
+
+glVertexAttribL1ui64vARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint64EXT -- ^ @v@.
+  -> m ()
+glVertexAttribL1ui64vARB v1 v2 = liftIO $ dyn902 ptr_glVertexAttribL1ui64vARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1ui64vARB #-}
+ptr_glVertexAttribL1ui64vARB :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+ptr_glVertexAttribL1ui64vARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64vARB"
+
+-- glVertexAttribL1ui64vNV -----------------------------------------------------
+
+glVertexAttribL1ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint64EXT -- ^ @v@ pointing to @1@ element of type @GLuint64EXT@.
+  -> m ()
+glVertexAttribL1ui64vNV v1 v2 = liftIO $ dyn902 ptr_glVertexAttribL1ui64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL1ui64vNV #-}
+ptr_glVertexAttribL1ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+ptr_glVertexAttribL1ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL1ui64vNV"
+
+-- glVertexAttribL2d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL2d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttribL2d v1 v2 v3 = liftIO $ dyn223 ptr_glVertexAttribL2d v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribL2d #-}
+ptr_glVertexAttribL2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL2d = unsafePerformIO $ getCommand "glVertexAttribL2d"
+
+-- glVertexAttribL2dEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL2d'.
+glVertexAttribL2dEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttribL2dEXT v1 v2 v3 = liftIO $ dyn223 ptr_glVertexAttribL2dEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribL2dEXT #-}
+ptr_glVertexAttribL2dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL2dEXT = unsafePerformIO $ getCommand "glVertexAttribL2dEXT"
+
+-- glVertexAttribL2dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL2dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL2dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL2dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL2dv #-}
+ptr_glVertexAttribL2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL2dv = unsafePerformIO $ getCommand "glVertexAttribL2dv"
+
+-- glVertexAttribL2dvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL2dv'.
+glVertexAttribL2dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL2dvEXT v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL2dvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL2dvEXT #-}
+ptr_glVertexAttribL2dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL2dvEXT = unsafePerformIO $ getCommand "glVertexAttribL2dvEXT"
+
+-- glVertexAttribL2i64NV -------------------------------------------------------
+
+glVertexAttribL2i64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> m ()
+glVertexAttribL2i64NV v1 v2 v3 = liftIO $ dyn903 ptr_glVertexAttribL2i64NV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribL2i64NV #-}
+ptr_glVertexAttribL2i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glVertexAttribL2i64NV = unsafePerformIO $ getCommand "glVertexAttribL2i64NV"
+
+-- glVertexAttribL2i64vNV ------------------------------------------------------
+
+glVertexAttribL2i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint64EXT -- ^ @v@ pointing to @2@ elements of type @GLint64EXT@.
+  -> m ()
+glVertexAttribL2i64vNV v1 v2 = liftIO $ dyn900 ptr_glVertexAttribL2i64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL2i64vNV #-}
+ptr_glVertexAttribL2i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
+ptr_glVertexAttribL2i64vNV = unsafePerformIO $ getCommand "glVertexAttribL2i64vNV"
+
+-- glVertexAttribL2ui64NV ------------------------------------------------------
+
+glVertexAttribL2ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> m ()
+glVertexAttribL2ui64NV v1 v2 v3 = liftIO $ dyn904 ptr_glVertexAttribL2ui64NV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribL2ui64NV #-}
+ptr_glVertexAttribL2ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glVertexAttribL2ui64NV = unsafePerformIO $ getCommand "glVertexAttribL2ui64NV"
+
+-- glVertexAttribL2ui64vNV -----------------------------------------------------
+
+glVertexAttribL2ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint64EXT -- ^ @v@ pointing to @2@ elements of type @GLuint64EXT@.
+  -> m ()
+glVertexAttribL2ui64vNV v1 v2 = liftIO $ dyn902 ptr_glVertexAttribL2ui64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL2ui64vNV #-}
+ptr_glVertexAttribL2ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+ptr_glVertexAttribL2ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL2ui64vNV"
+
+-- glVertexAttribL3d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL3d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexAttribL3d v1 v2 v3 v4 = liftIO $ dyn884 ptr_glVertexAttribL3d v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribL3d #-}
+ptr_glVertexAttribL3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL3d = unsafePerformIO $ getCommand "glVertexAttribL3d"
+
+-- glVertexAttribL3dEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL3d'.
+glVertexAttribL3dEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexAttribL3dEXT v1 v2 v3 v4 = liftIO $ dyn884 ptr_glVertexAttribL3dEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribL3dEXT #-}
+ptr_glVertexAttribL3dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL3dEXT = unsafePerformIO $ getCommand "glVertexAttribL3dEXT"
+
+-- glVertexAttribL3dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL3dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL3dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL3dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL3dv #-}
+ptr_glVertexAttribL3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL3dv = unsafePerformIO $ getCommand "glVertexAttribL3dv"
+
+-- glVertexAttribL3dvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL3dv'.
+glVertexAttribL3dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL3dvEXT v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL3dvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL3dvEXT #-}
+ptr_glVertexAttribL3dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL3dvEXT = unsafePerformIO $ getCommand "glVertexAttribL3dvEXT"
+
+-- glVertexAttribL3i64NV -------------------------------------------------------
+
+glVertexAttribL3i64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> m ()
+glVertexAttribL3i64NV v1 v2 v3 v4 = liftIO $ dyn905 ptr_glVertexAttribL3i64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribL3i64NV #-}
+ptr_glVertexAttribL3i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glVertexAttribL3i64NV = unsafePerformIO $ getCommand "glVertexAttribL3i64NV"
+
+-- glVertexAttribL3i64vNV ------------------------------------------------------
+
+glVertexAttribL3i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint64EXT -- ^ @v@ pointing to @3@ elements of type @GLint64EXT@.
+  -> m ()
+glVertexAttribL3i64vNV v1 v2 = liftIO $ dyn900 ptr_glVertexAttribL3i64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL3i64vNV #-}
+ptr_glVertexAttribL3i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
+ptr_glVertexAttribL3i64vNV = unsafePerformIO $ getCommand "glVertexAttribL3i64vNV"
+
+-- glVertexAttribL3ui64NV ------------------------------------------------------
+
+glVertexAttribL3ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> m ()
+glVertexAttribL3ui64NV v1 v2 v3 v4 = liftIO $ dyn906 ptr_glVertexAttribL3ui64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribL3ui64NV #-}
+ptr_glVertexAttribL3ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glVertexAttribL3ui64NV = unsafePerformIO $ getCommand "glVertexAttribL3ui64NV"
+
+-- glVertexAttribL3ui64vNV -----------------------------------------------------
+
+glVertexAttribL3ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint64EXT -- ^ @v@ pointing to @3@ elements of type @GLuint64EXT@.
+  -> m ()
+glVertexAttribL3ui64vNV v1 v2 = liftIO $ dyn902 ptr_glVertexAttribL3ui64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL3ui64vNV #-}
+ptr_glVertexAttribL3ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+ptr_glVertexAttribL3ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL3ui64vNV"
+
+-- glVertexAttribL4d -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL4d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexAttribL4d v1 v2 v3 v4 v5 = liftIO $ dyn888 ptr_glVertexAttribL4d v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribL4d #-}
+ptr_glVertexAttribL4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL4d = unsafePerformIO $ getCommand "glVertexAttribL4d"
+
+-- glVertexAttribL4dEXT --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL4d'.
+glVertexAttribL4dEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexAttribL4dEXT v1 v2 v3 v4 v5 = liftIO $ dyn888 ptr_glVertexAttribL4dEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribL4dEXT #-}
+ptr_glVertexAttribL4dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttribL4dEXT = unsafePerformIO $ getCommand "glVertexAttribL4dEXT"
+
+-- glVertexAttribL4dv ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribL4dv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL4dv v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL4dv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL4dv #-}
+ptr_glVertexAttribL4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL4dv = unsafePerformIO $ getCommand "glVertexAttribL4dv"
+
+-- glVertexAttribL4dvEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribL4dv'.
+glVertexAttribL4dvEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribL4dvEXT v1 v2 = liftIO $ dyn864 ptr_glVertexAttribL4dvEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL4dvEXT #-}
+ptr_glVertexAttribL4dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribL4dvEXT = unsafePerformIO $ getCommand "glVertexAttribL4dvEXT"
+
+-- glVertexAttribL4i64NV -------------------------------------------------------
+
+glVertexAttribL4i64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> GLint64EXT -- ^ @w@.
+  -> m ()
+glVertexAttribL4i64NV v1 v2 v3 v4 v5 = liftIO $ dyn907 ptr_glVertexAttribL4i64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribL4i64NV #-}
+ptr_glVertexAttribL4i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glVertexAttribL4i64NV = unsafePerformIO $ getCommand "glVertexAttribL4i64NV"
+
+-- glVertexAttribL4i64vNV ------------------------------------------------------
+
+glVertexAttribL4i64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint64EXT -- ^ @v@ pointing to @4@ elements of type @GLint64EXT@.
+  -> m ()
+glVertexAttribL4i64vNV v1 v2 = liftIO $ dyn900 ptr_glVertexAttribL4i64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL4i64vNV #-}
+ptr_glVertexAttribL4i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
+ptr_glVertexAttribL4i64vNV = unsafePerformIO $ getCommand "glVertexAttribL4i64vNV"
+
+-- glVertexAttribL4ui64NV ------------------------------------------------------
+
+glVertexAttribL4ui64NV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint64EXT -- ^ @x@.
+  -> GLuint64EXT -- ^ @y@.
+  -> GLuint64EXT -- ^ @z@.
+  -> GLuint64EXT -- ^ @w@.
+  -> m ()
+glVertexAttribL4ui64NV v1 v2 v3 v4 v5 = liftIO $ dyn908 ptr_glVertexAttribL4ui64NV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribL4ui64NV #-}
+ptr_glVertexAttribL4ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
+ptr_glVertexAttribL4ui64NV = unsafePerformIO $ getCommand "glVertexAttribL4ui64NV"
+
+-- glVertexAttribL4ui64vNV -----------------------------------------------------
+
+glVertexAttribL4ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint64EXT -- ^ @v@ pointing to @4@ elements of type @GLuint64EXT@.
+  -> m ()
+glVertexAttribL4ui64vNV v1 v2 = liftIO $ dyn902 ptr_glVertexAttribL4ui64vNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttribL4ui64vNV #-}
+ptr_glVertexAttribL4ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
+ptr_glVertexAttribL4ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL4ui64vNV"
+
+-- glVertexAttribLFormat -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>.
+glVertexAttribLFormat
+  :: MonadIO m
+  => GLuint -- ^ @attribindex@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLuint -- ^ @relativeoffset@.
+  -> m ()
+glVertexAttribLFormat v1 v2 v3 v4 = liftIO $ dyn896 ptr_glVertexAttribLFormat v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribLFormat #-}
+ptr_glVertexAttribLFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
+ptr_glVertexAttribLFormat = unsafePerformIO $ getCommand "glVertexAttribLFormat"
+
+-- glVertexAttribLFormatNV -----------------------------------------------------
+
+glVertexAttribLFormatNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexAttribLFormatNV v1 v2 v3 v4 = liftIO $ dyn897 ptr_glVertexAttribLFormatNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribLFormatNV #-}
+ptr_glVertexAttribLFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
+ptr_glVertexAttribLFormatNV = unsafePerformIO $ getCommand "glVertexAttribLFormatNV"
+
+-- glVertexAttribLPointer ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
+glVertexAttribLPointer
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
+  -> m ()
+glVertexAttribLPointer v1 v2 v3 v4 v5 = liftIO $ dyn898 ptr_glVertexAttribLPointer v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribLPointer #-}
+ptr_glVertexAttribLPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribLPointer = unsafePerformIO $ getCommand "glVertexAttribLPointer"
+
+-- glVertexAttribLPointerEXT ---------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribLPointer'.
+glVertexAttribLPointerEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
+  -> m ()
+glVertexAttribLPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn898 ptr_glVertexAttribLPointerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribLPointerEXT #-}
+ptr_glVertexAttribLPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribLPointerEXT = unsafePerformIO $ getCommand "glVertexAttribLPointerEXT"
+
+-- glVertexAttribP1ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribP1ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexAttribP1ui v1 v2 v3 v4 = liftIO $ dyn909 ptr_glVertexAttribP1ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP1ui #-}
+ptr_glVertexAttribP1ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexAttribP1ui = unsafePerformIO $ getCommand "glVertexAttribP1ui"
+
+-- glVertexAttribP1uiv ---------------------------------------------------------
+
+glVertexAttribP1uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribP1uiv v1 v2 v3 v4 = liftIO $ dyn910 ptr_glVertexAttribP1uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP1uiv #-}
+ptr_glVertexAttribP1uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
+ptr_glVertexAttribP1uiv = unsafePerformIO $ getCommand "glVertexAttribP1uiv"
+
+-- glVertexAttribP2ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribP2ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexAttribP2ui v1 v2 v3 v4 = liftIO $ dyn909 ptr_glVertexAttribP2ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP2ui #-}
+ptr_glVertexAttribP2ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexAttribP2ui = unsafePerformIO $ getCommand "glVertexAttribP2ui"
+
+-- glVertexAttribP2uiv ---------------------------------------------------------
+
+glVertexAttribP2uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribP2uiv v1 v2 v3 v4 = liftIO $ dyn910 ptr_glVertexAttribP2uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP2uiv #-}
+ptr_glVertexAttribP2uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
+ptr_glVertexAttribP2uiv = unsafePerformIO $ getCommand "glVertexAttribP2uiv"
+
+-- glVertexAttribP3ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribP3ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexAttribP3ui v1 v2 v3 v4 = liftIO $ dyn909 ptr_glVertexAttribP3ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP3ui #-}
+ptr_glVertexAttribP3ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexAttribP3ui = unsafePerformIO $ getCommand "glVertexAttribP3ui"
+
+-- glVertexAttribP3uiv ---------------------------------------------------------
+
+glVertexAttribP3uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribP3uiv v1 v2 v3 v4 = liftIO $ dyn910 ptr_glVertexAttribP3uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP3uiv #-}
+ptr_glVertexAttribP3uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
+ptr_glVertexAttribP3uiv = unsafePerformIO $ getCommand "glVertexAttribP3uiv"
+
+-- glVertexAttribP4ui ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribP4ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexAttribP4ui v1 v2 v3 v4 = liftIO $ dyn909 ptr_glVertexAttribP4ui v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP4ui #-}
+ptr_glVertexAttribP4ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
+ptr_glVertexAttribP4ui = unsafePerformIO $ getCommand "glVertexAttribP4ui"
+
+-- glVertexAttribP4uiv ---------------------------------------------------------
+
+glVertexAttribP4uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @type@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribP4uiv v1 v2 v3 v4 = liftIO $ dyn910 ptr_glVertexAttribP4uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexAttribP4uiv #-}
+ptr_glVertexAttribP4uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
+ptr_glVertexAttribP4uiv = unsafePerformIO $ getCommand "glVertexAttribP4uiv"
+
+-- glVertexAttribParameteriAMD -------------------------------------------------
+
+glVertexAttribParameteriAMD
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @pname@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glVertexAttribParameteriAMD v1 v2 v3 = liftIO $ dyn481 ptr_glVertexAttribParameteriAMD v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribParameteriAMD #-}
+ptr_glVertexAttribParameteriAMD :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
+ptr_glVertexAttribParameteriAMD = unsafePerformIO $ getCommand "glVertexAttribParameteriAMD"
+
+-- glVertexAttribPointer -------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttribPointer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>.
+glVertexAttribPointer
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexAttribPointer v1 v2 v3 v4 v5 v6 = liftIO $ dyn911 ptr_glVertexAttribPointer v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexAttribPointer #-}
+ptr_glVertexAttribPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribPointer = unsafePerformIO $ getCommand "glVertexAttribPointer"
+
+-- glVertexAttribPointerARB ----------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribPointer'.
+glVertexAttribPointerARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
+  -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexAttribPointerARB v1 v2 v3 v4 v5 v6 = liftIO $ dyn911 ptr_glVertexAttribPointerARB v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glVertexAttribPointerARB #-}
+ptr_glVertexAttribPointerARB :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribPointerARB = unsafePerformIO $ getCommand "glVertexAttribPointerARB"
+
+-- glVertexAttribPointerNV -----------------------------------------------------
+
+glVertexAttribPointerNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @fsize@.
+  -> GLenum -- ^ @type@ of type @VertexAttribEnumNV@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(fsize,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexAttribPointerNV v1 v2 v3 v4 v5 = liftIO $ dyn898 ptr_glVertexAttribPointerNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexAttribPointerNV #-}
+ptr_glVertexAttribPointerNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexAttribPointerNV = unsafePerformIO $ getCommand "glVertexAttribPointerNV"
+
+-- glVertexAttribs1dvNV --------------------------------------------------------
+
+glVertexAttribs1dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs1dvNV v1 v2 v3 = liftIO $ dyn222 ptr_glVertexAttribs1dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs1dvNV #-}
+ptr_glVertexAttribs1dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs1dvNV = unsafePerformIO $ getCommand "glVertexAttribs1dvNV"
+
+-- glVertexAttribs1fvNV --------------------------------------------------------
+
+glVertexAttribs1fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttribs1fvNV v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttribs1fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs1fvNV #-}
+ptr_glVertexAttribs1fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glVertexAttribs1fvNV = unsafePerformIO $ getCommand "glVertexAttribs1fvNV"
+
+-- glVertexAttribs1hvNV --------------------------------------------------------
+
+glVertexAttribs1hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttribs1hvNV v1 v2 v3 = liftIO $ dyn912 ptr_glVertexAttribs1hvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs1hvNV #-}
+ptr_glVertexAttribs1hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttribs1hvNV = unsafePerformIO $ getCommand "glVertexAttribs1hvNV"
+
+-- glVertexAttribs1svNV --------------------------------------------------------
+
+glVertexAttribs1svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs1svNV v1 v2 v3 = liftIO $ dyn913 ptr_glVertexAttribs1svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs1svNV #-}
+ptr_glVertexAttribs1svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs1svNV = unsafePerformIO $ getCommand "glVertexAttribs1svNV"
+
+-- glVertexAttribs2dvNV --------------------------------------------------------
+
+glVertexAttribs2dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*2@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs2dvNV v1 v2 v3 = liftIO $ dyn222 ptr_glVertexAttribs2dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs2dvNV #-}
+ptr_glVertexAttribs2dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs2dvNV = unsafePerformIO $ getCommand "glVertexAttribs2dvNV"
+
+-- glVertexAttribs2fvNV --------------------------------------------------------
+
+glVertexAttribs2fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count*2@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttribs2fvNV v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttribs2fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs2fvNV #-}
+ptr_glVertexAttribs2fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glVertexAttribs2fvNV = unsafePerformIO $ getCommand "glVertexAttribs2fvNV"
+
+-- glVertexAttribs2hvNV --------------------------------------------------------
+
+glVertexAttribs2hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttribs2hvNV v1 v2 v3 = liftIO $ dyn912 ptr_glVertexAttribs2hvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs2hvNV #-}
+ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttribs2hvNV = unsafePerformIO $ getCommand "glVertexAttribs2hvNV"
+
+-- glVertexAttribs2svNV --------------------------------------------------------
+
+glVertexAttribs2svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs2svNV v1 v2 v3 = liftIO $ dyn913 ptr_glVertexAttribs2svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs2svNV #-}
+ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs2svNV = unsafePerformIO $ getCommand "glVertexAttribs2svNV"
+
+-- glVertexAttribs3dvNV --------------------------------------------------------
+
+glVertexAttribs3dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs3dvNV v1 v2 v3 = liftIO $ dyn222 ptr_glVertexAttribs3dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3dvNV #-}
+ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs3dvNV = unsafePerformIO $ getCommand "glVertexAttribs3dvNV"
+
+-- glVertexAttribs3fvNV --------------------------------------------------------
+
+glVertexAttribs3fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttribs3fvNV v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttribs3fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3fvNV #-}
+ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glVertexAttribs3fvNV = unsafePerformIO $ getCommand "glVertexAttribs3fvNV"
+
+-- glVertexAttribs3hvNV --------------------------------------------------------
+
+glVertexAttribs3hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttribs3hvNV v1 v2 v3 = liftIO $ dyn912 ptr_glVertexAttribs3hvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3hvNV #-}
+ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttribs3hvNV = unsafePerformIO $ getCommand "glVertexAttribs3hvNV"
+
+-- glVertexAttribs3svNV --------------------------------------------------------
+
+glVertexAttribs3svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs3svNV v1 v2 v3 = liftIO $ dyn913 ptr_glVertexAttribs3svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3svNV #-}
+ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs3svNV = unsafePerformIO $ getCommand "glVertexAttribs3svNV"
+
+-- glVertexAttribs4dvNV --------------------------------------------------------
+
+glVertexAttribs4dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs4dvNV v1 v2 v3 = liftIO $ dyn222 ptr_glVertexAttribs4dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4dvNV #-}
+ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs4dvNV = unsafePerformIO $ getCommand "glVertexAttribs4dvNV"
+
+-- glVertexAttribs4fvNV --------------------------------------------------------
+
+glVertexAttribs4fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttribs4fvNV v1 v2 v3 = liftIO $ dyn221 ptr_glVertexAttribs4fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4fvNV #-}
+ptr_glVertexAttribs4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glVertexAttribs4fvNV = unsafePerformIO $ getCommand "glVertexAttribs4fvNV"
+
+-- glVertexAttribs4hvNV --------------------------------------------------------
+
+glVertexAttribs4hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttribs4hvNV v1 v2 v3 = liftIO $ dyn912 ptr_glVertexAttribs4hvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4hvNV #-}
+ptr_glVertexAttribs4hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttribs4hvNV = unsafePerformIO $ getCommand "glVertexAttribs4hvNV"
+
+-- glVertexAttribs4svNV --------------------------------------------------------
+
+glVertexAttribs4svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count*4@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs4svNV v1 v2 v3 = liftIO $ dyn913 ptr_glVertexAttribs4svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4svNV #-}
+ptr_glVertexAttribs4svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs4svNV = unsafePerformIO $ getCommand "glVertexAttribs4svNV"
+
+-- glVertexAttribs4ubvNV -------------------------------------------------------
+
+glVertexAttribs4ubvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLubyte -- ^ @v@ pointing to @count*4@ elements of type @ColorUB@.
+  -> m ()
+glVertexAttribs4ubvNV v1 v2 v3 = liftIO $ dyn914 ptr_glVertexAttribs4ubvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4ubvNV #-}
+ptr_glVertexAttribs4ubvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
+ptr_glVertexAttribs4ubvNV = unsafePerformIO $ getCommand "glVertexAttribs4ubvNV"
+
+-- glVertexBindingDivisor ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>.
+glVertexBindingDivisor
+  :: MonadIO m
+  => GLuint -- ^ @bindingindex@.
+  -> GLuint -- ^ @divisor@.
+  -> m ()
+glVertexBindingDivisor v1 v2 = liftIO $ dyn4 ptr_glVertexBindingDivisor v1 v2
+
+{-# NOINLINE ptr_glVertexBindingDivisor #-}
+ptr_glVertexBindingDivisor :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexBindingDivisor = unsafePerformIO $ getCommand "glVertexBindingDivisor"
+
+-- glVertexBlendARB ------------------------------------------------------------
+
+glVertexBlendARB
+  :: MonadIO m
+  => GLint -- ^ @count@.
+  -> m ()
+glVertexBlendARB v1 = liftIO $ dyn13 ptr_glVertexBlendARB v1
+
+{-# NOINLINE ptr_glVertexBlendARB #-}
+ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
+ptr_glVertexBlendARB = unsafePerformIO $ getCommand "glVertexBlendARB"
+
+-- glVertexBlendEnvfATI --------------------------------------------------------
+
+glVertexBlendEnvfATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glVertexBlendEnvfATI v1 v2 = liftIO $ dyn0 ptr_glVertexBlendEnvfATI v1 v2
+
+{-# NOINLINE ptr_glVertexBlendEnvfATI #-}
+ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glVertexBlendEnvfATI = unsafePerformIO $ getCommand "glVertexBlendEnvfATI"
+
+-- glVertexBlendEnviATI --------------------------------------------------------
+
+glVertexBlendEnviATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glVertexBlendEnviATI v1 v2 = liftIO $ dyn56 ptr_glVertexBlendEnviATI v1 v2
+
+{-# NOINLINE ptr_glVertexBlendEnviATI #-}
+ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glVertexBlendEnviATI = unsafePerformIO $ getCommand "glVertexBlendEnviATI"
+
+-- glVertexFormatNV ------------------------------------------------------------
+
+glVertexFormatNV
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> m ()
+glVertexFormatNV v1 v2 v3 = liftIO $ dyn122 ptr_glVertexFormatNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexFormatNV #-}
+ptr_glVertexFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
+ptr_glVertexFormatNV = unsafePerformIO $ getCommand "glVertexFormatNV"
+
+-- glVertexP2ui ----------------------------------------------------------------
+
+glVertexP2ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexP2ui v1 v2 = liftIO $ dyn17 ptr_glVertexP2ui v1 v2
+
+{-# NOINLINE ptr_glVertexP2ui #-}
+ptr_glVertexP2ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glVertexP2ui = unsafePerformIO $ getCommand "glVertexP2ui"
+
+-- glVertexP2uiv ---------------------------------------------------------------
+
+glVertexP2uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexP2uiv v1 v2 = liftIO $ dyn128 ptr_glVertexP2uiv v1 v2
+
+{-# NOINLINE ptr_glVertexP2uiv #-}
+ptr_glVertexP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glVertexP2uiv = unsafePerformIO $ getCommand "glVertexP2uiv"
+
+-- glVertexP3ui ----------------------------------------------------------------
+
+glVertexP3ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexP3ui v1 v2 = liftIO $ dyn17 ptr_glVertexP3ui v1 v2
+
+{-# NOINLINE ptr_glVertexP3ui #-}
+ptr_glVertexP3ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glVertexP3ui = unsafePerformIO $ getCommand "glVertexP3ui"
+
+-- glVertexP3uiv ---------------------------------------------------------------
+
+glVertexP3uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexP3uiv v1 v2 = liftIO $ dyn128 ptr_glVertexP3uiv v1 v2
+
+{-# NOINLINE ptr_glVertexP3uiv #-}
+ptr_glVertexP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glVertexP3uiv = unsafePerformIO $ getCommand "glVertexP3uiv"
+
+-- glVertexP4ui ----------------------------------------------------------------
+
+glVertexP4ui
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> GLuint -- ^ @value@.
+  -> m ()
+glVertexP4ui v1 v2 = liftIO $ dyn17 ptr_glVertexP4ui v1 v2
+
+{-# NOINLINE ptr_glVertexP4ui #-}
+ptr_glVertexP4ui :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glVertexP4ui = unsafePerformIO $ getCommand "glVertexP4ui"
+
+-- glVertexP4uiv ---------------------------------------------------------------
+
+glVertexP4uiv
+  :: MonadIO m
+  => GLenum -- ^ @type@.
+  -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexP4uiv v1 v2 = liftIO $ dyn128 ptr_glVertexP4uiv v1 v2
+
+{-# NOINLINE ptr_glVertexP4uiv #-}
+ptr_glVertexP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
+ptr_glVertexP4uiv = unsafePerformIO $ getCommand "glVertexP4uiv"
+
+-- glVertexPointer -------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexPointer.xml OpenGL 2.x>.
+glVertexPointer
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glVertexPointer v1 v2 v3 v4 = liftIO $ dyn129 ptr_glVertexPointer v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexPointer #-}
+ptr_glVertexPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexPointer = unsafePerformIO $ getCommand "glVertexPointer"
+
+-- glVertexPointerEXT ----------------------------------------------------------
+
+glVertexPointerEXT
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> GLsizei -- ^ @stride@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
+  -> m ()
+glVertexPointerEXT v1 v2 v3 v4 v5 = liftIO $ dyn130 ptr_glVertexPointerEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexPointerEXT #-}
+ptr_glVertexPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexPointerEXT = unsafePerformIO $ getCommand "glVertexPointerEXT"
+
+-- glVertexPointerListIBM ------------------------------------------------------
+
+glVertexPointerListIBM
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> GLint -- ^ @stride@.
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
+  -> GLint -- ^ @ptrstride@.
+  -> m ()
+glVertexPointerListIBM v1 v2 v3 v4 v5 = liftIO $ dyn131 ptr_glVertexPointerListIBM v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexPointerListIBM #-}
+ptr_glVertexPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
+ptr_glVertexPointerListIBM = unsafePerformIO $ getCommand "glVertexPointerListIBM"
+
+-- glVertexPointervINTEL -------------------------------------------------------
+
+glVertexPointervINTEL
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
+  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
+  -> m ()
+glVertexPointervINTEL v1 v2 v3 = liftIO $ dyn132 ptr_glVertexPointervINTEL v1 v2 v3
+
+{-# NOINLINE ptr_glVertexPointervINTEL #-}
+ptr_glVertexPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
+ptr_glVertexPointervINTEL = unsafePerformIO $ getCommand "glVertexPointervINTEL"
+
+-- glVertexStream1dATI ---------------------------------------------------------
+
+glVertexStream1dATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLdouble -- ^ @x@.
+  -> m ()
+glVertexStream1dATI v1 v2 = liftIO $ dyn558 ptr_glVertexStream1dATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1dATI #-}
+ptr_glVertexStream1dATI :: FunPtr (GLenum -> GLdouble -> IO ())
+ptr_glVertexStream1dATI = unsafePerformIO $ getCommand "glVertexStream1dATI"
+
+-- glVertexStream1dvATI --------------------------------------------------------
+
+glVertexStream1dvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLdouble -- ^ @coords@ pointing to @1@ element of type @GLdouble@.
+  -> m ()
+glVertexStream1dvATI v1 v2 = liftIO $ dyn96 ptr_glVertexStream1dvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1dvATI #-}
+ptr_glVertexStream1dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glVertexStream1dvATI = unsafePerformIO $ getCommand "glVertexStream1dvATI"
 
diff --git a/src/Graphics/GL/Functions/F32.hs b/src/Graphics/GL/Functions/F32.hs
--- a/src/Graphics/GL/Functions/F32.hs
+++ b/src/Graphics/GL/Functions/F32.hs
@@ -15,942 +15,1507 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F32 (
-  glWeightivARB,
-  glWeightsvARB,
-  glWeightubvARB,
-  glWeightuivARB,
-  glWeightusvARB,
-  glWindowPos2d,
-  glWindowPos2dARB,
-  glWindowPos2dMESA,
-  glWindowPos2dv,
-  glWindowPos2dvARB,
-  glWindowPos2dvMESA,
-  glWindowPos2f,
-  glWindowPos2fARB,
-  glWindowPos2fMESA,
-  glWindowPos2fv,
-  glWindowPos2fvARB,
-  glWindowPos2fvMESA,
-  glWindowPos2i,
-  glWindowPos2iARB,
-  glWindowPos2iMESA,
-  glWindowPos2iv,
-  glWindowPos2ivARB,
-  glWindowPos2ivMESA,
-  glWindowPos2s,
-  glWindowPos2sARB,
-  glWindowPos2sMESA,
-  glWindowPos2sv,
-  glWindowPos2svARB,
-  glWindowPos2svMESA,
-  glWindowPos3d,
-  glWindowPos3dARB,
-  glWindowPos3dMESA,
-  glWindowPos3dv,
-  glWindowPos3dvARB,
-  glWindowPos3dvMESA,
-  glWindowPos3f,
-  glWindowPos3fARB,
-  glWindowPos3fMESA,
-  glWindowPos3fv,
-  glWindowPos3fvARB,
-  glWindowPos3fvMESA,
-  glWindowPos3i,
-  glWindowPos3iARB,
-  glWindowPos3iMESA,
-  glWindowPos3iv,
-  glWindowPos3ivARB,
-  glWindowPos3ivMESA,
-  glWindowPos3s,
-  glWindowPos3sARB,
-  glWindowPos3sMESA,
-  glWindowPos3sv,
-  glWindowPos3svARB,
-  glWindowPos3svMESA,
-  glWindowPos4dMESA,
-  glWindowPos4dvMESA,
-  glWindowPos4fMESA,
-  glWindowPos4fvMESA,
-  glWindowPos4iMESA,
-  glWindowPos4ivMESA,
-  glWindowPos4sMESA,
-  glWindowPos4svMESA,
-  glWindowRectanglesEXT,
-  glWriteMaskEXT
-) where
-
-import Control.Monad.IO.Class ( MonadIO(..) )
-import Foreign.Ptr
-import Graphics.GL.Foreign
-import Graphics.GL.Types
-import System.IO.Unsafe ( unsafePerformIO )
-
--- glWeightivARB ---------------------------------------------------------------
-
-glWeightivARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLint -- ^ @weights@ pointing to @size@ elements of type @GLint@.
-  -> m ()
-glWeightivARB v1 v2 = liftIO $ dyn888 ptr_glWeightivARB v1 v2
-
-{-# NOINLINE ptr_glWeightivARB #-}
-ptr_glWeightivARB :: FunPtr (GLint -> Ptr GLint -> IO ())
-ptr_glWeightivARB = unsafePerformIO $ getCommand "glWeightivARB"
-
--- glWeightsvARB ---------------------------------------------------------------
-
-glWeightsvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLshort -- ^ @weights@ pointing to @size@ elements of type @GLshort@.
-  -> m ()
-glWeightsvARB v1 v2 = liftIO $ dyn889 ptr_glWeightsvARB v1 v2
-
-{-# NOINLINE ptr_glWeightsvARB #-}
-ptr_glWeightsvARB :: FunPtr (GLint -> Ptr GLshort -> IO ())
-ptr_glWeightsvARB = unsafePerformIO $ getCommand "glWeightsvARB"
-
--- glWeightubvARB --------------------------------------------------------------
-
-glWeightubvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLubyte -- ^ @weights@ pointing to @size@ elements of type @GLubyte@.
-  -> m ()
-glWeightubvARB v1 v2 = liftIO $ dyn519 ptr_glWeightubvARB v1 v2
-
-{-# NOINLINE ptr_glWeightubvARB #-}
-ptr_glWeightubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
-ptr_glWeightubvARB = unsafePerformIO $ getCommand "glWeightubvARB"
-
--- glWeightuivARB --------------------------------------------------------------
-
-glWeightuivARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLuint -- ^ @weights@ pointing to @size@ elements of type @GLuint@.
-  -> m ()
-glWeightuivARB v1 v2 = liftIO $ dyn520 ptr_glWeightuivARB v1 v2
-
-{-# NOINLINE ptr_glWeightuivARB #-}
-ptr_glWeightuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
-ptr_glWeightuivARB = unsafePerformIO $ getCommand "glWeightuivARB"
-
--- glWeightusvARB --------------------------------------------------------------
-
-glWeightusvARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> Ptr GLushort -- ^ @weights@ pointing to @size@ elements of type @GLushort@.
-  -> m ()
-glWeightusvARB v1 v2 = liftIO $ dyn521 ptr_glWeightusvARB v1 v2
-
-{-# NOINLINE ptr_glWeightusvARB #-}
-ptr_glWeightusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
-ptr_glWeightusvARB = unsafePerformIO $ getCommand "glWeightusvARB"
-
--- glWindowPos2d ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2dv'.
-glWindowPos2d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> m ()
-glWindowPos2d v1 v2 = liftIO $ dyn217 ptr_glWindowPos2d v1 v2
-
-{-# NOINLINE ptr_glWindowPos2d #-}
-ptr_glWindowPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos2d = unsafePerformIO $ getCommand "glWindowPos2d"
-
--- glWindowPos2dARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2dvARB'. This command is an alias for 'glWindowPos2d'.
-glWindowPos2dARB
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> m ()
-glWindowPos2dARB v1 v2 = liftIO $ dyn217 ptr_glWindowPos2dARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2dARB #-}
-ptr_glWindowPos2dARB :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos2dARB = unsafePerformIO $ getCommand "glWindowPos2dARB"
-
--- glWindowPos2dMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2dvMESA'. This command is an alias for 'glWindowPos2d'.
-glWindowPos2dMESA
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> m ()
-glWindowPos2dMESA v1 v2 = liftIO $ dyn217 ptr_glWindowPos2dMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2dMESA #-}
-ptr_glWindowPos2dMESA :: FunPtr (GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos2dMESA = unsafePerformIO $ getCommand "glWindowPos2dMESA"
-
--- glWindowPos2dv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glWindowPos2dv v1 = liftIO $ dyn39 ptr_glWindowPos2dv v1
-
-{-# NOINLINE ptr_glWindowPos2dv #-}
-ptr_glWindowPos2dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos2dv = unsafePerformIO $ getCommand "glWindowPos2dv"
-
--- glWindowPos2dvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2dv'.
-glWindowPos2dvARB
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glWindowPos2dvARB v1 = liftIO $ dyn39 ptr_glWindowPos2dvARB v1
-
-{-# NOINLINE ptr_glWindowPos2dvARB #-}
-ptr_glWindowPos2dvARB :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos2dvARB = unsafePerformIO $ getCommand "glWindowPos2dvARB"
-
--- glWindowPos2dvMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2dv'.
-glWindowPos2dvMESA
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glWindowPos2dvMESA v1 = liftIO $ dyn39 ptr_glWindowPos2dvMESA v1
-
-{-# NOINLINE ptr_glWindowPos2dvMESA #-}
-ptr_glWindowPos2dvMESA :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos2dvMESA = unsafePerformIO $ getCommand "glWindowPos2dvMESA"
-
--- glWindowPos2f ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2fv'.
-glWindowPos2f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> m ()
-glWindowPos2f v1 v2 = liftIO $ dyn222 ptr_glWindowPos2f v1 v2
-
-{-# NOINLINE ptr_glWindowPos2f #-}
-ptr_glWindowPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos2f = unsafePerformIO $ getCommand "glWindowPos2f"
-
--- glWindowPos2fARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2fvARB'. This command is an alias for 'glWindowPos2f'.
-glWindowPos2fARB
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> m ()
-glWindowPos2fARB v1 v2 = liftIO $ dyn222 ptr_glWindowPos2fARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2fARB #-}
-ptr_glWindowPos2fARB :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos2fARB = unsafePerformIO $ getCommand "glWindowPos2fARB"
-
--- glWindowPos2fMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2fvMESA'. This command is an alias for 'glWindowPos2f'.
-glWindowPos2fMESA
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> m ()
-glWindowPos2fMESA v1 v2 = liftIO $ dyn222 ptr_glWindowPos2fMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2fMESA #-}
-ptr_glWindowPos2fMESA :: FunPtr (GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos2fMESA = unsafePerformIO $ getCommand "glWindowPos2fMESA"
-
--- glWindowPos2fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fv v1 = liftIO $ dyn41 ptr_glWindowPos2fv v1
-
-{-# NOINLINE ptr_glWindowPos2fv #-}
-ptr_glWindowPos2fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fv = unsafePerformIO $ getCommand "glWindowPos2fv"
-
--- glWindowPos2fvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2fv'.
-glWindowPos2fvARB
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fvARB v1 = liftIO $ dyn41 ptr_glWindowPos2fvARB v1
-
-{-# NOINLINE ptr_glWindowPos2fvARB #-}
-ptr_glWindowPos2fvARB :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fvARB = unsafePerformIO $ getCommand "glWindowPos2fvARB"
-
--- glWindowPos2fvMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2fv'.
-glWindowPos2fvMESA
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fvMESA v1 = liftIO $ dyn41 ptr_glWindowPos2fvMESA v1
-
-{-# NOINLINE ptr_glWindowPos2fvMESA #-}
-ptr_glWindowPos2fvMESA :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fvMESA = unsafePerformIO $ getCommand "glWindowPos2fvMESA"
-
--- glWindowPos2i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2iv'.
-glWindowPos2i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2i v1 v2 = liftIO $ dyn266 ptr_glWindowPos2i v1 v2
-
-{-# NOINLINE ptr_glWindowPos2i #-}
-ptr_glWindowPos2i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2i = unsafePerformIO $ getCommand "glWindowPos2i"
-
--- glWindowPos2iARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2ivARB'. This command is an alias for 'glWindowPos2i'.
-glWindowPos2iARB
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2iARB v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2iARB #-}
-ptr_glWindowPos2iARB :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2iARB = unsafePerformIO $ getCommand "glWindowPos2iARB"
-
--- glWindowPos2iMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2ivMESA'. This command is an alias for 'glWindowPos2i'.
-glWindowPos2iMESA
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2iMESA v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2iMESA #-}
-ptr_glWindowPos2iMESA :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2iMESA = unsafePerformIO $ getCommand "glWindowPos2iMESA"
-
--- glWindowPos2iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2iv v1 = liftIO $ dyn43 ptr_glWindowPos2iv v1
-
-{-# NOINLINE ptr_glWindowPos2iv #-}
-ptr_glWindowPos2iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2iv = unsafePerformIO $ getCommand "glWindowPos2iv"
-
--- glWindowPos2ivARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2iv'.
-glWindowPos2ivARB
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2ivARB v1 = liftIO $ dyn43 ptr_glWindowPos2ivARB v1
-
-{-# NOINLINE ptr_glWindowPos2ivARB #-}
-ptr_glWindowPos2ivARB :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2ivARB = unsafePerformIO $ getCommand "glWindowPos2ivARB"
-
--- glWindowPos2ivMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2iv'.
-glWindowPos2ivMESA
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2ivMESA v1 = liftIO $ dyn43 ptr_glWindowPos2ivMESA v1
-
-{-# NOINLINE ptr_glWindowPos2ivMESA #-}
-ptr_glWindowPos2ivMESA :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2ivMESA = unsafePerformIO $ getCommand "glWindowPos2ivMESA"
-
--- glWindowPos2s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2sv'.
-glWindowPos2s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glWindowPos2s v1 v2 = liftIO $ dyn672 ptr_glWindowPos2s v1 v2
-
-{-# NOINLINE ptr_glWindowPos2s #-}
-ptr_glWindowPos2s :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glWindowPos2s = unsafePerformIO $ getCommand "glWindowPos2s"
-
--- glWindowPos2sARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2svARB'. This command is an alias for 'glWindowPos2s'.
-glWindowPos2sARB
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glWindowPos2sARB v1 v2 = liftIO $ dyn672 ptr_glWindowPos2sARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2sARB #-}
-ptr_glWindowPos2sARB :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glWindowPos2sARB = unsafePerformIO $ getCommand "glWindowPos2sARB"
-
--- glWindowPos2sMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2svMESA'. This command is an alias for 'glWindowPos2s'.
-glWindowPos2sMESA
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glWindowPos2sMESA v1 v2 = liftIO $ dyn672 ptr_glWindowPos2sMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2sMESA #-}
-ptr_glWindowPos2sMESA :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glWindowPos2sMESA = unsafePerformIO $ getCommand "glWindowPos2sMESA"
-
--- glWindowPos2sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glWindowPos2sv v1 = liftIO $ dyn45 ptr_glWindowPos2sv v1
-
-{-# NOINLINE ptr_glWindowPos2sv #-}
-ptr_glWindowPos2sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos2sv = unsafePerformIO $ getCommand "glWindowPos2sv"
-
--- glWindowPos2svARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2sv'.
-glWindowPos2svARB
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glWindowPos2svARB v1 = liftIO $ dyn45 ptr_glWindowPos2svARB v1
-
-{-# NOINLINE ptr_glWindowPos2svARB #-}
-ptr_glWindowPos2svARB :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos2svARB = unsafePerformIO $ getCommand "glWindowPos2svARB"
-
--- glWindowPos2svMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2sv'.
-glWindowPos2svMESA
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
-  -> m ()
-glWindowPos2svMESA v1 = liftIO $ dyn45 ptr_glWindowPos2svMESA v1
-
-{-# NOINLINE ptr_glWindowPos2svMESA #-}
-ptr_glWindowPos2svMESA :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos2svMESA = unsafePerformIO $ getCommand "glWindowPos2svMESA"
-
--- glWindowPos3d ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3dv'.
-glWindowPos3d
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> m ()
-glWindowPos3d v1 v2 v3 = liftIO $ dyn38 ptr_glWindowPos3d v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3d #-}
-ptr_glWindowPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos3d = unsafePerformIO $ getCommand "glWindowPos3d"
-
--- glWindowPos3dARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3dvARB'. This command is an alias for 'glWindowPos3d'.
-glWindowPos3dARB
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> m ()
-glWindowPos3dARB v1 v2 v3 = liftIO $ dyn38 ptr_glWindowPos3dARB v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3dARB #-}
-ptr_glWindowPos3dARB :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos3dARB = unsafePerformIO $ getCommand "glWindowPos3dARB"
-
--- glWindowPos3dMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3dvMESA'. This command is an alias for 'glWindowPos3d'.
-glWindowPos3dMESA
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> m ()
-glWindowPos3dMESA v1 v2 v3 = liftIO $ dyn38 ptr_glWindowPos3dMESA v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3dMESA #-}
-ptr_glWindowPos3dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos3dMESA = unsafePerformIO $ getCommand "glWindowPos3dMESA"
-
--- glWindowPos3dv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos3dv
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glWindowPos3dv v1 = liftIO $ dyn39 ptr_glWindowPos3dv v1
-
-{-# NOINLINE ptr_glWindowPos3dv #-}
-ptr_glWindowPos3dv :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos3dv = unsafePerformIO $ getCommand "glWindowPos3dv"
-
--- glWindowPos3dvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3dv'.
-glWindowPos3dvARB
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glWindowPos3dvARB v1 = liftIO $ dyn39 ptr_glWindowPos3dvARB v1
-
-{-# NOINLINE ptr_glWindowPos3dvARB #-}
-ptr_glWindowPos3dvARB :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos3dvARB = unsafePerformIO $ getCommand "glWindowPos3dvARB"
-
--- glWindowPos3dvMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3dv'.
-glWindowPos3dvMESA
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
-  -> m ()
-glWindowPos3dvMESA v1 = liftIO $ dyn39 ptr_glWindowPos3dvMESA v1
-
-{-# NOINLINE ptr_glWindowPos3dvMESA #-}
-ptr_glWindowPos3dvMESA :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos3dvMESA = unsafePerformIO $ getCommand "glWindowPos3dvMESA"
-
--- glWindowPos3f ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3fv'.
-glWindowPos3f
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> m ()
-glWindowPos3f v1 v2 v3 = liftIO $ dyn40 ptr_glWindowPos3f v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3f #-}
-ptr_glWindowPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos3f = unsafePerformIO $ getCommand "glWindowPos3f"
-
--- glWindowPos3fARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3fvARB'. This command is an alias for 'glWindowPos3f'.
-glWindowPos3fARB
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> m ()
-glWindowPos3fARB v1 v2 v3 = liftIO $ dyn40 ptr_glWindowPos3fARB v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3fARB #-}
-ptr_glWindowPos3fARB :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos3fARB = unsafePerformIO $ getCommand "glWindowPos3fARB"
-
--- glWindowPos3fMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3fvMESA'. This command is an alias for 'glWindowPos3f'.
-glWindowPos3fMESA
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> m ()
-glWindowPos3fMESA v1 v2 v3 = liftIO $ dyn40 ptr_glWindowPos3fMESA v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3fMESA #-}
-ptr_glWindowPos3fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos3fMESA = unsafePerformIO $ getCommand "glWindowPos3fMESA"
-
--- glWindowPos3fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos3fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glWindowPos3fv v1 = liftIO $ dyn41 ptr_glWindowPos3fv v1
-
-{-# NOINLINE ptr_glWindowPos3fv #-}
-ptr_glWindowPos3fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos3fv = unsafePerformIO $ getCommand "glWindowPos3fv"
-
--- glWindowPos3fvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3fv'.
-glWindowPos3fvARB
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glWindowPos3fvARB v1 = liftIO $ dyn41 ptr_glWindowPos3fvARB v1
-
-{-# NOINLINE ptr_glWindowPos3fvARB #-}
-ptr_glWindowPos3fvARB :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos3fvARB = unsafePerformIO $ getCommand "glWindowPos3fvARB"
-
--- glWindowPos3fvMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3fv'.
-glWindowPos3fvMESA
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
-  -> m ()
-glWindowPos3fvMESA v1 = liftIO $ dyn41 ptr_glWindowPos3fvMESA v1
-
-{-# NOINLINE ptr_glWindowPos3fvMESA #-}
-ptr_glWindowPos3fvMESA :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos3fvMESA = unsafePerformIO $ getCommand "glWindowPos3fvMESA"
-
--- glWindowPos3i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3iv'.
-glWindowPos3i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> m ()
-glWindowPos3i v1 v2 v3 = liftIO $ dyn42 ptr_glWindowPos3i v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3i #-}
-ptr_glWindowPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glWindowPos3i = unsafePerformIO $ getCommand "glWindowPos3i"
-
--- glWindowPos3iARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3ivARB'. This command is an alias for 'glWindowPos3i'.
-glWindowPos3iARB
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> m ()
-glWindowPos3iARB v1 v2 v3 = liftIO $ dyn42 ptr_glWindowPos3iARB v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3iARB #-}
-ptr_glWindowPos3iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glWindowPos3iARB = unsafePerformIO $ getCommand "glWindowPos3iARB"
-
--- glWindowPos3iMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3ivMESA'. This command is an alias for 'glWindowPos3i'.
-glWindowPos3iMESA
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> m ()
-glWindowPos3iMESA v1 v2 v3 = liftIO $ dyn42 ptr_glWindowPos3iMESA v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3iMESA #-}
-ptr_glWindowPos3iMESA :: FunPtr (GLint -> GLint -> GLint -> IO ())
-ptr_glWindowPos3iMESA = unsafePerformIO $ getCommand "glWindowPos3iMESA"
-
--- glWindowPos3iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glWindowPos3iv v1 = liftIO $ dyn43 ptr_glWindowPos3iv v1
-
-{-# NOINLINE ptr_glWindowPos3iv #-}
-ptr_glWindowPos3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos3iv = unsafePerformIO $ getCommand "glWindowPos3iv"
-
--- glWindowPos3ivARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3iv'.
-glWindowPos3ivARB
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glWindowPos3ivARB v1 = liftIO $ dyn43 ptr_glWindowPos3ivARB v1
-
-{-# NOINLINE ptr_glWindowPos3ivARB #-}
-ptr_glWindowPos3ivARB :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos3ivARB = unsafePerformIO $ getCommand "glWindowPos3ivARB"
-
--- glWindowPos3ivMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3iv'.
-glWindowPos3ivMESA
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glWindowPos3ivMESA v1 = liftIO $ dyn43 ptr_glWindowPos3ivMESA v1
-
-{-# NOINLINE ptr_glWindowPos3ivMESA #-}
-ptr_glWindowPos3ivMESA :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos3ivMESA = unsafePerformIO $ getCommand "glWindowPos3ivMESA"
-
--- glWindowPos3s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3sv'.
-glWindowPos3s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glWindowPos3s v1 v2 v3 = liftIO $ dyn44 ptr_glWindowPos3s v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3s #-}
-ptr_glWindowPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glWindowPos3s = unsafePerformIO $ getCommand "glWindowPos3s"
-
--- glWindowPos3sARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3svARB'. This command is an alias for 'glWindowPos3s'.
-glWindowPos3sARB
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glWindowPos3sARB v1 v2 v3 = liftIO $ dyn44 ptr_glWindowPos3sARB v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3sARB #-}
-ptr_glWindowPos3sARB :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glWindowPos3sARB = unsafePerformIO $ getCommand "glWindowPos3sARB"
-
--- glWindowPos3sMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos3svMESA'. This command is an alias for 'glWindowPos3s'.
-glWindowPos3sMESA
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glWindowPos3sMESA v1 v2 v3 = liftIO $ dyn44 ptr_glWindowPos3sMESA v1 v2 v3
-
-{-# NOINLINE ptr_glWindowPos3sMESA #-}
-ptr_glWindowPos3sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glWindowPos3sMESA = unsafePerformIO $ getCommand "glWindowPos3sMESA"
-
--- glWindowPos3sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glWindowPos3sv v1 = liftIO $ dyn45 ptr_glWindowPos3sv v1
-
-{-# NOINLINE ptr_glWindowPos3sv #-}
-ptr_glWindowPos3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos3sv = unsafePerformIO $ getCommand "glWindowPos3sv"
-
--- glWindowPos3svARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3sv'.
-glWindowPos3svARB
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glWindowPos3svARB v1 = liftIO $ dyn45 ptr_glWindowPos3svARB v1
-
-{-# NOINLINE ptr_glWindowPos3svARB #-}
-ptr_glWindowPos3svARB :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos3svARB = unsafePerformIO $ getCommand "glWindowPos3svARB"
-
--- glWindowPos3svMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos3sv'.
-glWindowPos3svMESA
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glWindowPos3svMESA v1 = liftIO $ dyn45 ptr_glWindowPos3svMESA v1
-
-{-# NOINLINE ptr_glWindowPos3svMESA #-}
-ptr_glWindowPos3svMESA :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos3svMESA = unsafePerformIO $ getCommand "glWindowPos3svMESA"
-
--- glWindowPos4dMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos4dvMESA'.
-glWindowPos4dMESA
-  :: MonadIO m
-  => GLdouble -- ^ @x@ of type @CoordD@.
-  -> GLdouble -- ^ @y@ of type @CoordD@.
-  -> GLdouble -- ^ @z@ of type @CoordD@.
-  -> GLdouble -- ^ @w@ of type @CoordD@.
-  -> m ()
-glWindowPos4dMESA v1 v2 v3 v4 = liftIO $ dyn109 ptr_glWindowPos4dMESA v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWindowPos4dMESA #-}
-ptr_glWindowPos4dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glWindowPos4dMESA = unsafePerformIO $ getCommand "glWindowPos4dMESA"
-
--- glWindowPos4dvMESA ----------------------------------------------------------
-
-glWindowPos4dvMESA
-  :: MonadIO m
-  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
-  -> m ()
-glWindowPos4dvMESA v1 = liftIO $ dyn39 ptr_glWindowPos4dvMESA v1
-
-{-# NOINLINE ptr_glWindowPos4dvMESA #-}
-ptr_glWindowPos4dvMESA :: FunPtr (Ptr GLdouble -> IO ())
-ptr_glWindowPos4dvMESA = unsafePerformIO $ getCommand "glWindowPos4dvMESA"
-
--- glWindowPos4fMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos4fvMESA'.
-glWindowPos4fMESA
-  :: MonadIO m
-  => GLfloat -- ^ @x@ of type @CoordF@.
-  -> GLfloat -- ^ @y@ of type @CoordF@.
-  -> GLfloat -- ^ @z@ of type @CoordF@.
-  -> GLfloat -- ^ @w@ of type @CoordF@.
-  -> m ()
-glWindowPos4fMESA v1 v2 v3 v4 = liftIO $ dyn49 ptr_glWindowPos4fMESA v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWindowPos4fMESA #-}
-ptr_glWindowPos4fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-ptr_glWindowPos4fMESA = unsafePerformIO $ getCommand "glWindowPos4fMESA"
-
--- glWindowPos4fvMESA ----------------------------------------------------------
-
-glWindowPos4fvMESA
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
-  -> m ()
-glWindowPos4fvMESA v1 = liftIO $ dyn41 ptr_glWindowPos4fvMESA v1
-
-{-# NOINLINE ptr_glWindowPos4fvMESA #-}
-ptr_glWindowPos4fvMESA :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos4fvMESA = unsafePerformIO $ getCommand "glWindowPos4fvMESA"
-
--- glWindowPos4iMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos4ivMESA'.
-glWindowPos4iMESA
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> GLint -- ^ @z@ of type @CoordI@.
-  -> GLint -- ^ @w@ of type @CoordI@.
-  -> m ()
-glWindowPos4iMESA v1 v2 v3 v4 = liftIO $ dyn76 ptr_glWindowPos4iMESA v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWindowPos4iMESA #-}
-ptr_glWindowPos4iMESA :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glWindowPos4iMESA = unsafePerformIO $ getCommand "glWindowPos4iMESA"
-
--- glWindowPos4ivMESA ----------------------------------------------------------
-
-glWindowPos4ivMESA
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glWindowPos4ivMESA v1 = liftIO $ dyn43 ptr_glWindowPos4ivMESA v1
-
-{-# NOINLINE ptr_glWindowPos4ivMESA #-}
-ptr_glWindowPos4ivMESA :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos4ivMESA = unsafePerformIO $ getCommand "glWindowPos4ivMESA"
-
--- glWindowPos4sMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos4svMESA'.
-glWindowPos4sMESA
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> GLshort -- ^ @w@ of type @CoordS@.
-  -> m ()
-glWindowPos4sMESA v1 v2 v3 v4 = liftIO $ dyn113 ptr_glWindowPos4sMESA v1 v2 v3 v4
-
-{-# NOINLINE ptr_glWindowPos4sMESA #-}
-ptr_glWindowPos4sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glWindowPos4sMESA = unsafePerformIO $ getCommand "glWindowPos4sMESA"
-
--- glWindowPos4svMESA ----------------------------------------------------------
-
-glWindowPos4svMESA
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glWindowPos4svMESA v1 = liftIO $ dyn45 ptr_glWindowPos4svMESA v1
-
-{-# NOINLINE ptr_glWindowPos4svMESA #-}
-ptr_glWindowPos4svMESA :: FunPtr (Ptr GLshort -> IO ())
-ptr_glWindowPos4svMESA = unsafePerformIO $ getCommand "glWindowPos4svMESA"
-
--- glWindowRectanglesEXT -------------------------------------------------------
-
-glWindowRectanglesEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint -- ^ @box@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
-  -> m ()
-glWindowRectanglesEXT v1 v2 v3 = liftIO $ dyn890 ptr_glWindowRectanglesEXT v1 v2 v3
-
-{-# NOINLINE ptr_glWindowRectanglesEXT #-}
-ptr_glWindowRectanglesEXT :: FunPtr (GLenum -> GLsizei -> Ptr GLint -> IO ())
-ptr_glWindowRectanglesEXT = unsafePerformIO $ getCommand "glWindowRectanglesEXT"
-
--- glWriteMaskEXT --------------------------------------------------------------
-
-glWriteMaskEXT
-  :: MonadIO m
-  => GLuint -- ^ @res@.
-  -> GLuint -- ^ @in@.
-  -> GLenum -- ^ @outX@ of type @VertexShaderWriteMaskEXT@.
-  -> GLenum -- ^ @outY@ of type @VertexShaderWriteMaskEXT@.
-  -> GLenum -- ^ @outZ@ of type @VertexShaderWriteMaskEXT@.
-  -> GLenum -- ^ @outW@ of type @VertexShaderWriteMaskEXT@.
-  -> m ()
-glWriteMaskEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn723 ptr_glWriteMaskEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glWriteMaskEXT #-}
-ptr_glWriteMaskEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
-ptr_glWriteMaskEXT = unsafePerformIO $ getCommand "glWriteMaskEXT"
+  glVertexStream1fATI,
+  glVertexStream1fvATI,
+  glVertexStream1iATI,
+  glVertexStream1ivATI,
+  glVertexStream1sATI,
+  glVertexStream1svATI,
+  glVertexStream2dATI,
+  glVertexStream2dvATI,
+  glVertexStream2fATI,
+  glVertexStream2fvATI,
+  glVertexStream2iATI,
+  glVertexStream2ivATI,
+  glVertexStream2sATI,
+  glVertexStream2svATI,
+  glVertexStream3dATI,
+  glVertexStream3dvATI,
+  glVertexStream3fATI,
+  glVertexStream3fvATI,
+  glVertexStream3iATI,
+  glVertexStream3ivATI,
+  glVertexStream3sATI,
+  glVertexStream3svATI,
+  glVertexStream4dATI,
+  glVertexStream4dvATI,
+  glVertexStream4fATI,
+  glVertexStream4fvATI,
+  glVertexStream4iATI,
+  glVertexStream4ivATI,
+  glVertexStream4sATI,
+  glVertexStream4svATI,
+  glVertexWeightPointerEXT,
+  glVertexWeightfEXT,
+  glVertexWeightfvEXT,
+  glVertexWeighthNV,
+  glVertexWeighthvNV,
+  glVideoCaptureNV,
+  glVideoCaptureStreamParameterdvNV,
+  glVideoCaptureStreamParameterfvNV,
+  glVideoCaptureStreamParameterivNV,
+  glViewport,
+  glViewportArrayv,
+  glViewportArrayvNV,
+  glViewportArrayvOES,
+  glViewportIndexedf,
+  glViewportIndexedfNV,
+  glViewportIndexedfOES,
+  glViewportIndexedfv,
+  glViewportIndexedfvNV,
+  glViewportIndexedfvOES,
+  glViewportPositionWScaleNV,
+  glViewportSwizzleNV,
+  glWaitSemaphoreEXT,
+  glWaitSync,
+  glWaitSyncAPPLE,
+  glWaitVkSemaphoreNV,
+  glWeightPathsNV,
+  glWeightPointerARB,
+  glWeightPointerOES,
+  glWeightbvARB,
+  glWeightdvARB,
+  glWeightfvARB,
+  glWeightivARB,
+  glWeightsvARB,
+  glWeightubvARB,
+  glWeightuivARB,
+  glWeightusvARB,
+  glWindowPos2d,
+  glWindowPos2dARB,
+  glWindowPos2dMESA,
+  glWindowPos2dv,
+  glWindowPos2dvARB,
+  glWindowPos2dvMESA,
+  glWindowPos2f,
+  glWindowPos2fARB,
+  glWindowPos2fMESA,
+  glWindowPos2fv,
+  glWindowPos2fvARB,
+  glWindowPos2fvMESA,
+  glWindowPos2i,
+  glWindowPos2iARB,
+  glWindowPos2iMESA,
+  glWindowPos2iv,
+  glWindowPos2ivARB,
+  glWindowPos2ivMESA,
+  glWindowPos2s,
+  glWindowPos2sARB,
+  glWindowPos2sMESA,
+  glWindowPos2sv,
+  glWindowPos2svARB,
+  glWindowPos2svMESA,
+  glWindowPos3d,
+  glWindowPos3dARB,
+  glWindowPos3dMESA,
+  glWindowPos3dv,
+  glWindowPos3dvARB,
+  glWindowPos3dvMESA,
+  glWindowPos3f,
+  glWindowPos3fARB,
+  glWindowPos3fMESA,
+  glWindowPos3fv
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glVertexStream1fATI ---------------------------------------------------------
+
+glVertexStream1fATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @x@.
+  -> m ()
+glVertexStream1fATI v1 v2 = liftIO $ dyn0 ptr_glVertexStream1fATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1fATI #-}
+ptr_glVertexStream1fATI :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glVertexStream1fATI = unsafePerformIO $ getCommand "glVertexStream1fATI"
+
+-- glVertexStream1fvATI --------------------------------------------------------
+
+glVertexStream1fvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLfloat -- ^ @coords@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glVertexStream1fvATI v1 v2 = liftIO $ dyn97 ptr_glVertexStream1fvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1fvATI #-}
+ptr_glVertexStream1fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glVertexStream1fvATI = unsafePerformIO $ getCommand "glVertexStream1fvATI"
+
+-- glVertexStream1iATI ---------------------------------------------------------
+
+glVertexStream1iATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLint -- ^ @x@.
+  -> m ()
+glVertexStream1iATI v1 v2 = liftIO $ dyn56 ptr_glVertexStream1iATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1iATI #-}
+ptr_glVertexStream1iATI :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glVertexStream1iATI = unsafePerformIO $ getCommand "glVertexStream1iATI"
+
+-- glVertexStream1ivATI --------------------------------------------------------
+
+glVertexStream1ivATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLint -- ^ @coords@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glVertexStream1ivATI v1 v2 = liftIO $ dyn139 ptr_glVertexStream1ivATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1ivATI #-}
+ptr_glVertexStream1ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glVertexStream1ivATI = unsafePerformIO $ getCommand "glVertexStream1ivATI"
+
+-- glVertexStream1sATI ---------------------------------------------------------
+
+glVertexStream1sATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLshort -- ^ @x@.
+  -> m ()
+glVertexStream1sATI v1 v2 = liftIO $ dyn561 ptr_glVertexStream1sATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1sATI #-}
+ptr_glVertexStream1sATI :: FunPtr (GLenum -> GLshort -> IO ())
+ptr_glVertexStream1sATI = unsafePerformIO $ getCommand "glVertexStream1sATI"
+
+-- glVertexStream1svATI --------------------------------------------------------
+
+glVertexStream1svATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLshort -- ^ @coords@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexStream1svATI v1 v2 = liftIO $ dyn562 ptr_glVertexStream1svATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream1svATI #-}
+ptr_glVertexStream1svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glVertexStream1svATI = unsafePerformIO $ getCommand "glVertexStream1svATI"
+
+-- glVertexStream2dATI ---------------------------------------------------------
+
+glVertexStream2dATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexStream2dATI v1 v2 v3 = liftIO $ dyn564 ptr_glVertexStream2dATI v1 v2 v3
+
+{-# NOINLINE ptr_glVertexStream2dATI #-}
+ptr_glVertexStream2dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexStream2dATI = unsafePerformIO $ getCommand "glVertexStream2dATI"
+
+-- glVertexStream2dvATI --------------------------------------------------------
+
+glVertexStream2dvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLdouble -- ^ @coords@ pointing to @2@ elements of type @GLdouble@.
+  -> m ()
+glVertexStream2dvATI v1 v2 = liftIO $ dyn96 ptr_glVertexStream2dvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream2dvATI #-}
+ptr_glVertexStream2dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glVertexStream2dvATI = unsafePerformIO $ getCommand "glVertexStream2dvATI"
+
+-- glVertexStream2fATI ---------------------------------------------------------
+
+glVertexStream2fATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m ()
+glVertexStream2fATI v1 v2 v3 = liftIO $ dyn565 ptr_glVertexStream2fATI v1 v2 v3
+
+{-# NOINLINE ptr_glVertexStream2fATI #-}
+ptr_glVertexStream2fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexStream2fATI = unsafePerformIO $ getCommand "glVertexStream2fATI"
+
+-- glVertexStream2fvATI --------------------------------------------------------
+
+glVertexStream2fvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLfloat -- ^ @coords@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glVertexStream2fvATI v1 v2 = liftIO $ dyn97 ptr_glVertexStream2fvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream2fvATI #-}
+ptr_glVertexStream2fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glVertexStream2fvATI = unsafePerformIO $ getCommand "glVertexStream2fvATI"
+
+-- glVertexStream2iATI ---------------------------------------------------------
+
+glVertexStream2iATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> m ()
+glVertexStream2iATI v1 v2 v3 = liftIO $ dyn268 ptr_glVertexStream2iATI v1 v2 v3
+
+{-# NOINLINE ptr_glVertexStream2iATI #-}
+ptr_glVertexStream2iATI :: FunPtr (GLenum -> GLint -> GLint -> IO ())
+ptr_glVertexStream2iATI = unsafePerformIO $ getCommand "glVertexStream2iATI"
+
+-- glVertexStream2ivATI --------------------------------------------------------
+
+glVertexStream2ivATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLint -- ^ @coords@ pointing to @2@ elements of type @GLint@.
+  -> m ()
+glVertexStream2ivATI v1 v2 = liftIO $ dyn139 ptr_glVertexStream2ivATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream2ivATI #-}
+ptr_glVertexStream2ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glVertexStream2ivATI = unsafePerformIO $ getCommand "glVertexStream2ivATI"
+
+-- glVertexStream2sATI ---------------------------------------------------------
+
+glVertexStream2sATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> m ()
+glVertexStream2sATI v1 v2 v3 = liftIO $ dyn567 ptr_glVertexStream2sATI v1 v2 v3
+
+{-# NOINLINE ptr_glVertexStream2sATI #-}
+ptr_glVertexStream2sATI :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
+ptr_glVertexStream2sATI = unsafePerformIO $ getCommand "glVertexStream2sATI"
+
+-- glVertexStream2svATI --------------------------------------------------------
+
+glVertexStream2svATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLshort -- ^ @coords@ pointing to @2@ elements of type @GLshort@.
+  -> m ()
+glVertexStream2svATI v1 v2 = liftIO $ dyn562 ptr_glVertexStream2svATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream2svATI #-}
+ptr_glVertexStream2svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glVertexStream2svATI = unsafePerformIO $ getCommand "glVertexStream2svATI"
+
+-- glVertexStream3dATI ---------------------------------------------------------
+
+glVertexStream3dATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> m ()
+glVertexStream3dATI v1 v2 v3 v4 = liftIO $ dyn539 ptr_glVertexStream3dATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexStream3dATI #-}
+ptr_glVertexStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexStream3dATI = unsafePerformIO $ getCommand "glVertexStream3dATI"
+
+-- glVertexStream3dvATI --------------------------------------------------------
+
+glVertexStream3dvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
+  -> m ()
+glVertexStream3dvATI v1 v2 = liftIO $ dyn96 ptr_glVertexStream3dvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream3dvATI #-}
+ptr_glVertexStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glVertexStream3dvATI = unsafePerformIO $ getCommand "glVertexStream3dvATI"
+
+-- glVertexStream3fATI ---------------------------------------------------------
+
+glVertexStream3fATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> m ()
+glVertexStream3fATI v1 v2 v3 v4 = liftIO $ dyn540 ptr_glVertexStream3fATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexStream3fATI #-}
+ptr_glVertexStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexStream3fATI = unsafePerformIO $ getCommand "glVertexStream3fATI"
+
+-- glVertexStream3fvATI --------------------------------------------------------
+
+glVertexStream3fvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
+  -> m ()
+glVertexStream3fvATI v1 v2 = liftIO $ dyn97 ptr_glVertexStream3fvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream3fvATI #-}
+ptr_glVertexStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glVertexStream3fvATI = unsafePerformIO $ getCommand "glVertexStream3fvATI"
+
+-- glVertexStream3iATI ---------------------------------------------------------
+
+glVertexStream3iATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> m ()
+glVertexStream3iATI v1 v2 v3 v4 = liftIO $ dyn571 ptr_glVertexStream3iATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexStream3iATI #-}
+ptr_glVertexStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexStream3iATI = unsafePerformIO $ getCommand "glVertexStream3iATI"
+
+-- glVertexStream3ivATI --------------------------------------------------------
+
+glVertexStream3ivATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
+  -> m ()
+glVertexStream3ivATI v1 v2 = liftIO $ dyn139 ptr_glVertexStream3ivATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream3ivATI #-}
+ptr_glVertexStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glVertexStream3ivATI = unsafePerformIO $ getCommand "glVertexStream3ivATI"
+
+-- glVertexStream3sATI ---------------------------------------------------------
+
+glVertexStream3sATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> m ()
+glVertexStream3sATI v1 v2 v3 v4 = liftIO $ dyn572 ptr_glVertexStream3sATI v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexStream3sATI #-}
+ptr_glVertexStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexStream3sATI = unsafePerformIO $ getCommand "glVertexStream3sATI"
+
+-- glVertexStream3svATI --------------------------------------------------------
+
+glVertexStream3svATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
+  -> m ()
+glVertexStream3svATI v1 v2 = liftIO $ dyn562 ptr_glVertexStream3svATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream3svATI #-}
+ptr_glVertexStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glVertexStream3svATI = unsafePerformIO $ getCommand "glVertexStream3svATI"
+
+-- glVertexStream4dATI ---------------------------------------------------------
+
+glVertexStream4dATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> GLdouble -- ^ @z@.
+  -> GLdouble -- ^ @w@.
+  -> m ()
+glVertexStream4dATI v1 v2 v3 v4 v5 = liftIO $ dyn537 ptr_glVertexStream4dATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexStream4dATI #-}
+ptr_glVertexStream4dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexStream4dATI = unsafePerformIO $ getCommand "glVertexStream4dATI"
+
+-- glVertexStream4dvATI --------------------------------------------------------
+
+glVertexStream4dvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLdouble -- ^ @coords@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glVertexStream4dvATI v1 v2 = liftIO $ dyn96 ptr_glVertexStream4dvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream4dvATI #-}
+ptr_glVertexStream4dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glVertexStream4dvATI = unsafePerformIO $ getCommand "glVertexStream4dvATI"
+
+-- glVertexStream4fATI ---------------------------------------------------------
+
+glVertexStream4fATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @z@.
+  -> GLfloat -- ^ @w@.
+  -> m ()
+glVertexStream4fATI v1 v2 v3 v4 v5 = liftIO $ dyn538 ptr_glVertexStream4fATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexStream4fATI #-}
+ptr_glVertexStream4fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexStream4fATI = unsafePerformIO $ getCommand "glVertexStream4fATI"
+
+-- glVertexStream4fvATI --------------------------------------------------------
+
+glVertexStream4fvATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLfloat -- ^ @coords@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glVertexStream4fvATI v1 v2 = liftIO $ dyn97 ptr_glVertexStream4fvATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream4fvATI #-}
+ptr_glVertexStream4fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
+ptr_glVertexStream4fvATI = unsafePerformIO $ getCommand "glVertexStream4fvATI"
+
+-- glVertexStream4iATI ---------------------------------------------------------
+
+glVertexStream4iATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLint -- ^ @x@.
+  -> GLint -- ^ @y@.
+  -> GLint -- ^ @z@.
+  -> GLint -- ^ @w@.
+  -> m ()
+glVertexStream4iATI v1 v2 v3 v4 v5 = liftIO $ dyn269 ptr_glVertexStream4iATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexStream4iATI #-}
+ptr_glVertexStream4iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glVertexStream4iATI = unsafePerformIO $ getCommand "glVertexStream4iATI"
+
+-- glVertexStream4ivATI --------------------------------------------------------
+
+glVertexStream4ivATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLint -- ^ @coords@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glVertexStream4ivATI v1 v2 = liftIO $ dyn139 ptr_glVertexStream4ivATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream4ivATI #-}
+ptr_glVertexStream4ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
+ptr_glVertexStream4ivATI = unsafePerformIO $ getCommand "glVertexStream4ivATI"
+
+-- glVertexStream4sATI ---------------------------------------------------------
+
+glVertexStream4sATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> GLshort -- ^ @x@.
+  -> GLshort -- ^ @y@.
+  -> GLshort -- ^ @z@.
+  -> GLshort -- ^ @w@.
+  -> m ()
+glVertexStream4sATI v1 v2 v3 v4 v5 = liftIO $ dyn576 ptr_glVertexStream4sATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVertexStream4sATI #-}
+ptr_glVertexStream4sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glVertexStream4sATI = unsafePerformIO $ getCommand "glVertexStream4sATI"
+
+-- glVertexStream4svATI --------------------------------------------------------
+
+glVertexStream4svATI
+  :: MonadIO m
+  => GLenum -- ^ @stream@ of type @VertexStreamATI@.
+  -> Ptr GLshort -- ^ @coords@ pointing to @4@ elements of type @GLshort@.
+  -> m ()
+glVertexStream4svATI v1 v2 = liftIO $ dyn562 ptr_glVertexStream4svATI v1 v2
+
+{-# NOINLINE ptr_glVertexStream4svATI #-}
+ptr_glVertexStream4svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
+ptr_glVertexStream4svATI = unsafePerformIO $ getCommand "glVertexStream4svATI"
+
+-- glVertexWeightPointerEXT ----------------------------------------------------
+
+glVertexWeightPointerEXT
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @VertexWeightPointerTypeEXT@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glVertexWeightPointerEXT v1 v2 v3 v4 = liftIO $ dyn129 ptr_glVertexWeightPointerEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVertexWeightPointerEXT #-}
+ptr_glVertexWeightPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glVertexWeightPointerEXT = unsafePerformIO $ getCommand "glVertexWeightPointerEXT"
+
+-- glVertexWeightfEXT ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexWeightfvEXT'.
+glVertexWeightfEXT
+  :: MonadIO m
+  => GLfloat -- ^ @weight@.
+  -> m ()
+glVertexWeightfEXT v1 = liftIO $ dyn82 ptr_glVertexWeightfEXT v1
+
+{-# NOINLINE ptr_glVertexWeightfEXT #-}
+ptr_glVertexWeightfEXT :: FunPtr (GLfloat -> IO ())
+ptr_glVertexWeightfEXT = unsafePerformIO $ getCommand "glVertexWeightfEXT"
+
+-- glVertexWeightfvEXT ---------------------------------------------------------
+
+glVertexWeightfvEXT
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @weight@ pointing to @1@ element of type @GLfloat@.
+  -> m ()
+glVertexWeightfvEXT v1 = liftIO $ dyn42 ptr_glVertexWeightfvEXT v1
+
+{-# NOINLINE ptr_glVertexWeightfvEXT #-}
+ptr_glVertexWeightfvEXT :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glVertexWeightfvEXT = unsafePerformIO $ getCommand "glVertexWeightfvEXT"
+
+-- glVertexWeighthNV -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexWeighthvNV'.
+glVertexWeighthNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @weight@ of type @Half16NV@.
+  -> m ()
+glVertexWeighthNV v1 = liftIO $ dyn285 ptr_glVertexWeighthNV v1
+
+{-# NOINLINE ptr_glVertexWeighthNV #-}
+ptr_glVertexWeighthNV :: FunPtr (GLhalfNV -> IO ())
+ptr_glVertexWeighthNV = unsafePerformIO $ getCommand "glVertexWeighthNV"
+
+-- glVertexWeighthvNV ----------------------------------------------------------
+
+glVertexWeighthvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @weight@ pointing to @1@ element of type @Half16NV@.
+  -> m ()
+glVertexWeighthvNV v1 = liftIO $ dyn102 ptr_glVertexWeighthvNV v1
+
+{-# NOINLINE ptr_glVertexWeighthvNV #-}
+ptr_glVertexWeighthvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glVertexWeighthvNV = unsafePerformIO $ getCommand "glVertexWeighthvNV"
+
+-- glVideoCaptureNV ------------------------------------------------------------
+
+glVideoCaptureNV
+  :: MonadIO m
+  => GLuint -- ^ @video_capture_slot@.
+  -> Ptr GLuint -- ^ @sequence_num@.
+  -> Ptr GLuint64EXT -- ^ @capture_time@.
+  -> m GLenum
+glVideoCaptureNV v1 v2 v3 = liftIO $ dyn915 ptr_glVideoCaptureNV v1 v2 v3
+
+{-# NOINLINE ptr_glVideoCaptureNV #-}
+ptr_glVideoCaptureNV :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
+ptr_glVideoCaptureNV = unsafePerformIO $ getCommand "glVideoCaptureNV"
+
+-- glVideoCaptureStreamParameterdvNV -------------------------------------------
+
+glVideoCaptureStreamParameterdvNV
+  :: MonadIO m
+  => GLuint -- ^ @video_capture_slot@.
+  -> GLuint -- ^ @stream@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
+  -> m ()
+glVideoCaptureStreamParameterdvNV v1 v2 v3 v4 = liftIO $ dyn455 ptr_glVideoCaptureStreamParameterdvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVideoCaptureStreamParameterdvNV #-}
+ptr_glVideoCaptureStreamParameterdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
+ptr_glVideoCaptureStreamParameterdvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterdvNV"
+
+-- glVideoCaptureStreamParameterfvNV -------------------------------------------
+
+glVideoCaptureStreamParameterfvNV
+  :: MonadIO m
+  => GLuint -- ^ @video_capture_slot@.
+  -> GLuint -- ^ @stream@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glVideoCaptureStreamParameterfvNV v1 v2 v3 v4 = liftIO $ dyn456 ptr_glVideoCaptureStreamParameterfvNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVideoCaptureStreamParameterfvNV #-}
+ptr_glVideoCaptureStreamParameterfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glVideoCaptureStreamParameterfvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterfvNV"
+
+-- glVideoCaptureStreamParameterivNV -------------------------------------------
+
+glVideoCaptureStreamParameterivNV
+  :: MonadIO m
+  => GLuint -- ^ @video_capture_slot@.
+  -> GLuint -- ^ @stream@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glVideoCaptureStreamParameterivNV v1 v2 v3 v4 = liftIO $ dyn307 ptr_glVideoCaptureStreamParameterivNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVideoCaptureStreamParameterivNV #-}
+ptr_glVideoCaptureStreamParameterivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glVideoCaptureStreamParameterivNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterivNV"
+
+-- glViewport ------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glViewport.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glViewport.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glViewport.xhtml OpenGL 4.x>.
+glViewport
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @WinCoord@.
+  -> GLint -- ^ @y@ of type @WinCoord@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glViewport v1 v2 v3 v4 = liftIO $ dyn723 ptr_glViewport v1 v2 v3 v4
+
+{-# NOINLINE ptr_glViewport #-}
+ptr_glViewport :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glViewport = unsafePerformIO $ getCommand "glViewport"
+
+-- glViewportArrayv ------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportArray.xhtml OpenGL 4.x>.
+glViewportArrayv
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
+  -> m ()
+glViewportArrayv v1 v2 v3 = liftIO $ dyn221 ptr_glViewportArrayv v1 v2 v3
+
+{-# NOINLINE ptr_glViewportArrayv #-}
+ptr_glViewportArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glViewportArrayv = unsafePerformIO $ getCommand "glViewportArrayv"
+
+-- glViewportArrayvNV ----------------------------------------------------------
+
+-- | This command is an alias for 'glViewportArrayv'.
+glViewportArrayvNV
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
+  -> m ()
+glViewportArrayvNV v1 v2 v3 = liftIO $ dyn221 ptr_glViewportArrayvNV v1 v2 v3
+
+{-# NOINLINE ptr_glViewportArrayvNV #-}
+ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glViewportArrayvNV = unsafePerformIO $ getCommand "glViewportArrayvNV"
+
+-- glViewportArrayvOES ---------------------------------------------------------
+
+-- | This command is an alias for 'glViewportArrayv'.
+glViewportArrayvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
+  -> m ()
+glViewportArrayvOES v1 v2 v3 = liftIO $ dyn221 ptr_glViewportArrayvOES v1 v2 v3
+
+{-# NOINLINE ptr_glViewportArrayvOES #-}
+ptr_glViewportArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glViewportArrayvOES = unsafePerformIO $ getCommand "glViewportArrayvOES"
+
+-- glViewportIndexedf ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
+glViewportIndexedf
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @w@.
+  -> GLfloat -- ^ @h@.
+  -> m ()
+glViewportIndexedf v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glViewportIndexedf v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glViewportIndexedf #-}
+ptr_glViewportIndexedf :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glViewportIndexedf = unsafePerformIO $ getCommand "glViewportIndexedf"
+
+-- glViewportIndexedfNV --------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedf'.
+glViewportIndexedfNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @w@.
+  -> GLfloat -- ^ @h@.
+  -> m ()
+glViewportIndexedfNV v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glViewportIndexedfNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glViewportIndexedfNV #-}
+ptr_glViewportIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glViewportIndexedfNV = unsafePerformIO $ getCommand "glViewportIndexedfNV"
+
+-- glViewportIndexedfOES -------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedf'.
+glViewportIndexedfOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @w@.
+  -> GLfloat -- ^ @h@.
+  -> m ()
+glViewportIndexedfOES v1 v2 v3 v4 v5 = liftIO $ dyn889 ptr_glViewportIndexedfOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glViewportIndexedfOES #-}
+ptr_glViewportIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glViewportIndexedfOES = unsafePerformIO $ getCommand "glViewportIndexedfOES"
+
+-- glViewportIndexedfv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
+glViewportIndexedfv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glViewportIndexedfv v1 v2 = liftIO $ dyn386 ptr_glViewportIndexedfv v1 v2
+
+{-# NOINLINE ptr_glViewportIndexedfv #-}
+ptr_glViewportIndexedfv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glViewportIndexedfv = unsafePerformIO $ getCommand "glViewportIndexedfv"
+
+-- glViewportIndexedfvNV -------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedfv'.
+glViewportIndexedfvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glViewportIndexedfvNV v1 v2 = liftIO $ dyn386 ptr_glViewportIndexedfvNV v1 v2
+
+{-# NOINLINE ptr_glViewportIndexedfvNV #-}
+ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glViewportIndexedfvNV = unsafePerformIO $ getCommand "glViewportIndexedfvNV"
+
+-- glViewportIndexedfvOES ------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedfv'.
+glViewportIndexedfvOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glViewportIndexedfvOES v1 v2 = liftIO $ dyn386 ptr_glViewportIndexedfvOES v1 v2
+
+{-# NOINLINE ptr_glViewportIndexedfvOES #-}
+ptr_glViewportIndexedfvOES :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glViewportIndexedfvOES = unsafePerformIO $ getCommand "glViewportIndexedfvOES"
+
+-- glViewportPositionWScaleNV --------------------------------------------------
+
+glViewportPositionWScaleNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @xcoeff@.
+  -> GLfloat -- ^ @ycoeff@.
+  -> m ()
+glViewportPositionWScaleNV v1 v2 v3 = liftIO $ dyn224 ptr_glViewportPositionWScaleNV v1 v2 v3
+
+{-# NOINLINE ptr_glViewportPositionWScaleNV #-}
+ptr_glViewportPositionWScaleNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glViewportPositionWScaleNV = unsafePerformIO $ getCommand "glViewportPositionWScaleNV"
+
+-- glViewportSwizzleNV ---------------------------------------------------------
+
+glViewportSwizzleNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLenum -- ^ @swizzlex@.
+  -> GLenum -- ^ @swizzley@.
+  -> GLenum -- ^ @swizzlez@.
+  -> GLenum -- ^ @swizzlew@.
+  -> m ()
+glViewportSwizzleNV v1 v2 v3 v4 v5 = liftIO $ dyn55 ptr_glViewportSwizzleNV v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glViewportSwizzleNV #-}
+ptr_glViewportSwizzleNV :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glViewportSwizzleNV = unsafePerformIO $ getCommand "glViewportSwizzleNV"
+
+-- glWaitSemaphoreEXT ----------------------------------------------------------
+
+glWaitSemaphoreEXT
+  :: MonadIO m
+  => GLuint -- ^ @semaphore@.
+  -> GLuint -- ^ @numBufferBarriers@.
+  -> Ptr GLuint -- ^ @buffers@ pointing to @COMPSIZE(numBufferBarriers)@ elements of type @GLuint@.
+  -> GLuint -- ^ @numTextureBarriers@.
+  -> Ptr GLuint -- ^ @textures@ pointing to @COMPSIZE(numTextureBarriers)@ elements of type @GLuint@.
+  -> Ptr GLenum -- ^ @srcLayouts@ pointing to @COMPSIZE(numTextureBarriers)@ elements of type [TextureLayout](Graphics-GL-Groups.html#TextureLayout).
+  -> m ()
+glWaitSemaphoreEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn733 ptr_glWaitSemaphoreEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glWaitSemaphoreEXT #-}
+ptr_glWaitSemaphoreEXT :: FunPtr (GLuint -> GLuint -> Ptr GLuint -> GLuint -> Ptr GLuint -> Ptr GLenum -> IO ())
+ptr_glWaitSemaphoreEXT = unsafePerformIO $ getCommand "glWaitSemaphoreEXT"
+
+-- glWaitSync ------------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glWaitSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glWaitSync.xhtml OpenGL 4.x>.
+glWaitSync
+  :: MonadIO m
+  => GLsync -- ^ @sync@ of type @sync@.
+  -> GLbitfield -- ^ @flags@.
+  -> GLuint64 -- ^ @timeout@.
+  -> m ()
+glWaitSync v1 v2 v3 = liftIO $ dyn916 ptr_glWaitSync v1 v2 v3
+
+{-# NOINLINE ptr_glWaitSync #-}
+ptr_glWaitSync :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
+ptr_glWaitSync = unsafePerformIO $ getCommand "glWaitSync"
+
+-- glWaitSyncAPPLE -------------------------------------------------------------
+
+-- | This command is an alias for 'glWaitSync'.
+glWaitSyncAPPLE
+  :: MonadIO m
+  => GLsync -- ^ @sync@.
+  -> GLbitfield -- ^ @flags@.
+  -> GLuint64 -- ^ @timeout@.
+  -> m ()
+glWaitSyncAPPLE v1 v2 v3 = liftIO $ dyn916 ptr_glWaitSyncAPPLE v1 v2 v3
+
+{-# NOINLINE ptr_glWaitSyncAPPLE #-}
+ptr_glWaitSyncAPPLE :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
+ptr_glWaitSyncAPPLE = unsafePerformIO $ getCommand "glWaitSyncAPPLE"
+
+-- glWaitVkSemaphoreNV ---------------------------------------------------------
+
+glWaitVkSemaphoreNV
+  :: MonadIO m
+  => GLuint64 -- ^ @vkSemaphore@.
+  -> m ()
+glWaitVkSemaphoreNV v1 = liftIO $ dyn508 ptr_glWaitVkSemaphoreNV v1
+
+{-# NOINLINE ptr_glWaitVkSemaphoreNV #-}
+ptr_glWaitVkSemaphoreNV :: FunPtr (GLuint64 -> IO ())
+ptr_glWaitVkSemaphoreNV = unsafePerformIO $ getCommand "glWaitVkSemaphoreNV"
+
+-- glWeightPathsNV -------------------------------------------------------------
+
+glWeightPathsNV
+  :: MonadIO m
+  => GLuint -- ^ @resultPath@ of type @Path@.
+  -> GLsizei -- ^ @numPaths@.
+  -> Ptr GLuint -- ^ @paths@ pointing to @numPaths@ elements of type @Path@.
+  -> Ptr GLfloat -- ^ @weights@ pointing to @numPaths@ elements of type @GLfloat@.
+  -> m ()
+glWeightPathsNV v1 v2 v3 v4 = liftIO $ dyn917 ptr_glWeightPathsNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWeightPathsNV #-}
+ptr_glWeightPathsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
+ptr_glWeightPathsNV = unsafePerformIO $ getCommand "glWeightPathsNV"
+
+-- glWeightPointerARB ----------------------------------------------------------
+
+glWeightPointerARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @WeightPointerTypeARB@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glWeightPointerARB v1 v2 v3 v4 = liftIO $ dyn129 ptr_glWeightPointerARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWeightPointerARB #-}
+ptr_glWeightPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glWeightPointerARB = unsafePerformIO $ getCommand "glWeightPointerARB"
+
+-- glWeightPointerOES ----------------------------------------------------------
+
+glWeightPointerOES
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
+  -> m ()
+glWeightPointerOES v1 v2 v3 v4 = liftIO $ dyn129 ptr_glWeightPointerOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWeightPointerOES #-}
+ptr_glWeightPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glWeightPointerOES = unsafePerformIO $ getCommand "glWeightPointerOES"
+
+-- glWeightbvARB ---------------------------------------------------------------
+
+glWeightbvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLbyte -- ^ @weights@ pointing to @size@ elements of type @GLbyte@.
+  -> m ()
+glWeightbvARB v1 v2 = liftIO $ dyn918 ptr_glWeightbvARB v1 v2
+
+{-# NOINLINE ptr_glWeightbvARB #-}
+ptr_glWeightbvARB :: FunPtr (GLint -> Ptr GLbyte -> IO ())
+ptr_glWeightbvARB = unsafePerformIO $ getCommand "glWeightbvARB"
+
+-- glWeightdvARB ---------------------------------------------------------------
+
+glWeightdvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLdouble -- ^ @weights@ pointing to @size@ elements of type @GLdouble@.
+  -> m ()
+glWeightdvARB v1 v2 = liftIO $ dyn919 ptr_glWeightdvARB v1 v2
+
+{-# NOINLINE ptr_glWeightdvARB #-}
+ptr_glWeightdvARB :: FunPtr (GLint -> Ptr GLdouble -> IO ())
+ptr_glWeightdvARB = unsafePerformIO $ getCommand "glWeightdvARB"
+
+-- glWeightfvARB ---------------------------------------------------------------
+
+glWeightfvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLfloat -- ^ @weights@ pointing to @size@ elements of type @GLfloat@.
+  -> m ()
+glWeightfvARB v1 v2 = liftIO $ dyn920 ptr_glWeightfvARB v1 v2
+
+{-# NOINLINE ptr_glWeightfvARB #-}
+ptr_glWeightfvARB :: FunPtr (GLint -> Ptr GLfloat -> IO ())
+ptr_glWeightfvARB = unsafePerformIO $ getCommand "glWeightfvARB"
+
+-- glWeightivARB ---------------------------------------------------------------
+
+glWeightivARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLint -- ^ @weights@ pointing to @size@ elements of type @GLint@.
+  -> m ()
+glWeightivARB v1 v2 = liftIO $ dyn921 ptr_glWeightivARB v1 v2
+
+{-# NOINLINE ptr_glWeightivARB #-}
+ptr_glWeightivARB :: FunPtr (GLint -> Ptr GLint -> IO ())
+ptr_glWeightivARB = unsafePerformIO $ getCommand "glWeightivARB"
+
+-- glWeightsvARB ---------------------------------------------------------------
+
+glWeightsvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLshort -- ^ @weights@ pointing to @size@ elements of type @GLshort@.
+  -> m ()
+glWeightsvARB v1 v2 = liftIO $ dyn922 ptr_glWeightsvARB v1 v2
+
+{-# NOINLINE ptr_glWeightsvARB #-}
+ptr_glWeightsvARB :: FunPtr (GLint -> Ptr GLshort -> IO ())
+ptr_glWeightsvARB = unsafePerformIO $ getCommand "glWeightsvARB"
+
+-- glWeightubvARB --------------------------------------------------------------
+
+glWeightubvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLubyte -- ^ @weights@ pointing to @size@ elements of type @GLubyte@.
+  -> m ()
+glWeightubvARB v1 v2 = liftIO $ dyn534 ptr_glWeightubvARB v1 v2
+
+{-# NOINLINE ptr_glWeightubvARB #-}
+ptr_glWeightubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
+ptr_glWeightubvARB = unsafePerformIO $ getCommand "glWeightubvARB"
+
+-- glWeightuivARB --------------------------------------------------------------
+
+glWeightuivARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLuint -- ^ @weights@ pointing to @size@ elements of type @GLuint@.
+  -> m ()
+glWeightuivARB v1 v2 = liftIO $ dyn535 ptr_glWeightuivARB v1 v2
+
+{-# NOINLINE ptr_glWeightuivARB #-}
+ptr_glWeightuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
+ptr_glWeightuivARB = unsafePerformIO $ getCommand "glWeightuivARB"
+
+-- glWeightusvARB --------------------------------------------------------------
+
+glWeightusvARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> Ptr GLushort -- ^ @weights@ pointing to @size@ elements of type @GLushort@.
+  -> m ()
+glWeightusvARB v1 v2 = liftIO $ dyn536 ptr_glWeightusvARB v1 v2
+
+{-# NOINLINE ptr_glWeightusvARB #-}
+ptr_glWeightusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
+ptr_glWeightusvARB = unsafePerformIO $ getCommand "glWeightusvARB"
+
+-- glWindowPos2d ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2dv'.
+glWindowPos2d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> m ()
+glWindowPos2d v1 v2 = liftIO $ dyn220 ptr_glWindowPos2d v1 v2
+
+{-# NOINLINE ptr_glWindowPos2d #-}
+ptr_glWindowPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos2d = unsafePerformIO $ getCommand "glWindowPos2d"
+
+-- glWindowPos2dARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2dvARB'. This command is an alias for 'glWindowPos2d'.
+glWindowPos2dARB
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> m ()
+glWindowPos2dARB v1 v2 = liftIO $ dyn220 ptr_glWindowPos2dARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2dARB #-}
+ptr_glWindowPos2dARB :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos2dARB = unsafePerformIO $ getCommand "glWindowPos2dARB"
+
+-- glWindowPos2dMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2dvMESA'. This command is an alias for 'glWindowPos2d'.
+glWindowPos2dMESA
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> m ()
+glWindowPos2dMESA v1 v2 = liftIO $ dyn220 ptr_glWindowPos2dMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2dMESA #-}
+ptr_glWindowPos2dMESA :: FunPtr (GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos2dMESA = unsafePerformIO $ getCommand "glWindowPos2dMESA"
+
+-- glWindowPos2dv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glWindowPos2dv v1 = liftIO $ dyn40 ptr_glWindowPos2dv v1
+
+{-# NOINLINE ptr_glWindowPos2dv #-}
+ptr_glWindowPos2dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos2dv = unsafePerformIO $ getCommand "glWindowPos2dv"
+
+-- glWindowPos2dvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2dv'.
+glWindowPos2dvARB
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glWindowPos2dvARB v1 = liftIO $ dyn40 ptr_glWindowPos2dvARB v1
+
+{-# NOINLINE ptr_glWindowPos2dvARB #-}
+ptr_glWindowPos2dvARB :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos2dvARB = unsafePerformIO $ getCommand "glWindowPos2dvARB"
+
+-- glWindowPos2dvMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2dv'.
+glWindowPos2dvMESA
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glWindowPos2dvMESA v1 = liftIO $ dyn40 ptr_glWindowPos2dvMESA v1
+
+{-# NOINLINE ptr_glWindowPos2dvMESA #-}
+ptr_glWindowPos2dvMESA :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos2dvMESA = unsafePerformIO $ getCommand "glWindowPos2dvMESA"
+
+-- glWindowPos2f ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2fv'.
+glWindowPos2f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> m ()
+glWindowPos2f v1 v2 = liftIO $ dyn225 ptr_glWindowPos2f v1 v2
+
+{-# NOINLINE ptr_glWindowPos2f #-}
+ptr_glWindowPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos2f = unsafePerformIO $ getCommand "glWindowPos2f"
+
+-- glWindowPos2fARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2fvARB'. This command is an alias for 'glWindowPos2f'.
+glWindowPos2fARB
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> m ()
+glWindowPos2fARB v1 v2 = liftIO $ dyn225 ptr_glWindowPos2fARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2fARB #-}
+ptr_glWindowPos2fARB :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos2fARB = unsafePerformIO $ getCommand "glWindowPos2fARB"
+
+-- glWindowPos2fMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2fvMESA'. This command is an alias for 'glWindowPos2f'.
+glWindowPos2fMESA
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> m ()
+glWindowPos2fMESA v1 v2 = liftIO $ dyn225 ptr_glWindowPos2fMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2fMESA #-}
+ptr_glWindowPos2fMESA :: FunPtr (GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos2fMESA = unsafePerformIO $ getCommand "glWindowPos2fMESA"
+
+-- glWindowPos2fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fv v1 = liftIO $ dyn42 ptr_glWindowPos2fv v1
+
+{-# NOINLINE ptr_glWindowPos2fv #-}
+ptr_glWindowPos2fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fv = unsafePerformIO $ getCommand "glWindowPos2fv"
+
+-- glWindowPos2fvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2fv'.
+glWindowPos2fvARB
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fvARB v1 = liftIO $ dyn42 ptr_glWindowPos2fvARB v1
+
+{-# NOINLINE ptr_glWindowPos2fvARB #-}
+ptr_glWindowPos2fvARB :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fvARB = unsafePerformIO $ getCommand "glWindowPos2fvARB"
+
+-- glWindowPos2fvMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2fv'.
+glWindowPos2fvMESA
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fvMESA v1 = liftIO $ dyn42 ptr_glWindowPos2fvMESA v1
+
+{-# NOINLINE ptr_glWindowPos2fvMESA #-}
+ptr_glWindowPos2fvMESA :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fvMESA = unsafePerformIO $ getCommand "glWindowPos2fvMESA"
+
+-- glWindowPos2i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2iv'.
+glWindowPos2i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2i v1 v2 = liftIO $ dyn270 ptr_glWindowPos2i v1 v2
+
+{-# NOINLINE ptr_glWindowPos2i #-}
+ptr_glWindowPos2i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2i = unsafePerformIO $ getCommand "glWindowPos2i"
+
+-- glWindowPos2iARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2ivARB'. This command is an alias for 'glWindowPos2i'.
+glWindowPos2iARB
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2iARB v1 v2 = liftIO $ dyn270 ptr_glWindowPos2iARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2iARB #-}
+ptr_glWindowPos2iARB :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2iARB = unsafePerformIO $ getCommand "glWindowPos2iARB"
+
+-- glWindowPos2iMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2ivMESA'. This command is an alias for 'glWindowPos2i'.
+glWindowPos2iMESA
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2iMESA v1 v2 = liftIO $ dyn270 ptr_glWindowPos2iMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2iMESA #-}
+ptr_glWindowPos2iMESA :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2iMESA = unsafePerformIO $ getCommand "glWindowPos2iMESA"
+
+-- glWindowPos2iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2iv v1 = liftIO $ dyn44 ptr_glWindowPos2iv v1
+
+{-# NOINLINE ptr_glWindowPos2iv #-}
+ptr_glWindowPos2iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2iv = unsafePerformIO $ getCommand "glWindowPos2iv"
+
+-- glWindowPos2ivARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2iv'.
+glWindowPos2ivARB
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2ivARB v1 = liftIO $ dyn44 ptr_glWindowPos2ivARB v1
+
+{-# NOINLINE ptr_glWindowPos2ivARB #-}
+ptr_glWindowPos2ivARB :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2ivARB = unsafePerformIO $ getCommand "glWindowPos2ivARB"
+
+-- glWindowPos2ivMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2iv'.
+glWindowPos2ivMESA
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2ivMESA v1 = liftIO $ dyn44 ptr_glWindowPos2ivMESA v1
+
+{-# NOINLINE ptr_glWindowPos2ivMESA #-}
+ptr_glWindowPos2ivMESA :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2ivMESA = unsafePerformIO $ getCommand "glWindowPos2ivMESA"
+
+-- glWindowPos2s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2sv'.
+glWindowPos2s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glWindowPos2s v1 v2 = liftIO $ dyn694 ptr_glWindowPos2s v1 v2
+
+{-# NOINLINE ptr_glWindowPos2s #-}
+ptr_glWindowPos2s :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glWindowPos2s = unsafePerformIO $ getCommand "glWindowPos2s"
+
+-- glWindowPos2sARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2svARB'. This command is an alias for 'glWindowPos2s'.
+glWindowPos2sARB
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glWindowPos2sARB v1 v2 = liftIO $ dyn694 ptr_glWindowPos2sARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2sARB #-}
+ptr_glWindowPos2sARB :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glWindowPos2sARB = unsafePerformIO $ getCommand "glWindowPos2sARB"
+
+-- glWindowPos2sMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2svMESA'. This command is an alias for 'glWindowPos2s'.
+glWindowPos2sMESA
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glWindowPos2sMESA v1 v2 = liftIO $ dyn694 ptr_glWindowPos2sMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2sMESA #-}
+ptr_glWindowPos2sMESA :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glWindowPos2sMESA = unsafePerformIO $ getCommand "glWindowPos2sMESA"
+
+-- glWindowPos2sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glWindowPos2sv v1 = liftIO $ dyn46 ptr_glWindowPos2sv v1
+
+{-# NOINLINE ptr_glWindowPos2sv #-}
+ptr_glWindowPos2sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos2sv = unsafePerformIO $ getCommand "glWindowPos2sv"
+
+-- glWindowPos2svARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2sv'.
+glWindowPos2svARB
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glWindowPos2svARB v1 = liftIO $ dyn46 ptr_glWindowPos2svARB v1
+
+{-# NOINLINE ptr_glWindowPos2svARB #-}
+ptr_glWindowPos2svARB :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos2svARB = unsafePerformIO $ getCommand "glWindowPos2svARB"
+
+-- glWindowPos2svMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2sv'.
+glWindowPos2svMESA
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
+  -> m ()
+glWindowPos2svMESA v1 = liftIO $ dyn46 ptr_glWindowPos2svMESA v1
+
+{-# NOINLINE ptr_glWindowPos2svMESA #-}
+ptr_glWindowPos2svMESA :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos2svMESA = unsafePerformIO $ getCommand "glWindowPos2svMESA"
+
+-- glWindowPos3d ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3dv'.
+glWindowPos3d
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> m ()
+glWindowPos3d v1 v2 v3 = liftIO $ dyn39 ptr_glWindowPos3d v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3d #-}
+ptr_glWindowPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos3d = unsafePerformIO $ getCommand "glWindowPos3d"
+
+-- glWindowPos3dARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3dvARB'. This command is an alias for 'glWindowPos3d'.
+glWindowPos3dARB
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> m ()
+glWindowPos3dARB v1 v2 v3 = liftIO $ dyn39 ptr_glWindowPos3dARB v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3dARB #-}
+ptr_glWindowPos3dARB :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos3dARB = unsafePerformIO $ getCommand "glWindowPos3dARB"
+
+-- glWindowPos3dMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3dvMESA'. This command is an alias for 'glWindowPos3d'.
+glWindowPos3dMESA
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> m ()
+glWindowPos3dMESA v1 v2 v3 = liftIO $ dyn39 ptr_glWindowPos3dMESA v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3dMESA #-}
+ptr_glWindowPos3dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos3dMESA = unsafePerformIO $ getCommand "glWindowPos3dMESA"
+
+-- glWindowPos3dv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos3dv
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glWindowPos3dv v1 = liftIO $ dyn40 ptr_glWindowPos3dv v1
+
+{-# NOINLINE ptr_glWindowPos3dv #-}
+ptr_glWindowPos3dv :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos3dv = unsafePerformIO $ getCommand "glWindowPos3dv"
+
+-- glWindowPos3dvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3dv'.
+glWindowPos3dvARB
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glWindowPos3dvARB v1 = liftIO $ dyn40 ptr_glWindowPos3dvARB v1
+
+{-# NOINLINE ptr_glWindowPos3dvARB #-}
+ptr_glWindowPos3dvARB :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos3dvARB = unsafePerformIO $ getCommand "glWindowPos3dvARB"
+
+-- glWindowPos3dvMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3dv'.
+glWindowPos3dvMESA
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
+  -> m ()
+glWindowPos3dvMESA v1 = liftIO $ dyn40 ptr_glWindowPos3dvMESA v1
+
+{-# NOINLINE ptr_glWindowPos3dvMESA #-}
+ptr_glWindowPos3dvMESA :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos3dvMESA = unsafePerformIO $ getCommand "glWindowPos3dvMESA"
+
+-- glWindowPos3f ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3fv'.
+glWindowPos3f
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> m ()
+glWindowPos3f v1 v2 v3 = liftIO $ dyn41 ptr_glWindowPos3f v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3f #-}
+ptr_glWindowPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos3f = unsafePerformIO $ getCommand "glWindowPos3f"
+
+-- glWindowPos3fARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3fvARB'. This command is an alias for 'glWindowPos3f'.
+glWindowPos3fARB
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> m ()
+glWindowPos3fARB v1 v2 v3 = liftIO $ dyn41 ptr_glWindowPos3fARB v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3fARB #-}
+ptr_glWindowPos3fARB :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos3fARB = unsafePerformIO $ getCommand "glWindowPos3fARB"
+
+-- glWindowPos3fMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3fvMESA'. This command is an alias for 'glWindowPos3f'.
+glWindowPos3fMESA
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> m ()
+glWindowPos3fMESA v1 v2 v3 = liftIO $ dyn41 ptr_glWindowPos3fMESA v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3fMESA #-}
+ptr_glWindowPos3fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos3fMESA = unsafePerformIO $ getCommand "glWindowPos3fMESA"
+
+-- glWindowPos3fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos3fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glWindowPos3fv v1 = liftIO $ dyn42 ptr_glWindowPos3fv v1
+
+{-# NOINLINE ptr_glWindowPos3fv #-}
+ptr_glWindowPos3fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos3fv = unsafePerformIO $ getCommand "glWindowPos3fv"
 
diff --git a/src/Graphics/GL/Functions/F33.hs b/src/Graphics/GL/Functions/F33.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/Functions/F33.hs
@@ -0,0 +1,386 @@
+{-# OPTIONS_HADDOCK hide #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.Functions.F33
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+-- Raw functions from the
+-- <http://www.opengl.org/registry/ OpenGL registry>.
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.Functions.F33 (
+  glWindowPos3fvARB,
+  glWindowPos3fvMESA,
+  glWindowPos3i,
+  glWindowPos3iARB,
+  glWindowPos3iMESA,
+  glWindowPos3iv,
+  glWindowPos3ivARB,
+  glWindowPos3ivMESA,
+  glWindowPos3s,
+  glWindowPos3sARB,
+  glWindowPos3sMESA,
+  glWindowPos3sv,
+  glWindowPos3svARB,
+  glWindowPos3svMESA,
+  glWindowPos4dMESA,
+  glWindowPos4dvMESA,
+  glWindowPos4fMESA,
+  glWindowPos4fvMESA,
+  glWindowPos4iMESA,
+  glWindowPos4ivMESA,
+  glWindowPos4sMESA,
+  glWindowPos4svMESA,
+  glWindowRectanglesEXT,
+  glWriteMaskEXT
+) where
+
+import Control.Monad.IO.Class ( MonadIO(..) )
+import Foreign.Ptr
+import Graphics.GL.Foreign
+import Graphics.GL.Types
+import System.IO.Unsafe ( unsafePerformIO )
+
+-- glWindowPos3fvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3fv'.
+glWindowPos3fvARB
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glWindowPos3fvARB v1 = liftIO $ dyn42 ptr_glWindowPos3fvARB v1
+
+{-# NOINLINE ptr_glWindowPos3fvARB #-}
+ptr_glWindowPos3fvARB :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos3fvARB = unsafePerformIO $ getCommand "glWindowPos3fvARB"
+
+-- glWindowPos3fvMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3fv'.
+glWindowPos3fvMESA
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
+  -> m ()
+glWindowPos3fvMESA v1 = liftIO $ dyn42 ptr_glWindowPos3fvMESA v1
+
+{-# NOINLINE ptr_glWindowPos3fvMESA #-}
+ptr_glWindowPos3fvMESA :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos3fvMESA = unsafePerformIO $ getCommand "glWindowPos3fvMESA"
+
+-- glWindowPos3i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3iv'.
+glWindowPos3i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> m ()
+glWindowPos3i v1 v2 v3 = liftIO $ dyn43 ptr_glWindowPos3i v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3i #-}
+ptr_glWindowPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glWindowPos3i = unsafePerformIO $ getCommand "glWindowPos3i"
+
+-- glWindowPos3iARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3ivARB'. This command is an alias for 'glWindowPos3i'.
+glWindowPos3iARB
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> m ()
+glWindowPos3iARB v1 v2 v3 = liftIO $ dyn43 ptr_glWindowPos3iARB v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3iARB #-}
+ptr_glWindowPos3iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glWindowPos3iARB = unsafePerformIO $ getCommand "glWindowPos3iARB"
+
+-- glWindowPos3iMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3ivMESA'. This command is an alias for 'glWindowPos3i'.
+glWindowPos3iMESA
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> m ()
+glWindowPos3iMESA v1 v2 v3 = liftIO $ dyn43 ptr_glWindowPos3iMESA v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3iMESA #-}
+ptr_glWindowPos3iMESA :: FunPtr (GLint -> GLint -> GLint -> IO ())
+ptr_glWindowPos3iMESA = unsafePerformIO $ getCommand "glWindowPos3iMESA"
+
+-- glWindowPos3iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glWindowPos3iv v1 = liftIO $ dyn44 ptr_glWindowPos3iv v1
+
+{-# NOINLINE ptr_glWindowPos3iv #-}
+ptr_glWindowPos3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos3iv = unsafePerformIO $ getCommand "glWindowPos3iv"
+
+-- glWindowPos3ivARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3iv'.
+glWindowPos3ivARB
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glWindowPos3ivARB v1 = liftIO $ dyn44 ptr_glWindowPos3ivARB v1
+
+{-# NOINLINE ptr_glWindowPos3ivARB #-}
+ptr_glWindowPos3ivARB :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos3ivARB = unsafePerformIO $ getCommand "glWindowPos3ivARB"
+
+-- glWindowPos3ivMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3iv'.
+glWindowPos3ivMESA
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glWindowPos3ivMESA v1 = liftIO $ dyn44 ptr_glWindowPos3ivMESA v1
+
+{-# NOINLINE ptr_glWindowPos3ivMESA #-}
+ptr_glWindowPos3ivMESA :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos3ivMESA = unsafePerformIO $ getCommand "glWindowPos3ivMESA"
+
+-- glWindowPos3s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos3sv'.
+glWindowPos3s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glWindowPos3s v1 v2 v3 = liftIO $ dyn45 ptr_glWindowPos3s v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3s #-}
+ptr_glWindowPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glWindowPos3s = unsafePerformIO $ getCommand "glWindowPos3s"
+
+-- glWindowPos3sARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3svARB'. This command is an alias for 'glWindowPos3s'.
+glWindowPos3sARB
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glWindowPos3sARB v1 v2 v3 = liftIO $ dyn45 ptr_glWindowPos3sARB v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3sARB #-}
+ptr_glWindowPos3sARB :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glWindowPos3sARB = unsafePerformIO $ getCommand "glWindowPos3sARB"
+
+-- glWindowPos3sMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos3svMESA'. This command is an alias for 'glWindowPos3s'.
+glWindowPos3sMESA
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glWindowPos3sMESA v1 v2 v3 = liftIO $ dyn45 ptr_glWindowPos3sMESA v1 v2 v3
+
+{-# NOINLINE ptr_glWindowPos3sMESA #-}
+ptr_glWindowPos3sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glWindowPos3sMESA = unsafePerformIO $ getCommand "glWindowPos3sMESA"
+
+-- glWindowPos3sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glWindowPos3sv v1 = liftIO $ dyn46 ptr_glWindowPos3sv v1
+
+{-# NOINLINE ptr_glWindowPos3sv #-}
+ptr_glWindowPos3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos3sv = unsafePerformIO $ getCommand "glWindowPos3sv"
+
+-- glWindowPos3svARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3sv'.
+glWindowPos3svARB
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glWindowPos3svARB v1 = liftIO $ dyn46 ptr_glWindowPos3svARB v1
+
+{-# NOINLINE ptr_glWindowPos3svARB #-}
+ptr_glWindowPos3svARB :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos3svARB = unsafePerformIO $ getCommand "glWindowPos3svARB"
+
+-- glWindowPos3svMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos3sv'.
+glWindowPos3svMESA
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glWindowPos3svMESA v1 = liftIO $ dyn46 ptr_glWindowPos3svMESA v1
+
+{-# NOINLINE ptr_glWindowPos3svMESA #-}
+ptr_glWindowPos3svMESA :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos3svMESA = unsafePerformIO $ getCommand "glWindowPos3svMESA"
+
+-- glWindowPos4dMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos4dvMESA'.
+glWindowPos4dMESA
+  :: MonadIO m
+  => GLdouble -- ^ @x@ of type @CoordD@.
+  -> GLdouble -- ^ @y@ of type @CoordD@.
+  -> GLdouble -- ^ @z@ of type @CoordD@.
+  -> GLdouble -- ^ @w@ of type @CoordD@.
+  -> m ()
+glWindowPos4dMESA v1 v2 v3 v4 = liftIO $ dyn112 ptr_glWindowPos4dMESA v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWindowPos4dMESA #-}
+ptr_glWindowPos4dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glWindowPos4dMESA = unsafePerformIO $ getCommand "glWindowPos4dMESA"
+
+-- glWindowPos4dvMESA ----------------------------------------------------------
+
+glWindowPos4dvMESA
+  :: MonadIO m
+  => Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
+  -> m ()
+glWindowPos4dvMESA v1 = liftIO $ dyn40 ptr_glWindowPos4dvMESA v1
+
+{-# NOINLINE ptr_glWindowPos4dvMESA #-}
+ptr_glWindowPos4dvMESA :: FunPtr (Ptr GLdouble -> IO ())
+ptr_glWindowPos4dvMESA = unsafePerformIO $ getCommand "glWindowPos4dvMESA"
+
+-- glWindowPos4fMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos4fvMESA'.
+glWindowPos4fMESA
+  :: MonadIO m
+  => GLfloat -- ^ @x@ of type @CoordF@.
+  -> GLfloat -- ^ @y@ of type @CoordF@.
+  -> GLfloat -- ^ @z@ of type @CoordF@.
+  -> GLfloat -- ^ @w@ of type @CoordF@.
+  -> m ()
+glWindowPos4fMESA v1 v2 v3 v4 = liftIO $ dyn50 ptr_glWindowPos4fMESA v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWindowPos4fMESA #-}
+ptr_glWindowPos4fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glWindowPos4fMESA = unsafePerformIO $ getCommand "glWindowPos4fMESA"
+
+-- glWindowPos4fvMESA ----------------------------------------------------------
+
+glWindowPos4fvMESA
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
+  -> m ()
+glWindowPos4fvMESA v1 = liftIO $ dyn42 ptr_glWindowPos4fvMESA v1
+
+{-# NOINLINE ptr_glWindowPos4fvMESA #-}
+ptr_glWindowPos4fvMESA :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos4fvMESA = unsafePerformIO $ getCommand "glWindowPos4fvMESA"
+
+-- glWindowPos4iMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos4ivMESA'.
+glWindowPos4iMESA
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> GLint -- ^ @z@ of type @CoordI@.
+  -> GLint -- ^ @w@ of type @CoordI@.
+  -> m ()
+glWindowPos4iMESA v1 v2 v3 v4 = liftIO $ dyn79 ptr_glWindowPos4iMESA v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWindowPos4iMESA #-}
+ptr_glWindowPos4iMESA :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glWindowPos4iMESA = unsafePerformIO $ getCommand "glWindowPos4iMESA"
+
+-- glWindowPos4ivMESA ----------------------------------------------------------
+
+glWindowPos4ivMESA
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glWindowPos4ivMESA v1 = liftIO $ dyn44 ptr_glWindowPos4ivMESA v1
+
+{-# NOINLINE ptr_glWindowPos4ivMESA #-}
+ptr_glWindowPos4ivMESA :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos4ivMESA = unsafePerformIO $ getCommand "glWindowPos4ivMESA"
+
+-- glWindowPos4sMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos4svMESA'.
+glWindowPos4sMESA
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> GLshort -- ^ @w@ of type @CoordS@.
+  -> m ()
+glWindowPos4sMESA v1 v2 v3 v4 = liftIO $ dyn116 ptr_glWindowPos4sMESA v1 v2 v3 v4
+
+{-# NOINLINE ptr_glWindowPos4sMESA #-}
+ptr_glWindowPos4sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glWindowPos4sMESA = unsafePerformIO $ getCommand "glWindowPos4sMESA"
+
+-- glWindowPos4svMESA ----------------------------------------------------------
+
+glWindowPos4svMESA
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glWindowPos4svMESA v1 = liftIO $ dyn46 ptr_glWindowPos4svMESA v1
+
+{-# NOINLINE ptr_glWindowPos4svMESA #-}
+ptr_glWindowPos4svMESA :: FunPtr (Ptr GLshort -> IO ())
+ptr_glWindowPos4svMESA = unsafePerformIO $ getCommand "glWindowPos4svMESA"
+
+-- glWindowRectanglesEXT -------------------------------------------------------
+
+glWindowRectanglesEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @box@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> m ()
+glWindowRectanglesEXT v1 v2 v3 = liftIO $ dyn923 ptr_glWindowRectanglesEXT v1 v2 v3
+
+{-# NOINLINE ptr_glWindowRectanglesEXT #-}
+ptr_glWindowRectanglesEXT :: FunPtr (GLenum -> GLsizei -> Ptr GLint -> IO ())
+ptr_glWindowRectanglesEXT = unsafePerformIO $ getCommand "glWindowRectanglesEXT"
+
+-- glWriteMaskEXT --------------------------------------------------------------
+
+glWriteMaskEXT
+  :: MonadIO m
+  => GLuint -- ^ @res@.
+  -> GLuint -- ^ @in@.
+  -> GLenum -- ^ @outX@ of type @VertexShaderWriteMaskEXT@.
+  -> GLenum -- ^ @outY@ of type @VertexShaderWriteMaskEXT@.
+  -> GLenum -- ^ @outZ@ of type @VertexShaderWriteMaskEXT@.
+  -> GLenum -- ^ @outW@ of type @VertexShaderWriteMaskEXT@.
+  -> m ()
+glWriteMaskEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn746 ptr_glWriteMaskEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glWriteMaskEXT #-}
+ptr_glWriteMaskEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
+ptr_glWriteMaskEXT = unsafePerformIO $ getCommand "glWriteMaskEXT"
+
diff --git a/src/Graphics/GL/Groups.hs b/src/Graphics/GL/Groups.hs
--- a/src/Graphics/GL/Groups.hs
+++ b/src/Graphics/GL/Groups.hs
@@ -121,6 +121,44 @@
 -- * 'Graphics.GL.Tokens.GL_FALSE'
 -- * 'Graphics.GL.Tokens.GL_TRUE'
 --
+-- === #BufferAccessARB# BufferAccessARB
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_READ_ONLY'
+-- * 'Graphics.GL.Tokens.GL_WRITE_ONLY'
+-- * 'Graphics.GL.Tokens.GL_READ_WRITE'
+--
+-- === #BufferTargetARB# BufferTargetARB
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_ARRAY_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_ATOMIC_COUNTER_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_COPY_READ_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_COPY_WRITE_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_DISPATCH_INDIRECT_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_DRAW_INDIRECT_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_ELEMENT_ARRAY_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_PIXEL_PACK_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_PIXEL_UNPACK_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_QUERY_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_SHADER_STORAGE_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_TRANSFORM_FEEDBACK_BUFFER'
+-- * 'Graphics.GL.Tokens.GL_UNIFORM_BUFFER'
+--
+-- === #BufferUsageARB# BufferUsageARB
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_STREAM_DRAW'
+-- * 'Graphics.GL.Tokens.GL_STREAM_READ'
+-- * 'Graphics.GL.Tokens.GL_STREAM_COPY'
+-- * 'Graphics.GL.Tokens.GL_STATIC_DRAW'
+-- * 'Graphics.GL.Tokens.GL_STATIC_READ'
+-- * 'Graphics.GL.Tokens.GL_STATIC_COPY'
+-- * 'Graphics.GL.Tokens.GL_DYNAMIC_DRAW'
+-- * 'Graphics.GL.Tokens.GL_DYNAMIC_READ'
+-- * 'Graphics.GL.Tokens.GL_DYNAMIC_COPY'
+--
 -- === #ClearBufferMask# ClearBufferMask
 -- A bitwise combination of several of the following values:
 --
@@ -268,6 +306,13 @@
 -- * 'Graphics.GL.Tokens.GL_NONE' (alias: 'Graphics.GL.Tokens.GL_NONE_OES')
 -- * 'Graphics.GL.Tokens.GL_RIGHT'
 --
+-- === #DrawElementsType# DrawElementsType
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_UNSIGNED_BYTE'
+-- * 'Graphics.GL.Tokens.GL_UNSIGNED_SHORT'
+-- * 'Graphics.GL.Tokens.GL_UNSIGNED_INT'
+--
 -- === #EnableCap# EnableCap
 -- One of the following values:
 --
@@ -392,6 +437,18 @@
 -- * 'Graphics.GL.Tokens.GL_TABLE_TOO_LARGE' (alias: 'Graphics.GL.Tokens.GL_TABLE_TOO_LARGE_EXT')
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_TOO_LARGE_EXT'
 --
+-- === #ExternalHandleType# ExternalHandleType
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_OPAQUE_FD_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_OPAQUE_WIN32_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_D3D12_RESOURCE_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_D3D11_IMAGE_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT'
+-- * 'Graphics.GL.Tokens.GL_HANDLE_TYPE_D3D12_FENCE_EXT'
+--
 -- === #FeedBackToken# FeedBackToken
 -- One of the following values:
 --
@@ -468,6 +525,11 @@
 -- * 'Graphics.GL.Tokens.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX'
 -- * 'Graphics.GL.Tokens.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX'
 --
+-- === #FramebufferFetchNoncoherent# FramebufferFetchNoncoherent
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM'
+--
 -- === #FrontFaceDirection# FrontFaceDirection
 -- One of the following values:
 --
@@ -604,10 +666,14 @@
 -- * 'Graphics.GL.Tokens.GL_DEPTH_TEST'
 -- * 'Graphics.GL.Tokens.GL_DEPTH_WRITEMASK'
 -- * 'Graphics.GL.Tokens.GL_DETAIL_TEXTURE_2D_BINDING_SGIS'
+-- * 'Graphics.GL.Tokens.GL_DEVICE_LUID_EXT'
+-- * 'Graphics.GL.Tokens.GL_DEVICE_NODE_MASK_EXT'
+-- * 'Graphics.GL.Tokens.GL_DEVICE_UUID_EXT'
 -- * 'Graphics.GL.Tokens.GL_DISTANCE_ATTENUATION_SGIS'
 -- * 'Graphics.GL.Tokens.GL_DITHER'
 -- * 'Graphics.GL.Tokens.GL_DOUBLEBUFFER'
 -- * 'Graphics.GL.Tokens.GL_DRAW_BUFFER' (alias: 'Graphics.GL.Tokens.GL_DRAW_BUFFER_EXT')
+-- * 'Graphics.GL.Tokens.GL_DRIVER_UUID_EXT'
 -- * 'Graphics.GL.Tokens.GL_EDGE_FLAG'
 -- * 'Graphics.GL.Tokens.GL_EDGE_FLAG_ARRAY'
 -- * 'Graphics.GL.Tokens.GL_EDGE_FLAG_ARRAY_COUNT_EXT'
@@ -1331,6 +1397,12 @@
 -- * 'Graphics.GL.Tokens.GL_UNIFORM_BARRIER_BIT' (alias: 'Graphics.GL.Tokens.GL_UNIFORM_BARRIER_BIT_EXT')
 -- * 'Graphics.GL.Tokens.GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT' (alias: 'Graphics.GL.Tokens.GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT')
 --
+-- === #MemoryObjectParameterName# MemoryObjectParameterName
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_DEDICATED_MEMORY_OBJECT_EXT'
+-- * 'Graphics.GL.Tokens.GL_PROTECTED_MEMORY_OBJECT_EXT'
+--
 -- === #MeshMode1# MeshMode1
 -- One of the following values:
 --
@@ -1598,6 +1670,11 @@
 -- * 'Graphics.GL.Tokens.GL_4PASS_2_EXT' (alias: 'Graphics.GL.Tokens.GL_4PASS_2_SGIS')
 -- * 'Graphics.GL.Tokens.GL_4PASS_3_EXT' (alias: 'Graphics.GL.Tokens.GL_4PASS_3_SGIS')
 --
+-- === #SemaphoreParameterName# SemaphoreParameterName
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_D3D12_FENCE_VALUE_EXT'
+--
 -- === #SeparableTargetEXT# SeparableTargetEXT
 -- One of the following values:
 --
@@ -1609,6 +1686,13 @@
 -- * 'Graphics.GL.Tokens.GL_FLAT'
 -- * 'Graphics.GL.Tokens.GL_SMOOTH'
 --
+-- === #StencilFaceDirection# StencilFaceDirection
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_FRONT'
+-- * 'Graphics.GL.Tokens.GL_BACK'
+-- * 'Graphics.GL.Tokens.GL_FRONT_AND_BACK'
+--
 -- === #StencilFunction# StencilFunction
 -- One of the following values:
 --
@@ -1638,6 +1722,7 @@
 -- * 'Graphics.GL.Tokens.GL_RENDERER'
 -- * 'Graphics.GL.Tokens.GL_VENDOR'
 -- * 'Graphics.GL.Tokens.GL_VERSION'
+-- * 'Graphics.GL.Tokens.GL_SHADING_LANGUAGE_VERSION'
 --
 -- === #TexCoordPointerType# TexCoordPointerType
 -- One of the following values:
@@ -1703,6 +1788,17 @@
 -- * 'Graphics.GL.Tokens.GL_OBJECT_POINT_SGIS'
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_GEN_MODE'
 --
+-- === #TextureLayout# TextureLayout
+-- One of the following values:
+--
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_GENERAL_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_COLOR_ATTACHMENT_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_SHADER_READ_ONLY_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_TRANSFER_SRC_EXT'
+-- * 'Graphics.GL.Tokens.GL_LAYOUT_TRANSFER_DST_EXT'
+--
 -- === #TextureMagFilter# TextureMagFilter
 -- One of the following values:
 --
@@ -1769,23 +1865,53 @@
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_WRAP_R' (aliases: 'Graphics.GL.Tokens.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Tokens.GL_TEXTURE_WRAP_R_OES')
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_WRAP_S'
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_WRAP_T'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_BASE_LEVEL'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_COMPARE_MODE'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_COMPARE_FUNC'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_LOD_BIAS'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_MIN_LOD'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LOD'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LEVEL'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_SWIZZLE_R'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_SWIZZLE_G'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_SWIZZLE_B'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_SWIZZLE_A'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_SWIZZLE_RGBA'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_TILING_EXT'
+-- * 'Graphics.GL.Tokens.GL_DEPTH_STENCIL_TEXTURE_MODE'
 --
 -- === #TextureTarget# TextureTarget
 -- One of the following values:
 --
 -- * 'Graphics.GL.Tokens.GL_DETAIL_TEXTURE_2D_SGIS'
 -- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_1D' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_1D_EXT')
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_1D_ARRAY' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_1D_ARRAY_EXT')
 -- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D_EXT')
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D_ARRAY' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D_ARRAY_EXT')
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D_MULTISAMPLE'
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY'
 -- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_3D' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_3D_EXT')
 -- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_4D_SGIS'
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_CUBE_MAP' (aliases: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_CUBE_MAP_ARB', 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_CUBE_MAP_EXT')
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_CUBE_MAP_ARRAY' (alias: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB')
+-- * 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_RECTANGLE' (aliases: 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_RECTANGLE_ARB', 'Graphics.GL.Tokens.GL_PROXY_TEXTURE_RECTANGLE_NV')
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_1D'
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_2D'
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_3D' (aliases: 'Graphics.GL.Tokens.GL_TEXTURE_3D_EXT', 'Graphics.GL.Tokens.GL_TEXTURE_3D_OES')
 -- * 'Graphics.GL.Tokens.GL_TEXTURE_4D_SGIS'
--- * 'Graphics.GL.Tokens.GL_TEXTURE_BASE_LEVEL' (alias: 'Graphics.GL.Tokens.GL_TEXTURE_BASE_LEVEL_SGIS')
--- * 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LEVEL' (alias: 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LEVEL_SGIS')
--- * 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LOD' (alias: 'Graphics.GL.Tokens.GL_TEXTURE_MAX_LOD_SGIS')
--- * 'Graphics.GL.Tokens.GL_TEXTURE_MIN_LOD' (alias: 'Graphics.GL.Tokens.GL_TEXTURE_MIN_LOD_SGIS')
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_RECTANGLE'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_POSITIVE_X'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_NEGATIVE_X'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_POSITIVE_Y'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_POSITIVE_Z'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_ARRAY' (aliases: 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_ARRAY_ARB', 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_ARRAY_EXT', 'Graphics.GL.Tokens.GL_TEXTURE_CUBE_MAP_ARRAY_OES')
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_1D_ARRAY'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_2D_ARRAY'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_2D_MULTISAMPLE'
+-- * 'Graphics.GL.Tokens.GL_TEXTURE_2D_MULTISAMPLE_ARRAY'
 --
 -- === #TextureWrapMode# TextureWrapMode
 -- One of the following values:
diff --git a/src/Graphics/GL/NV.hs b/src/Graphics/GL/NV.hs
--- a/src/Graphics/GL/NV.hs
+++ b/src/Graphics/GL/NV.hs
@@ -13,6 +13,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.NV (
+  module Graphics.GL.NV.AlphaToCoverageDitherControl,
   module Graphics.GL.NV.BindlessMultiDrawIndirect,
   module Graphics.GL.NV.BindlessMultiDrawIndirectCount,
   module Graphics.GL.NV.BindlessTexture,
@@ -31,6 +32,7 @@
   module Graphics.GL.NV.DepthBufferFloat,
   module Graphics.GL.NV.DepthClamp,
   module Graphics.GL.NV.DrawTexture,
+  module Graphics.GL.NV.DrawVulkanImage,
   module Graphics.GL.NV.Evaluators,
   module Graphics.GL.NV.ExplicitMultisample,
   module Graphics.GL.NV.Fence,
@@ -42,6 +44,7 @@
   module Graphics.GL.NV.FragmentProgram2,
   module Graphics.GL.NV.FramebufferMixedSamples,
   module Graphics.GL.NV.FramebufferMultisampleCoverage,
+  module Graphics.GL.NV.GPUMulticast,
   module Graphics.GL.NV.GPUProgram4,
   module Graphics.GL.NV.GPUProgram5,
   module Graphics.GL.NV.GPUShader5,
@@ -95,6 +98,7 @@
   module Graphics.GL.NV.ViewportSwizzle
 ) where
 
+import Graphics.GL.NV.AlphaToCoverageDitherControl
 import Graphics.GL.NV.BindlessMultiDrawIndirect
 import Graphics.GL.NV.BindlessMultiDrawIndirectCount
 import Graphics.GL.NV.BindlessTexture
@@ -113,6 +117,7 @@
 import Graphics.GL.NV.DepthBufferFloat
 import Graphics.GL.NV.DepthClamp
 import Graphics.GL.NV.DrawTexture
+import Graphics.GL.NV.DrawVulkanImage
 import Graphics.GL.NV.Evaluators
 import Graphics.GL.NV.ExplicitMultisample
 import Graphics.GL.NV.Fence
@@ -124,6 +129,7 @@
 import Graphics.GL.NV.FragmentProgram2
 import Graphics.GL.NV.FramebufferMixedSamples
 import Graphics.GL.NV.FramebufferMultisampleCoverage
+import Graphics.GL.NV.GPUMulticast
 import Graphics.GL.NV.GPUProgram4
 import Graphics.GL.NV.GPUProgram5
 import Graphics.GL.NV.GPUShader5
diff --git a/src/Graphics/GL/NV/AlphaToCoverageDitherControl.hs b/src/Graphics/GL/NV/AlphaToCoverageDitherControl.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/NV/AlphaToCoverageDitherControl.hs
@@ -0,0 +1,29 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.NV.AlphaToCoverageDitherControl
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.NV.AlphaToCoverageDitherControl (
+  -- * Extension Support
+  glGetNVAlphaToCoverageDitherControl,
+  gl_NV_alpha_to_coverage_dither_control,
+  -- * Enums
+  pattern GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV,
+  pattern GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV,
+  pattern GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV,
+  pattern GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV,
+  -- * Functions
+  glAlphaToCoverageDitherControlNV
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/NV/DrawVulkanImage.hs b/src/Graphics/GL/NV/DrawVulkanImage.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/NV/DrawVulkanImage.hs
@@ -0,0 +1,26 @@
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.NV.DrawVulkanImage
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.NV.DrawVulkanImage (
+  -- * Extension Support
+  glGetNVDrawVulkanImage,
+  gl_NV_draw_vulkan_image,
+  -- * Functions
+  glDrawVkImageNV,
+  glGetVkProcAddrNV,
+  glSignalVkFenceNV,
+  glSignalVkSemaphoreNV,
+  glWaitVkSemaphoreNV
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/NV/GPUMulticast.hs b/src/Graphics/GL/NV/GPUMulticast.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/NV/GPUMulticast.hs
@@ -0,0 +1,41 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.NV.GPUMulticast
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.NV.GPUMulticast (
+  -- * Extension Support
+  glGetNVGPUMulticast,
+  gl_NV_gpu_multicast,
+  -- * Enums
+  pattern GL_MULTICAST_GPUS_NV,
+  pattern GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV,
+  pattern GL_PER_GPU_STORAGE_BIT_NV,
+  pattern GL_PER_GPU_STORAGE_NV,
+  pattern GL_RENDER_GPU_MASK_NV,
+  -- * Functions
+  glMulticastBarrierNV,
+  glMulticastBlitFramebufferNV,
+  glMulticastBufferSubDataNV,
+  glMulticastCopyBufferSubDataNV,
+  glMulticastCopyImageSubDataNV,
+  glMulticastFramebufferSampleLocationsfvNV,
+  glMulticastGetQueryObjecti64vNV,
+  glMulticastGetQueryObjectivNV,
+  glMulticastGetQueryObjectui64vNV,
+  glMulticastGetQueryObjectuivNV,
+  glMulticastWaitSyncNV,
+  glRenderGpuMaskNV
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/NVX.hs b/src/Graphics/GL/NVX.hs
--- a/src/Graphics/GL/NVX.hs
+++ b/src/Graphics/GL/NVX.hs
@@ -14,8 +14,10 @@
 
 module Graphics.GL.NVX (
   module Graphics.GL.NVX.ConditionalRender,
-  module Graphics.GL.NVX.GPUMemoryInfo
+  module Graphics.GL.NVX.GPUMemoryInfo,
+  module Graphics.GL.NVX.LinkedGPUMulticast
 ) where
 
 import Graphics.GL.NVX.ConditionalRender
 import Graphics.GL.NVX.GPUMemoryInfo
+import Graphics.GL.NVX.LinkedGPUMulticast
diff --git a/src/Graphics/GL/NVX/LinkedGPUMulticast.hs b/src/Graphics/GL/NVX/LinkedGPUMulticast.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/NVX/LinkedGPUMulticast.hs
@@ -0,0 +1,29 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.NVX.LinkedGPUMulticast
+-- Copyright   :  (c) Sven Panne 2016
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.NVX.LinkedGPUMulticast (
+  -- * Extension Support
+  glGetNVXLinkedGPUMulticast,
+  gl_NVX_linked_gpu_multicast,
+  -- * Enums
+  pattern GL_LGPU_SEPARATE_STORAGE_BIT_NVX,
+  pattern GL_MAX_LGPU_GPUS_NVX,
+  -- * Functions
+  glLGPUCopyImageSubDataNVX,
+  glLGPUInterlockNVX,
+  glLGPUNamedBufferSubDataNVX
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/Tokens.hs b/src/Graphics/GL/Tokens.hs
--- a/src/Graphics/GL/Tokens.hs
+++ b/src/Graphics/GL/Tokens.hs
@@ -283,6 +283,14 @@
 
 pattern GL_ALPHA_TEST_REF_QCOM = 0x0BC2 :: GLenum
 
+pattern GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV = 0x934D :: GLenum
+
+pattern GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV = 0x934F :: GLenum
+
+pattern GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV = 0x934E :: GLenum
+
+pattern GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV = 0x92BF :: GLenum
+
 pattern GL_ALREADY_SIGNALED = 0x911A :: GLenum
 
 pattern GL_ALREADY_SIGNALED_APPLE = 0x911A :: GLenum
@@ -1953,6 +1961,8 @@
 
 pattern GL_CW = 0x0900 :: GLenum
 
+pattern GL_D3D12_FENCE_VALUE_EXT = 0x9595 :: GLenum
+
 pattern GL_DARKEN = 0x9297 :: GLenum
 
 pattern GL_DARKEN_KHR = 0x9297 :: GLenum
@@ -2147,6 +2157,8 @@
 
 pattern GL_DECR_WRAP_OES = 0x8508 :: GLenum
 
+pattern GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581 :: GLenum
+
 pattern GL_DEFORMATIONS_MASK_SGIX = 0x8196 :: GLenum
 
 pattern GL_DELETE_STATUS = 0x8B80 :: GLenum
@@ -2305,6 +2317,12 @@
 
 pattern GL_DETAIL_TEXTURE_MODE_SGIS = 0x809B :: GLenum
 
+pattern GL_DEVICE_LUID_EXT = 0x9599 :: GLenum
+
+pattern GL_DEVICE_NODE_MASK_EXT = 0x959A :: GLenum
+
+pattern GL_DEVICE_UUID_EXT = 0x9597 :: GLenum
+
 pattern GL_DIFFERENCE = 0x929E :: GLenum
 
 pattern GL_DIFFERENCE_KHR = 0x929E :: GLenum
@@ -2649,6 +2667,8 @@
 
 pattern GL_DRAW_PIXEL_TOKEN = 0x0705 :: GLenum
 
+pattern GL_DRIVER_UUID_EXT = 0x9598 :: GLenum
+
 pattern GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B :: GLenum
 
 pattern GL_DSDT8_MAG8_NV = 0x870A :: GLenum
@@ -3199,6 +3219,10 @@
 
 pattern GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982 :: GLenum
 
+pattern GL_FOVEATION_ENABLE_BIT_QCOM = 0x00000001 :: GLbitfield
+
+pattern GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM = 0x00000002 :: GLbitfield
+
 pattern GL_FRACTIONAL_EVEN = 0x8E7C :: GLenum
 
 pattern GL_FRACTIONAL_EVEN_EXT = 0x8E7C :: GLenum
@@ -3427,6 +3451,8 @@
 
 pattern GL_FRAMEBUFFER_EXT = 0x8D40 :: GLenum
 
+pattern GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM = 0x96A2 :: GLenum
+
 pattern GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6 :: GLenum
 
 pattern GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6 :: GLenum
@@ -3735,6 +3761,22 @@
 
 pattern GL_HALF_FLOAT_OES = 0x8D61 :: GLenum
 
+pattern GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B :: GLenum
+
+pattern GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C :: GLenum
+
+pattern GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594 :: GLenum
+
+pattern GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A :: GLenum
+
+pattern GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589 :: GLenum
+
+pattern GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586 :: GLenum
+
+pattern GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587 :: GLenum
+
+pattern GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588 :: GLenum
+
 pattern GL_HARDLIGHT = 0x929B :: GLenum
 
 pattern GL_HARDLIGHT_KHR = 0x929B :: GLenum
@@ -4377,12 +4419,26 @@
 
 pattern GL_LAYER_PROVOKING_VERTEX_OES = 0x825E :: GLenum
 
+pattern GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E :: GLenum
+
 pattern GL_LAYOUT_DEFAULT_INTEL = 0 :: GLenum
 
+pattern GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F :: GLenum
+
+pattern GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590 :: GLenum
+
+pattern GL_LAYOUT_GENERAL_EXT = 0x958D :: GLenum
+
 pattern GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = 2 :: GLenum
 
 pattern GL_LAYOUT_LINEAR_INTEL = 1 :: GLenum
 
+pattern GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591 :: GLenum
+
+pattern GL_LAYOUT_TRANSFER_DST_EXT = 0x9593 :: GLenum
+
+pattern GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592 :: GLenum
+
 pattern GL_LEFT = 0x0406 :: GLenum
 
 pattern GL_LEQUAL = 0x0203 :: GLenum
@@ -4391,6 +4447,8 @@
 
 pattern GL_LESS = 0x0201 :: GLenum
 
+pattern GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x0800 :: GLbitfield
+
 pattern GL_LIGHT0 = 0x4000 :: GLenum
 
 pattern GL_LIGHT1 = 0x4001 :: GLenum
@@ -4463,6 +4521,8 @@
 
 pattern GL_LINEAR_SHARPEN_SGIS = 0x80AD :: GLenum
 
+pattern GL_LINEAR_TILING_EXT = 0x9585 :: GLenum
+
 pattern GL_LINES = 0x0001 :: GLenum
 
 pattern GL_LINES_ADJACENCY = 0x000A :: GLenum
@@ -4567,6 +4627,8 @@
 
 pattern GL_LO_SCALE_NV = 0x870F :: GLenum
 
+pattern GL_LUID_SIZE_EXT = 8 :: GLenum
+
 pattern GL_LUMINANCE = 0x1909 :: GLenum
 
 pattern GL_LUMINANCE12 = 0x8041 :: GLenum
@@ -5361,6 +5423,8 @@
 
 pattern GL_MAX_LAYERS = 0x8281 :: GLenum
 
+pattern GL_MAX_LGPU_GPUS_NVX = 0x92BA :: GLenum
+
 pattern GL_MAX_LIGHTS = 0x0D31 :: GLenum
 
 pattern GL_MAX_LIST_NESTING = 0x0B31 :: GLenum
@@ -6043,6 +6107,10 @@
 
 pattern GL_MULT = 0x0103 :: GLenum
 
+pattern GL_MULTICAST_GPUS_NV = 0x92BA :: GLenum
+
+pattern GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549 :: GLenum
+
 pattern GL_MULTIPLY = 0x9294 :: GLenum
 
 pattern GL_MULTIPLY_KHR = 0x9294 :: GLenum
@@ -6233,6 +6301,8 @@
 
 pattern GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2 :: GLenum
 
+pattern GL_NUM_DEVICE_UUIDS_EXT = 0x9596 :: GLenum
+
 pattern GL_NUM_DOWNSAMPLE_SCALES_IMG = 0x913D :: GLenum
 
 pattern GL_NUM_EXTENSIONS = 0x821D :: GLenum
@@ -6269,6 +6339,8 @@
 
 pattern GL_NUM_SPARSE_LEVELS_EXT = 0x91AA :: GLenum
 
+pattern GL_NUM_TILING_TYPES_EXT = 0x9582 :: GLenum
+
 pattern GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024 :: GLenum
 
 pattern GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8 :: GLenum
@@ -6435,6 +6507,8 @@
 
 pattern GL_OPERAND3_RGB_NV = 0x8593 :: GLenum
 
+pattern GL_OPTIMAL_TILING_EXT = 0x9584 :: GLenum
+
 pattern GL_OP_ADD_EXT = 0x8787 :: GLenum
 
 pattern GL_OP_CLAMP_EXT = 0x878E :: GLenum
@@ -6825,6 +6899,10 @@
 
 pattern GL_PERTURB_EXT = 0x85AE :: GLenum
 
+pattern GL_PER_GPU_STORAGE_BIT_NV = 0x0800 :: GLbitfield
+
+pattern GL_PER_GPU_STORAGE_NV = 0x9548 :: GLenum
+
 pattern GL_PER_STAGE_CONSTANTS_NV = 0x8535 :: GLenum
 
 pattern GL_PHONG_HINT_WIN = 0x80EB :: GLenum
@@ -7381,6 +7459,8 @@
 
 pattern GL_PROJECTION_STACK_DEPTH = 0x0BA4 :: GLenum
 
+pattern GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B :: GLenum
+
 pattern GL_PROVOKING_VERTEX = 0x8E4F :: GLenum
 
 pattern GL_PROVOKING_VERTEX_EXT = 0x8E4F :: GLenum
@@ -7957,6 +8037,8 @@
 
 pattern GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM = 0x8FB3 :: GLenum
 
+pattern GL_RENDER_GPU_MASK_NV = 0x9558 :: GLenum
+
 pattern GL_RENDER_MODE = 0x0C40 :: GLenum
 
 pattern GL_REPEAT = 0x2901 :: GLenum
@@ -8609,6 +8691,8 @@
 
 pattern GL_SHADER_BINARY_FORMATS = 0x8DF8 :: GLenum
 
+pattern GL_SHADER_BINARY_FORMAT_SPIR_V_ARB = 0x9551 :: GLenum
+
 pattern GL_SHADER_BINARY_VIV = 0x8FC4 :: GLenum
 
 pattern GL_SHADER_COMPILER = 0x8DFA :: GLenum
@@ -8865,6 +8949,8 @@
 
 pattern GL_SPHERE_MAP = 0x2402 :: GLenum
 
+pattern GL_SPIR_V_BINARY_ARB = 0x9552 :: GLenum
+
 pattern GL_SPOT_CUTOFF = 0x1206 :: GLenum
 
 pattern GL_SPOT_DIRECTION = 0x1204 :: GLenum
@@ -9513,6 +9599,8 @@
 
 pattern GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F :: GLenum
 
+pattern GL_TEXTURE_ASTC_DECODE_PRECISION_EXT = 0x8F69 :: GLenum
+
 pattern GL_TEXTURE_BASE_LEVEL = 0x813C :: GLenum
 
 pattern GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C :: GLenum
@@ -10077,6 +10165,8 @@
 
 pattern GL_TEXTURE_TARGET_QCOM = 0x8BDA :: GLenum
 
+pattern GL_TEXTURE_TILING_EXT = 0x9580 :: GLenum
+
 pattern GL_TEXTURE_TOO_LARGE_EXT = 0x8065 :: GLenum
 
 pattern GL_TEXTURE_TYPE_QCOM = 0x8BD7 :: GLenum
@@ -10133,6 +10223,8 @@
 
 pattern GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200 :: GLenum
 
+pattern GL_TILING_TYPES_EXT = 0x9583 :: GLenum
+
 pattern GL_TIMEOUT_EXPIRED = 0x911B :: GLenum
 
 pattern GL_TIMEOUT_EXPIRED_APPLE = 0x911B :: GLenum
@@ -10746,6 +10838,8 @@
 pattern GL_UTF16_NV = 0x909B :: GLenum
 
 pattern GL_UTF8_NV = 0x909A :: GLenum
+
+pattern GL_UUID_SIZE_EXT = 16 :: GLenum
 
 pattern GL_V2F = 0x2A20 :: GLenum
 
diff --git a/src/Graphics/GL/Types.hs b/src/Graphics/GL/Types.hs
--- a/src/Graphics/GL/Types.hs
+++ b/src/Graphics/GL/Types.hs
@@ -57,6 +57,9 @@
   GLhandleARB,
   GLvdpauSurfaceNV,
   GLeglImageOES,
+  GLeglClientBufferEXT,
+  GLVULKANPROCNVFunc,
+  GLVULKANPROCNV,
 
   -- * Deprecated functions for @gl@ compatibility.
   mkGLDEBUGPROC,
@@ -221,6 +224,12 @@
 type GLvdpauSurfaceNV = GLintptr
 
 type GLeglImageOES = Ptr ()
+
+type GLeglClientBufferEXT = Ptr ()
+
+type GLVULKANPROCNV = FunPtr GLVULKANPROCNVFunc
+
+type GLVULKANPROCNVFunc = IO ()
 
 {-# DEPRECATED mkGLDEBUGPROC "Use 'makeGLDEBUGPROC' instead." #-}
 mkGLDEBUGPROC :: GLDEBUGPROCFunc -> IO (FunPtr GLDEBUGPROCFunc)
