-- This file was automatically generated.
{-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Raw.Extension.NV.VertexProgram (
  -- * Extension Support
    gl_NV_vertex_program

  -- * GL_NV_vertex_program
  , glAreProgramsResidentNV
  , glBindProgramNV
  , glDeleteProgramsNV
  , glExecuteProgramNV
  , glGenProgramsNV
  , glGetProgramParameterdvNV
  , glGetProgramParameterfvNV
  , glGetProgramStringNV
  , glGetProgramivNV
  , glGetTrackMatrixivNV
  , glGetVertexAttribPointervNV
  , glGetVertexAttribdvNV
  , glGetVertexAttribfvNV
  , glGetVertexAttribivNV
  , glIsProgramNV
  , glLoadProgramNV
  , glProgramParameter4dNV
  , glProgramParameter4dvNV
  , glProgramParameter4fNV
  , glProgramParameter4fvNV
  , glProgramParameters4dvNV
  , glProgramParameters4fvNV
  , glRequestResidentProgramsNV
  , glTrackMatrixNV
  , glVertexAttrib1dNV
  , glVertexAttrib1dvNV
  , glVertexAttrib1fNV
  , glVertexAttrib1fvNV
  , glVertexAttrib1sNV
  , glVertexAttrib1svNV
  , glVertexAttrib2dNV
  , glVertexAttrib2dvNV
  , glVertexAttrib2fNV
  , glVertexAttrib2fvNV
  , glVertexAttrib2sNV
  , glVertexAttrib2svNV
  , glVertexAttrib3dNV
  , glVertexAttrib3dvNV
  , glVertexAttrib3fNV
  , glVertexAttrib3fvNV
  , glVertexAttrib3sNV
  , glVertexAttrib3svNV
  , glVertexAttrib4dNV
  , glVertexAttrib4dvNV
  , glVertexAttrib4fNV
  , glVertexAttrib4fvNV
  , glVertexAttrib4sNV
  , glVertexAttrib4svNV
  , glVertexAttrib4ubNV
  , glVertexAttrib4ubvNV
  , glVertexAttribPointerNV
  , glVertexAttribs1dvNV
  , glVertexAttribs1fvNV
  , glVertexAttribs1svNV
  , glVertexAttribs2dvNV
  , glVertexAttribs2fvNV
  , glVertexAttribs2svNV
  , glVertexAttribs3dvNV
  , glVertexAttribs3fvNV
  , glVertexAttribs3svNV
  , glVertexAttribs4dvNV
  , glVertexAttribs4fvNV
  , glVertexAttribs4svNV
  , glVertexAttribs4ubvNV
  , pattern GL_ATTRIB_ARRAY_POINTER_NV
  , pattern GL_ATTRIB_ARRAY_SIZE_NV
  , pattern GL_ATTRIB_ARRAY_STRIDE_NV
  , pattern GL_ATTRIB_ARRAY_TYPE_NV
  , pattern GL_CURRENT_ATTRIB_NV
  , pattern GL_CURRENT_MATRIX_NV
  , pattern GL_CURRENT_MATRIX_STACK_DEPTH_NV
  , pattern GL_IDENTITY_NV
  , pattern GL_INVERSE_NV
  , pattern GL_INVERSE_TRANSPOSE_NV
  , pattern GL_MAP1_VERTEX_ATTRIB0_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB10_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB11_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB12_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB13_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB14_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB15_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB1_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB2_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB3_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB4_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB5_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB6_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB7_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB8_4_NV
  , pattern GL_MAP1_VERTEX_ATTRIB9_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB0_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB10_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB11_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB12_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB13_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB14_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB15_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB1_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB2_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB3_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB4_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB5_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB6_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB7_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB8_4_NV
  , pattern GL_MAP2_VERTEX_ATTRIB9_4_NV
  , pattern GL_MATRIX0_NV
  , pattern GL_MATRIX1_NV
  , pattern GL_MATRIX2_NV
  , pattern GL_MATRIX3_NV
  , pattern GL_MATRIX4_NV
  , pattern GL_MATRIX5_NV
  , pattern GL_MATRIX6_NV
  , pattern GL_MATRIX7_NV
  , pattern GL_MAX_TRACK_MATRICES_NV
  , pattern GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV
  , pattern GL_MODELVIEW_PROJECTION_NV
  , pattern GL_PROGRAM_ERROR_POSITION_NV
  , pattern GL_PROGRAM_LENGTH_NV
  , pattern GL_PROGRAM_PARAMETER_NV
  , pattern GL_PROGRAM_RESIDENT_NV
  , pattern GL_PROGRAM_STRING_NV
  , pattern GL_PROGRAM_TARGET_NV
  , pattern GL_TRACK_MATRIX_NV
  , pattern GL_TRACK_MATRIX_TRANSFORM_NV
  , pattern GL_TRANSPOSE_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY0_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY10_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY11_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY12_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY13_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY14_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY15_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY1_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY2_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY3_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY4_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY5_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY6_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY7_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY8_NV
  , pattern GL_VERTEX_ATTRIB_ARRAY9_NV
  , pattern GL_VERTEX_PROGRAM_BINDING_NV
  , pattern GL_VERTEX_PROGRAM_NV
  , pattern GL_VERTEX_PROGRAM_POINT_SIZE_NV
  , pattern GL_VERTEX_PROGRAM_TWO_SIDE_NV
  , pattern GL_VERTEX_STATE_PROGRAM_NV
) where

import Control.Monad.IO.Class
import Data.Set
import Foreign.Ptr
import Graphics.GL.Raw.Internal.FFI
import Graphics.GL.Raw.Internal.Proc
import Graphics.GL.Raw.Types
import System.IO.Unsafe

gl_NV_vertex_program :: Bool
gl_NV_vertex_program = member "GL_NV_vertex_program" extensions

glAreProgramsResidentNV :: MonadIO m => GLsizei -> Ptr GLuint -> Ptr GLboolean -> m GLboolean
glAreProgramsResidentNV = ffisizeiPtruintPtrbooleanIOboolean glAreProgramsResidentNVFunPtr

glAreProgramsResidentNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
glAreProgramsResidentNVFunPtr = unsafePerformIO (getProcAddress "glAreProgramsResidentNV")

{-# NOINLINE glAreProgramsResidentNVFunPtr #-}

glBindProgramNV :: MonadIO m => GLenum -> GLuint -> m ()
glBindProgramNV = ffienumuintIOV glBindProgramNVFunPtr

glBindProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindProgramNVFunPtr = unsafePerformIO (getProcAddress "glBindProgramNV")

{-# NOINLINE glBindProgramNVFunPtr #-}

glDeleteProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteProgramsNV = ffisizeiPtruintIOV glDeleteProgramsNVFunPtr

glDeleteProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteProgramsNVFunPtr = unsafePerformIO (getProcAddress "glDeleteProgramsNV")

{-# NOINLINE glDeleteProgramsNVFunPtr #-}

glExecuteProgramNV :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glExecuteProgramNV = ffienumuintPtrfloatIOV glExecuteProgramNVFunPtr

glExecuteProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glExecuteProgramNVFunPtr = unsafePerformIO (getProcAddress "glExecuteProgramNV")

{-# NOINLINE glExecuteProgramNVFunPtr #-}

glGenProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenProgramsNV = ffisizeiPtruintIOV glGenProgramsNVFunPtr

glGenProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenProgramsNVFunPtr = unsafePerformIO (getProcAddress "glGenProgramsNV")

{-# NOINLINE glGenProgramsNVFunPtr #-}

glGetProgramParameterdvNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetProgramParameterdvNV = ffienumuintenumPtrdoubleIOV glGetProgramParameterdvNVFunPtr

glGetProgramParameterdvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetProgramParameterdvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramParameterdvNV")

{-# NOINLINE glGetProgramParameterdvNVFunPtr #-}

glGetProgramParameterfvNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetProgramParameterfvNV = ffienumuintenumPtrfloatIOV glGetProgramParameterfvNVFunPtr

glGetProgramParameterfvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetProgramParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramParameterfvNV")

{-# NOINLINE glGetProgramParameterfvNVFunPtr #-}

glGetProgramStringNV :: MonadIO m => GLuint -> GLenum -> Ptr GLubyte -> m ()
glGetProgramStringNV = ffiuintenumPtrubyteIOV glGetProgramStringNVFunPtr

glGetProgramStringNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
glGetProgramStringNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramStringNV")

{-# NOINLINE glGetProgramStringNVFunPtr #-}

glGetProgramivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetProgramivNV = ffiuintenumPtrintIOV glGetProgramivNVFunPtr

glGetProgramivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetProgramivNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramivNV")

{-# NOINLINE glGetProgramivNVFunPtr #-}

glGetTrackMatrixivNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetTrackMatrixivNV = ffienumuintenumPtrintIOV glGetTrackMatrixivNVFunPtr

glGetTrackMatrixivNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetTrackMatrixivNVFunPtr = unsafePerformIO (getProcAddress "glGetTrackMatrixivNV")

{-# NOINLINE glGetTrackMatrixivNVFunPtr #-}

glGetVertexAttribPointervNV :: MonadIO m => GLuint -> GLenum -> Ptr () -> m ()
glGetVertexAttribPointervNV = ffiuintenumPtrVIOV glGetVertexAttribPointervNVFunPtr

glGetVertexAttribPointervNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> IO ())
glGetVertexAttribPointervNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribPointervNV")

{-# NOINLINE glGetVertexAttribPointervNVFunPtr #-}

glGetVertexAttribdvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetVertexAttribdvNV = ffiuintenumPtrdoubleIOV glGetVertexAttribdvNVFunPtr

glGetVertexAttribdvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetVertexAttribdvNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribdvNV")

{-# NOINLINE glGetVertexAttribdvNVFunPtr #-}

glGetVertexAttribfvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetVertexAttribfvNV = ffiuintenumPtrfloatIOV glGetVertexAttribfvNVFunPtr

glGetVertexAttribfvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetVertexAttribfvNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribfvNV")

{-# NOINLINE glGetVertexAttribfvNVFunPtr #-}

glGetVertexAttribivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexAttribivNV = ffiuintenumPtrintIOV glGetVertexAttribivNVFunPtr

glGetVertexAttribivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexAttribivNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribivNV")

{-# NOINLINE glGetVertexAttribivNVFunPtr #-}

glIsProgramNV :: MonadIO m => GLuint -> m GLboolean
glIsProgramNV = ffiuintIOboolean glIsProgramNVFunPtr

glIsProgramNVFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsProgramNVFunPtr = unsafePerformIO (getProcAddress "glIsProgramNV")

{-# NOINLINE glIsProgramNVFunPtr #-}

glLoadProgramNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> m ()
glLoadProgramNV = ffienumuintsizeiPtrubyteIOV glLoadProgramNVFunPtr

glLoadProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
glLoadProgramNVFunPtr = unsafePerformIO (getProcAddress "glLoadProgramNV")

{-# NOINLINE glLoadProgramNVFunPtr #-}

glProgramParameter4dNV :: MonadIO m => GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramParameter4dNV = ffienumuintdoubledoubledoubledoubleIOV glProgramParameter4dNVFunPtr

glProgramParameter4dNVFunPtr :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramParameter4dNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4dNV")

{-# NOINLINE glProgramParameter4dNVFunPtr #-}

glProgramParameter4dvNV :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glProgramParameter4dvNV = ffienumuintPtrdoubleIOV glProgramParameter4dvNVFunPtr

glProgramParameter4dvNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glProgramParameter4dvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4dvNV")

{-# NOINLINE glProgramParameter4dvNVFunPtr #-}

glProgramParameter4fNV :: MonadIO m => GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramParameter4fNV = ffienumuintfloatfloatfloatfloatIOV glProgramParameter4fNVFunPtr

glProgramParameter4fNVFunPtr :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramParameter4fNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4fNV")

{-# NOINLINE glProgramParameter4fNVFunPtr #-}

glProgramParameter4fvNV :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glProgramParameter4fvNV = ffienumuintPtrfloatIOV glProgramParameter4fvNVFunPtr

glProgramParameter4fvNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glProgramParameter4fvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4fvNV")

{-# NOINLINE glProgramParameter4fvNVFunPtr #-}

glProgramParameters4dvNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> m ()
glProgramParameters4dvNV = ffienumuintsizeiPtrdoubleIOV glProgramParameters4dvNVFunPtr

glProgramParameters4dvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramParameters4dvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameters4dvNV")

{-# NOINLINE glProgramParameters4dvNVFunPtr #-}

glProgramParameters4fvNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> m ()
glProgramParameters4fvNV = ffienumuintsizeiPtrfloatIOV glProgramParameters4fvNVFunPtr

glProgramParameters4fvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramParameters4fvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameters4fvNV")

{-# NOINLINE glProgramParameters4fvNVFunPtr #-}

glRequestResidentProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glRequestResidentProgramsNV = ffisizeiPtruintIOV glRequestResidentProgramsNVFunPtr

glRequestResidentProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glRequestResidentProgramsNVFunPtr = unsafePerformIO (getProcAddress "glRequestResidentProgramsNV")

{-# NOINLINE glRequestResidentProgramsNVFunPtr #-}

glTrackMatrixNV :: MonadIO m => GLenum -> GLuint -> GLenum -> GLenum -> m ()
glTrackMatrixNV = ffienumuintenumenumIOV glTrackMatrixNVFunPtr

glTrackMatrixNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
glTrackMatrixNVFunPtr = unsafePerformIO (getProcAddress "glTrackMatrixNV")

{-# NOINLINE glTrackMatrixNVFunPtr #-}

glVertexAttrib1dNV :: MonadIO m => GLuint -> GLdouble -> m ()
glVertexAttrib1dNV = ffiuintdoubleIOV glVertexAttrib1dNVFunPtr

glVertexAttrib1dNVFunPtr :: FunPtr (GLuint -> GLdouble -> IO ())
glVertexAttrib1dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dNV")

{-# NOINLINE glVertexAttrib1dNVFunPtr #-}

glVertexAttrib1dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib1dvNV = ffiuintPtrdoubleIOV glVertexAttrib1dvNVFunPtr

glVertexAttrib1dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib1dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dvNV")

{-# NOINLINE glVertexAttrib1dvNVFunPtr #-}

glVertexAttrib1fNV :: MonadIO m => GLuint -> GLfloat -> m ()
glVertexAttrib1fNV = ffiuintfloatIOV glVertexAttrib1fNVFunPtr

glVertexAttrib1fNVFunPtr :: FunPtr (GLuint -> GLfloat -> IO ())
glVertexAttrib1fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fNV")

{-# NOINLINE glVertexAttrib1fNVFunPtr #-}

glVertexAttrib1fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib1fvNV = ffiuintPtrfloatIOV glVertexAttrib1fvNVFunPtr

glVertexAttrib1fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib1fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fvNV")

{-# NOINLINE glVertexAttrib1fvNVFunPtr #-}

glVertexAttrib1sNV :: MonadIO m => GLuint -> GLshort -> m ()
glVertexAttrib1sNV = ffiuintshortIOV glVertexAttrib1sNVFunPtr

glVertexAttrib1sNVFunPtr :: FunPtr (GLuint -> GLshort -> IO ())
glVertexAttrib1sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1sNV")

{-# NOINLINE glVertexAttrib1sNVFunPtr #-}

glVertexAttrib1svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib1svNV = ffiuintPtrshortIOV glVertexAttrib1svNVFunPtr

glVertexAttrib1svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib1svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1svNV")

{-# NOINLINE glVertexAttrib1svNVFunPtr #-}

glVertexAttrib2dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glVertexAttrib2dNV = ffiuintdoubledoubleIOV glVertexAttrib2dNVFunPtr

glVertexAttrib2dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glVertexAttrib2dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dNV")

{-# NOINLINE glVertexAttrib2dNVFunPtr #-}

glVertexAttrib2dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib2dvNV = ffiuintPtrdoubleIOV glVertexAttrib2dvNVFunPtr

glVertexAttrib2dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib2dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dvNV")

{-# NOINLINE glVertexAttrib2dvNVFunPtr #-}

glVertexAttrib2fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m ()
glVertexAttrib2fNV = ffiuintfloatfloatIOV glVertexAttrib2fNVFunPtr

glVertexAttrib2fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
glVertexAttrib2fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fNV")

{-# NOINLINE glVertexAttrib2fNVFunPtr #-}

glVertexAttrib2fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib2fvNV = ffiuintPtrfloatIOV glVertexAttrib2fvNVFunPtr

glVertexAttrib2fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib2fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fvNV")

{-# NOINLINE glVertexAttrib2fvNVFunPtr #-}

glVertexAttrib2sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> m ()
glVertexAttrib2sNV = ffiuintshortshortIOV glVertexAttrib2sNVFunPtr

glVertexAttrib2sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
glVertexAttrib2sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2sNV")

{-# NOINLINE glVertexAttrib2sNVFunPtr #-}

glVertexAttrib2svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib2svNV = ffiuintPtrshortIOV glVertexAttrib2svNVFunPtr

glVertexAttrib2svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib2svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2svNV")

{-# NOINLINE glVertexAttrib2svNVFunPtr #-}

glVertexAttrib3dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib3dNV = ffiuintdoubledoubledoubleIOV glVertexAttrib3dNVFunPtr

glVertexAttrib3dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib3dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dNV")

{-# NOINLINE glVertexAttrib3dNVFunPtr #-}

glVertexAttrib3dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib3dvNV = ffiuintPtrdoubleIOV glVertexAttrib3dvNVFunPtr

glVertexAttrib3dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib3dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dvNV")

{-# NOINLINE glVertexAttrib3dvNVFunPtr #-}

glVertexAttrib3fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib3fNV = ffiuintfloatfloatfloatIOV glVertexAttrib3fNVFunPtr

glVertexAttrib3fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib3fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fNV")

{-# NOINLINE glVertexAttrib3fNVFunPtr #-}

glVertexAttrib3fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib3fvNV = ffiuintPtrfloatIOV glVertexAttrib3fvNVFunPtr

glVertexAttrib3fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib3fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fvNV")

{-# NOINLINE glVertexAttrib3fvNVFunPtr #-}

glVertexAttrib3sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib3sNV = ffiuintshortshortshortIOV glVertexAttrib3sNVFunPtr

glVertexAttrib3sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib3sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3sNV")

{-# NOINLINE glVertexAttrib3sNVFunPtr #-}

glVertexAttrib3svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib3svNV = ffiuintPtrshortIOV glVertexAttrib3svNVFunPtr

glVertexAttrib3svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib3svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3svNV")

{-# NOINLINE glVertexAttrib3svNVFunPtr #-}

glVertexAttrib4dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib4dNV = ffiuintdoubledoubledoubledoubleIOV glVertexAttrib4dNVFunPtr

glVertexAttrib4dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib4dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dNV")

{-# NOINLINE glVertexAttrib4dNVFunPtr #-}

glVertexAttrib4dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib4dvNV = ffiuintPtrdoubleIOV glVertexAttrib4dvNVFunPtr

glVertexAttrib4dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib4dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dvNV")

{-# NOINLINE glVertexAttrib4dvNVFunPtr #-}

glVertexAttrib4fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib4fNV = ffiuintfloatfloatfloatfloatIOV glVertexAttrib4fNVFunPtr

glVertexAttrib4fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib4fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fNV")

{-# NOINLINE glVertexAttrib4fNVFunPtr #-}

glVertexAttrib4fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib4fvNV = ffiuintPtrfloatIOV glVertexAttrib4fvNVFunPtr

glVertexAttrib4fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib4fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fvNV")

{-# NOINLINE glVertexAttrib4fvNVFunPtr #-}

glVertexAttrib4sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib4sNV = ffiuintshortshortshortshortIOV glVertexAttrib4sNVFunPtr

glVertexAttrib4sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib4sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4sNV")

{-# NOINLINE glVertexAttrib4sNVFunPtr #-}

glVertexAttrib4svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4svNV = ffiuintPtrshortIOV glVertexAttrib4svNVFunPtr

glVertexAttrib4svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4svNV")

{-# NOINLINE glVertexAttrib4svNVFunPtr #-}

glVertexAttrib4ubNV :: MonadIO m => GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> m ()
glVertexAttrib4ubNV = ffiuintubyteubyteubyteubyteIOV glVertexAttrib4ubNVFunPtr

glVertexAttrib4ubNVFunPtr :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
glVertexAttrib4ubNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubNV")

{-# NOINLINE glVertexAttrib4ubNVFunPtr #-}

glVertexAttrib4ubvNV :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4ubvNV = ffiuintPtrubyteIOV glVertexAttrib4ubvNVFunPtr

glVertexAttrib4ubvNVFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4ubvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubvNV")

{-# NOINLINE glVertexAttrib4ubvNVFunPtr #-}

glVertexAttribPointerNV :: MonadIO m => GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glVertexAttribPointerNV = ffiuintintenumsizeiPtrVIOV glVertexAttribPointerNVFunPtr

glVertexAttribPointerNVFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glVertexAttribPointerNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribPointerNV")

{-# NOINLINE glVertexAttribPointerNVFunPtr #-}

glVertexAttribs1dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs1dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs1dvNVFunPtr

glVertexAttribs1dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs1dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1dvNV")

{-# NOINLINE glVertexAttribs1dvNVFunPtr #-}

glVertexAttribs1fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs1fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs1fvNVFunPtr

glVertexAttribs1fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs1fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1fvNV")

{-# NOINLINE glVertexAttribs1fvNVFunPtr #-}

glVertexAttribs1svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs1svNV = ffiuintsizeiPtrshortIOV glVertexAttribs1svNVFunPtr

glVertexAttribs1svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs1svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1svNV")

{-# NOINLINE glVertexAttribs1svNVFunPtr #-}

glVertexAttribs2dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs2dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs2dvNVFunPtr

glVertexAttribs2dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs2dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2dvNV")

{-# NOINLINE glVertexAttribs2dvNVFunPtr #-}

glVertexAttribs2fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs2fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs2fvNVFunPtr

glVertexAttribs2fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs2fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2fvNV")

{-# NOINLINE glVertexAttribs2fvNVFunPtr #-}

glVertexAttribs2svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs2svNV = ffiuintsizeiPtrshortIOV glVertexAttribs2svNVFunPtr

glVertexAttribs2svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs2svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2svNV")

{-# NOINLINE glVertexAttribs2svNVFunPtr #-}

glVertexAttribs3dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs3dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs3dvNVFunPtr

glVertexAttribs3dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs3dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3dvNV")

{-# NOINLINE glVertexAttribs3dvNVFunPtr #-}

glVertexAttribs3fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs3fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs3fvNVFunPtr

glVertexAttribs3fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs3fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3fvNV")

{-# NOINLINE glVertexAttribs3fvNVFunPtr #-}

glVertexAttribs3svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs3svNV = ffiuintsizeiPtrshortIOV glVertexAttribs3svNVFunPtr

glVertexAttribs3svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs3svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3svNV")

{-# NOINLINE glVertexAttribs3svNVFunPtr #-}

glVertexAttribs4dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs4dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs4dvNVFunPtr

glVertexAttribs4dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs4dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4dvNV")

{-# NOINLINE glVertexAttribs4dvNVFunPtr #-}

glVertexAttribs4fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs4fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs4fvNVFunPtr

glVertexAttribs4fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs4fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4fvNV")

{-# NOINLINE glVertexAttribs4fvNVFunPtr #-}

glVertexAttribs4svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs4svNV = ffiuintsizeiPtrshortIOV glVertexAttribs4svNVFunPtr

glVertexAttribs4svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs4svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4svNV")

{-# NOINLINE glVertexAttribs4svNVFunPtr #-}

glVertexAttribs4ubvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> m ()
glVertexAttribs4ubvNV = ffiuintsizeiPtrubyteIOV glVertexAttribs4ubvNVFunPtr

glVertexAttribs4ubvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
glVertexAttribs4ubvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4ubvNV")

{-# NOINLINE glVertexAttribs4ubvNVFunPtr #-}

pattern GL_ATTRIB_ARRAY_POINTER_NV = 0x8645 :: GLenum

pattern GL_ATTRIB_ARRAY_SIZE_NV = 0x8623 :: GLenum

pattern GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624 :: GLenum

pattern GL_ATTRIB_ARRAY_TYPE_NV = 0x8625 :: GLenum

pattern GL_CURRENT_ATTRIB_NV = 0x8626 :: GLenum

pattern GL_CURRENT_MATRIX_NV = 0x8641 :: GLenum

pattern GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640 :: GLenum

pattern GL_IDENTITY_NV = 0x862A :: GLenum

pattern GL_INVERSE_NV = 0x862B :: GLenum

pattern GL_INVERSE_TRANSPOSE_NV = 0x862D :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668 :: GLenum

pattern GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678 :: GLenum

pattern GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679 :: GLenum

pattern GL_MATRIX0_NV = 0x8630 :: GLenum

pattern GL_MATRIX1_NV = 0x8631 :: GLenum

pattern GL_MATRIX2_NV = 0x8632 :: GLenum

pattern GL_MATRIX3_NV = 0x8633 :: GLenum

pattern GL_MATRIX4_NV = 0x8634 :: GLenum

pattern GL_MATRIX5_NV = 0x8635 :: GLenum

pattern GL_MATRIX6_NV = 0x8636 :: GLenum

pattern GL_MATRIX7_NV = 0x8637 :: GLenum

pattern GL_MAX_TRACK_MATRICES_NV = 0x862F :: GLenum

pattern GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E :: GLenum

pattern GL_MODELVIEW_PROJECTION_NV = 0x8629 :: GLenum

pattern GL_PROGRAM_ERROR_POSITION_NV = 0x864B :: GLenum

pattern GL_PROGRAM_LENGTH_NV = 0x8627 :: GLenum

pattern GL_PROGRAM_PARAMETER_NV = 0x8644 :: GLenum

pattern GL_PROGRAM_RESIDENT_NV = 0x8647 :: GLenum

pattern GL_PROGRAM_STRING_NV = 0x8628 :: GLenum

pattern GL_PROGRAM_TARGET_NV = 0x8646 :: GLenum

pattern GL_TRACK_MATRIX_NV = 0x8648 :: GLenum

pattern GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649 :: GLenum

pattern GL_TRANSPOSE_NV = 0x862C :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658 :: GLenum

pattern GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659 :: GLenum

pattern GL_VERTEX_PROGRAM_BINDING_NV = 0x864A :: GLenum

pattern GL_VERTEX_PROGRAM_NV = 0x8620 :: GLenum

pattern GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642 :: GLenum

pattern GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643 :: GLenum

pattern GL_VERTEX_STATE_PROGRAM_NV = 0x8621 :: GLenum