    {-# OPTIONS_HADDOCK hide #-}
    --------------------------------------------------------------------------------
    -- |
    -- Module      :  Graphics.GL.Functions.F32
    -- Copyright   :  (c) Sven Panne 2019
    -- 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.F32 (
      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,
      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,
      glWaitSemaphoreui64NVX
    ) where

    import Control.Monad.IO.Class ( MonadIO(..) )
    import Foreign.Ptr
    import Graphics.GL.Foreign
    import Graphics.GL.Types
    import System.IO.Unsafe ( unsafePerformIO )

    -- glVertexAttribLPointerEXT ---------------------------------------------------

    -- | This command is an alias for 'glVertexAttribLPointer'.
    glVertexAttribLPointerEXT
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLsizei -- ^ @stride@.
      -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
      -> m ()
    glVertexAttribLPointerEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLuint -> GLint -> GLuint -> GLint -> Ptr a -> m ()
    glVertexAttribLPointerEXT GLuint
    v1 GLint
    v2 GLuint
    v3 GLint
    v4 Ptr a
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    dyn916 FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribLPointerEXT GLuint
    v1 GLint
    v2 GLuint
    v3 GLint
    v4 Ptr a
    v5

    {-# NOINLINE ptr_glVertexAttribLPointerEXT #-}
    ptr_glVertexAttribLPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexAttribLPointerEXT :: forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribLPointerEXT = IO (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexAttribP1ui :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> GLuint -> m ()
    glVertexAttribP1ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> GLuint -> IO ()
    dyn927 FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP1ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP1ui #-}
    ptr_glVertexAttribP1ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP1ui :: FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP1ui = IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribP1ui"

    -- glVertexAttribP1uiv ---------------------------------------------------------

    glVertexAttribP1uiv
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexAttribP1uiv :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> Ptr GLuint -> m ()
    glVertexAttribP1uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()
    dyn928 FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP1uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP1uiv #-}
    ptr_glVertexAttribP1uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP1uiv :: FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP1uiv = IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexAttribP2ui :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> GLuint -> m ()
    glVertexAttribP2ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> GLuint -> IO ()
    dyn927 FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP2ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP2ui #-}
    ptr_glVertexAttribP2ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP2ui :: FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP2ui = IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribP2ui"

    -- glVertexAttribP2uiv ---------------------------------------------------------

    glVertexAttribP2uiv
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexAttribP2uiv :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> Ptr GLuint -> m ()
    glVertexAttribP2uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()
    dyn928 FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP2uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP2uiv #-}
    ptr_glVertexAttribP2uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP2uiv :: FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP2uiv = IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexAttribP3ui :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> GLuint -> m ()
    glVertexAttribP3ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> GLuint -> IO ()
    dyn927 FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP3ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP3ui #-}
    ptr_glVertexAttribP3ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP3ui :: FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP3ui = IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribP3ui"

    -- glVertexAttribP3uiv ---------------------------------------------------------

    glVertexAttribP3uiv
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexAttribP3uiv :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> Ptr GLuint -> m ()
    glVertexAttribP3uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()
    dyn928 FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP3uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP3uiv #-}
    ptr_glVertexAttribP3uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP3uiv :: FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP3uiv = IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexAttribP4ui :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> GLuint -> m ()
    glVertexAttribP4ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> GLuint -> IO ()
    dyn927 FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP4ui GLuint
    v1 GLuint
    v2 GLboolean
    v3 GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP4ui #-}
    ptr_glVertexAttribP4ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP4ui :: FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    ptr_glVertexAttribP4ui = IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLboolean -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribP4ui"

    -- glVertexAttribP4uiv ---------------------------------------------------------

    glVertexAttribP4uiv
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#VertexAttribPointerType).
      -> GLboolean -- ^ @normalized@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexAttribP4uiv :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLboolean -> Ptr GLuint -> m ()
    glVertexAttribP4uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    -> GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()
    dyn928 FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP4uiv GLuint
    v1 GLuint
    v2 GLboolean
    v3 Ptr GLuint
    v4

    {-# NOINLINE ptr_glVertexAttribP4uiv #-}
    ptr_glVertexAttribP4uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP4uiv :: FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    ptr_glVertexAttribP4uiv = IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLboolean -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribP4uiv"

    -- glVertexAttribParameteriAMD -------------------------------------------------

    glVertexAttribParameteriAMD
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @pname@.
      -> GLint -- ^ @param@.
      -> m ()
    glVertexAttribParameteriAMD :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLint -> m ()
    glVertexAttribParameteriAMD GLuint
    v1 GLuint
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLint -> IO ())
    -> GLuint -> GLuint -> GLint -> IO ()
    dyn491 FunPtr (GLuint -> GLuint -> GLint -> IO ())
    ptr_glVertexAttribParameteriAMD GLuint
    v1 GLuint
    v2 GLint
    v3

    {-# NOINLINE ptr_glVertexAttribParameteriAMD #-}
    ptr_glVertexAttribParameteriAMD :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
    ptr_glVertexAttribParameteriAMD :: FunPtr (GLuint -> GLuint -> GLint -> IO ())
    ptr_glVertexAttribParameteriAMD = IO (FunPtr (GLuint -> GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLuint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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](Graphics-GL-Groups.html#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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> m ()
    glVertexAttribPointer GLuint
    v1 GLint
    v2 GLuint
    v3 GLboolean
    v4 GLint
    v5 Ptr a
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    -> GLuint
    -> GLint
    -> GLuint
    -> GLboolean
    -> GLint
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    -> GLuint
    -> GLint
    -> GLuint
    -> GLboolean
    -> GLint
    -> Ptr a
    -> IO ()
    dyn929 FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointer GLuint
    v1 GLint
    v2 GLuint
    v3 GLboolean
    v4 GLint
    v5 Ptr a
    v6

    {-# NOINLINE ptr_glVertexAttribPointer #-}
    ptr_glVertexAttribPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexAttribPointer :: forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointer = IO
      (FunPtr
         (GLuint
          -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint
           -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
     -> FunPtr
          (GLuint
           -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr
            (GLuint
             -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint
             -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribPointer"

    -- glVertexAttribPointerARB ----------------------------------------------------

    -- | This command is an alias for 'glVertexAttribPointer'.
    glVertexAttribPointerARB
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [VertexAttribPointerType](Graphics-GL-Groups.html#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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> m ()
    glVertexAttribPointerARB GLuint
    v1 GLint
    v2 GLuint
    v3 GLboolean
    v4 GLint
    v5 Ptr a
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    -> GLuint
    -> GLint
    -> GLuint
    -> GLboolean
    -> GLint
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    -> GLuint
    -> GLint
    -> GLuint
    -> GLboolean
    -> GLint
    -> Ptr a
    -> IO ()
    dyn929 FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointerARB GLuint
    v1 GLint
    v2 GLuint
    v3 GLboolean
    v4 GLint
    v5 Ptr a
    v6

    {-# NOINLINE ptr_glVertexAttribPointerARB #-}
    ptr_glVertexAttribPointerARB :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexAttribPointerARB :: forall a.
    FunPtr
      (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointerARB = IO
      (FunPtr
         (GLuint
          -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint
           -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
     -> FunPtr
          (GLuint
           -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr
            (GLuint
             -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint
             -> GLint -> GLuint -> GLboolean -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribPointerARB"

    -- glVertexAttribPointerNV -----------------------------------------------------

    glVertexAttribPointerNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLint -- ^ @fsize@.
      -> GLenum -- ^ @type@ of type [VertexAttribEnumNV](Graphics-GL-Groups.html#VertexAttribEnumNV).
      -> GLsizei -- ^ @stride@.
      -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(fsize,type,stride)@ elements of type @a@.
      -> m ()
    glVertexAttribPointerNV :: forall (m :: * -> *) a.
    MonadIO m =>
    GLuint -> GLint -> GLuint -> GLint -> Ptr a -> m ()
    glVertexAttribPointerNV GLuint
    v1 GLint
    v2 GLuint
    v3 GLint
    v4 Ptr a
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    dyn916 FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointerNV GLuint
    v1 GLint
    v2 GLuint
    v3 GLint
    v4 Ptr a
    v5

    {-# NOINLINE ptr_glVertexAttribPointerNV #-}
    ptr_glVertexAttribPointerNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexAttribPointerNV :: forall a.
    FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexAttribPointerNV = IO (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribPointerNV"

    -- glVertexAttribs1dvNV --------------------------------------------------------

    glVertexAttribs1dvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLdouble -- ^ @v@ pointing to @count@ elements of type @GLdouble@.
      -> m ()
    glVertexAttribs1dvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLdouble -> m ()
    glVertexAttribs1dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    -> GLuint -> GLint -> Ptr GLdouble -> IO ()
    dyn227 FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs1dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3

    {-# NOINLINE ptr_glVertexAttribs1dvNV #-}
    ptr_glVertexAttribs1dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs1dvNV :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs1dvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs1dvNV"

    -- glVertexAttribs1fvNV --------------------------------------------------------

    glVertexAttribs1fvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLfloat -- ^ @v@ pointing to @count@ elements of type @GLfloat@.
      -> m ()
    glVertexAttribs1fvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glVertexAttribs1fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs1fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glVertexAttribs1fvNV #-}
    ptr_glVertexAttribs1fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs1fvNV :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs1fvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs1fvNV"

    -- glVertexAttribs1hvNV --------------------------------------------------------

    glVertexAttribs1hvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @n@.
      -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
      -> m ()
    glVertexAttribs1hvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLhalfNV -> m ()
    glVertexAttribs1hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    -> GLuint -> GLint -> Ptr GLhalfNV -> IO ()
    dyn930 FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs1hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3

    {-# NOINLINE ptr_glVertexAttribs1hvNV #-}
    ptr_glVertexAttribs1hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs1hvNV :: FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs1hvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs1hvNV"

    -- glVertexAttribs1svNV --------------------------------------------------------

    glVertexAttribs1svNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLshort -- ^ @v@ pointing to @count@ elements of type @GLshort@.
      -> m ()
    glVertexAttribs1svNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLshort -> m ()
    glVertexAttribs1svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    -> GLuint -> GLint -> Ptr GLshort -> IO ()
    dyn931 FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs1svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3

    {-# NOINLINE ptr_glVertexAttribs1svNV #-}
    ptr_glVertexAttribs1svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs1svNV :: FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs1svNV = IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs1svNV"

    -- glVertexAttribs2dvNV --------------------------------------------------------

    glVertexAttribs2dvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLdouble -- ^ @v@ pointing to @count*2@ elements of type @GLdouble@.
      -> m ()
    glVertexAttribs2dvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLdouble -> m ()
    glVertexAttribs2dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    -> GLuint -> GLint -> Ptr GLdouble -> IO ()
    dyn227 FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs2dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3

    {-# NOINLINE ptr_glVertexAttribs2dvNV #-}
    ptr_glVertexAttribs2dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs2dvNV :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs2dvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs2dvNV"

    -- glVertexAttribs2fvNV --------------------------------------------------------

    glVertexAttribs2fvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLfloat -- ^ @v@ pointing to @count*2@ elements of type @GLfloat@.
      -> m ()
    glVertexAttribs2fvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glVertexAttribs2fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs2fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glVertexAttribs2fvNV #-}
    ptr_glVertexAttribs2fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs2fvNV :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs2fvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs2fvNV"

    -- glVertexAttribs2hvNV --------------------------------------------------------

    glVertexAttribs2hvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @n@.
      -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
      -> m ()
    glVertexAttribs2hvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLhalfNV -> m ()
    glVertexAttribs2hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    -> GLuint -> GLint -> Ptr GLhalfNV -> IO ()
    dyn930 FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs2hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3

    {-# NOINLINE ptr_glVertexAttribs2hvNV #-}
    ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs2hvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs2hvNV"

    -- glVertexAttribs2svNV --------------------------------------------------------

    glVertexAttribs2svNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
      -> m ()
    glVertexAttribs2svNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLshort -> m ()
    glVertexAttribs2svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    -> GLuint -> GLint -> Ptr GLshort -> IO ()
    dyn931 FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs2svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3

    {-# NOINLINE ptr_glVertexAttribs2svNV #-}
    ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs2svNV = IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs2svNV"

    -- glVertexAttribs3dvNV --------------------------------------------------------

    glVertexAttribs3dvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
      -> m ()
    glVertexAttribs3dvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLdouble -> m ()
    glVertexAttribs3dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    -> GLuint -> GLint -> Ptr GLdouble -> IO ()
    dyn227 FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs3dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3

    {-# NOINLINE ptr_glVertexAttribs3dvNV #-}
    ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs3dvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs3dvNV"

    -- glVertexAttribs3fvNV --------------------------------------------------------

    glVertexAttribs3fvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
      -> m ()
    glVertexAttribs3fvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glVertexAttribs3fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs3fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glVertexAttribs3fvNV #-}
    ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs3fvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs3fvNV"

    -- glVertexAttribs3hvNV --------------------------------------------------------

    glVertexAttribs3hvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @n@.
      -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
      -> m ()
    glVertexAttribs3hvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLhalfNV -> m ()
    glVertexAttribs3hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    -> GLuint -> GLint -> Ptr GLhalfNV -> IO ()
    dyn930 FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs3hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3

    {-# NOINLINE ptr_glVertexAttribs3hvNV #-}
    ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs3hvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs3hvNV"

    -- glVertexAttribs3svNV --------------------------------------------------------

    glVertexAttribs3svNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
      -> m ()
    glVertexAttribs3svNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLshort -> m ()
    glVertexAttribs3svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    -> GLuint -> GLint -> Ptr GLshort -> IO ()
    dyn931 FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs3svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3

    {-# NOINLINE ptr_glVertexAttribs3svNV #-}
    ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs3svNV = IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs3svNV"

    -- glVertexAttribs4dvNV --------------------------------------------------------

    glVertexAttribs4dvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
      -> m ()
    glVertexAttribs4dvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLdouble -> m ()
    glVertexAttribs4dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    -> GLuint -> GLint -> Ptr GLdouble -> IO ()
    dyn227 FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs4dvNV GLuint
    v1 GLint
    v2 Ptr GLdouble
    v3

    {-# NOINLINE ptr_glVertexAttribs4dvNV #-}
    ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    ptr_glVertexAttribs4dvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs4dvNV"

    -- glVertexAttribs4fvNV --------------------------------------------------------

    glVertexAttribs4fvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
      -> m ()
    glVertexAttribs4fvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glVertexAttribs4fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs4fvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glVertexAttribs4fvNV #-}
    ptr_glVertexAttribs4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs4fvNV :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glVertexAttribs4fvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs4fvNV"

    -- glVertexAttribs4hvNV --------------------------------------------------------

    glVertexAttribs4hvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @n@.
      -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
      -> m ()
    glVertexAttribs4hvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLhalfNV -> m ()
    glVertexAttribs4hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    -> GLuint -> GLint -> Ptr GLhalfNV -> IO ()
    dyn930 FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs4hvNV GLuint
    v1 GLint
    v2 Ptr GLhalfNV
    v3

    {-# NOINLINE ptr_glVertexAttribs4hvNV #-}
    ptr_glVertexAttribs4hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs4hvNV :: FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    ptr_glVertexAttribs4hvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs4hvNV"

    -- glVertexAttribs4svNV --------------------------------------------------------

    glVertexAttribs4svNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLshort -- ^ @v@ pointing to @count*4@ elements of type @GLshort@.
      -> m ()
    glVertexAttribs4svNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLshort -> m ()
    glVertexAttribs4svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    -> GLuint -> GLint -> Ptr GLshort -> IO ()
    dyn931 FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs4svNV GLuint
    v1 GLint
    v2 Ptr GLshort
    v3

    {-# NOINLINE ptr_glVertexAttribs4svNV #-}
    ptr_glVertexAttribs4svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs4svNV :: FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    ptr_glVertexAttribs4svNV = IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexAttribs4svNV"

    -- glVertexAttribs4ubvNV -------------------------------------------------------

    glVertexAttribs4ubvNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLsizei -- ^ @count@.
      -> Ptr GLubyte -- ^ @v@ pointing to @count*4@ elements of type @ColorUB@.
      -> m ()
    glVertexAttribs4ubvNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLboolean -> m ()
    glVertexAttribs4ubvNV GLuint
    v1 GLint
    v2 Ptr GLboolean
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ())
    -> GLuint -> GLint -> Ptr GLboolean -> IO ()
    dyn932 FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ())
    ptr_glVertexAttribs4ubvNV GLuint
    v1 GLint
    v2 Ptr GLboolean
    v3

    {-# NOINLINE ptr_glVertexAttribs4ubvNV #-}
    ptr_glVertexAttribs4ubvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
    ptr_glVertexAttribs4ubvNV :: FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ())
    ptr_glVertexAttribs4ubvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLboolean -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *). MonadIO m => GLuint -> GLuint -> m ()
    glVertexBindingDivisor GLuint
    v1 GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> IO ()) -> GLuint -> GLuint -> IO ()
    dyn4 FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexBindingDivisor GLuint
    v1 GLuint
    v2

    {-# NOINLINE ptr_glVertexBindingDivisor #-}
    ptr_glVertexBindingDivisor :: FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexBindingDivisor :: FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexBindingDivisor = IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexBindingDivisor"

    -- glVertexBlendARB ------------------------------------------------------------

    glVertexBlendARB
      :: MonadIO m
      => GLint -- ^ @count@.
      -> m ()
    glVertexBlendARB :: forall (m :: * -> *). MonadIO m => GLint -> m ()
    glVertexBlendARB GLint
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> IO ()) -> GLint -> IO ()
    dyn13 FunPtr (GLint -> IO ())
    ptr_glVertexBlendARB GLint
    v1

    {-# NOINLINE ptr_glVertexBlendARB #-}
    ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
    ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
    ptr_glVertexBlendARB = IO (FunPtr (GLint -> IO ())) -> FunPtr (GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> IO ())) -> FunPtr (GLint -> IO ()))
    -> IO (FunPtr (GLint -> IO ())) -> FunPtr (GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexBlendARB"

    -- glVertexBlendEnvfATI --------------------------------------------------------

    glVertexBlendEnvfATI
      :: MonadIO m
      => GLenum -- ^ @pname@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLfloat -- ^ @param@.
      -> m ()
    glVertexBlendEnvfATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLfloat -> m ()
    glVertexBlendEnvfATI GLuint
    v1 GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLfloat -> IO ()) -> GLuint -> GLfloat -> IO ()
    dyn0 FunPtr (GLuint -> GLfloat -> IO ())
    ptr_glVertexBlendEnvfATI GLuint
    v1 GLfloat
    v2

    {-# NOINLINE ptr_glVertexBlendEnvfATI #-}
    ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
    ptr_glVertexBlendEnvfATI :: FunPtr (GLuint -> GLfloat -> IO ())
    ptr_glVertexBlendEnvfATI = IO (FunPtr (GLuint -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexBlendEnvfATI"

    -- glVertexBlendEnviATI --------------------------------------------------------

    glVertexBlendEnviATI
      :: MonadIO m
      => GLenum -- ^ @pname@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLint -- ^ @param@.
      -> m ()
    glVertexBlendEnviATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLint -> m ()
    glVertexBlendEnviATI GLuint
    v1 GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> IO ()) -> GLuint -> GLint -> IO ()
    dyn58 FunPtr (GLuint -> GLint -> IO ())
    ptr_glVertexBlendEnviATI GLuint
    v1 GLint
    v2

    {-# NOINLINE ptr_glVertexBlendEnviATI #-}
    ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
    ptr_glVertexBlendEnviATI :: FunPtr (GLuint -> GLint -> IO ())
    ptr_glVertexBlendEnviATI = IO (FunPtr (GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexBlendEnviATI"

    -- glVertexFormatNV ------------------------------------------------------------

    glVertexFormatNV
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> GLsizei -- ^ @stride@.
      -> m ()
    glVertexFormatNV :: forall (m :: * -> *). MonadIO m => GLint -> GLuint -> GLint -> m ()
    glVertexFormatNV GLint
    v1 GLuint
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> GLint -> IO ())
    -> GLint -> GLuint -> GLint -> IO ()
    dyn126 FunPtr (GLint -> GLuint -> GLint -> IO ())
    ptr_glVertexFormatNV GLint
    v1 GLuint
    v2 GLint
    v3

    {-# NOINLINE ptr_glVertexFormatNV #-}
    ptr_glVertexFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
    ptr_glVertexFormatNV :: FunPtr (GLint -> GLuint -> GLint -> IO ())
    ptr_glVertexFormatNV = IO (FunPtr (GLint -> GLuint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLuint -> GLint -> IO ()))
     -> FunPtr (GLint -> GLuint -> GLint -> IO ()))
    -> IO (FunPtr (GLint -> GLuint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLuint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexFormatNV"

    -- glVertexP2ui ----------------------------------------------------------------

    glVertexP2ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexP2ui :: forall (m :: * -> *). MonadIO m => GLuint -> GLuint -> m ()
    glVertexP2ui GLuint
    v1 GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> IO ()) -> GLuint -> GLuint -> IO ()
    dyn19 FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP2ui GLuint
    v1 GLuint
    v2

    {-# NOINLINE ptr_glVertexP2ui #-}
    ptr_glVertexP2ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glVertexP2ui :: FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP2ui = IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexP2ui"

    -- glVertexP2uiv ---------------------------------------------------------------

    glVertexP2uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexP2uiv :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLuint -> m ()
    glVertexP2uiv GLuint
    v1 Ptr GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLuint -> IO ())
    -> GLuint -> Ptr GLuint -> IO ()
    dyn132 FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP2uiv GLuint
    v1 Ptr GLuint
    v2

    {-# NOINLINE ptr_glVertexP2uiv #-}
    ptr_glVertexP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glVertexP2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP2uiv = IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexP2uiv"

    -- glVertexP3ui ----------------------------------------------------------------

    glVertexP3ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexP3ui :: forall (m :: * -> *). MonadIO m => GLuint -> GLuint -> m ()
    glVertexP3ui GLuint
    v1 GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> IO ()) -> GLuint -> GLuint -> IO ()
    dyn19 FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP3ui GLuint
    v1 GLuint
    v2

    {-# NOINLINE ptr_glVertexP3ui #-}
    ptr_glVertexP3ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glVertexP3ui :: FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP3ui = IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexP3ui"

    -- glVertexP3uiv ---------------------------------------------------------------

    glVertexP3uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexP3uiv :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLuint -> m ()
    glVertexP3uiv GLuint
    v1 Ptr GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLuint -> IO ())
    -> GLuint -> Ptr GLuint -> IO ()
    dyn132 FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP3uiv GLuint
    v1 Ptr GLuint
    v2

    {-# NOINLINE ptr_glVertexP3uiv #-}
    ptr_glVertexP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glVertexP3uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP3uiv = IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexP3uiv"

    -- glVertexP4ui ----------------------------------------------------------------

    glVertexP4ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> GLuint -- ^ @value@.
      -> m ()
    glVertexP4ui :: forall (m :: * -> *). MonadIO m => GLuint -> GLuint -> m ()
    glVertexP4ui GLuint
    v1 GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> IO ()) -> GLuint -> GLuint -> IO ()
    dyn19 FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP4ui GLuint
    v1 GLuint
    v2

    {-# NOINLINE ptr_glVertexP4ui #-}
    ptr_glVertexP4ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glVertexP4ui :: FunPtr (GLuint -> GLuint -> IO ())
    ptr_glVertexP4ui = IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexP4ui"

    -- glVertexP4uiv ---------------------------------------------------------------

    glVertexP4uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> Ptr GLuint -- ^ @value@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glVertexP4uiv :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLuint -> m ()
    glVertexP4uiv GLuint
    v1 Ptr GLuint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLuint -> IO ())
    -> GLuint -> Ptr GLuint -> IO ()
    dyn132 FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP4uiv GLuint
    v1 Ptr GLuint
    v2

    {-# NOINLINE ptr_glVertexP4uiv #-}
    ptr_glVertexP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glVertexP4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
    ptr_glVertexP4uiv = IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLuint -> GLint -> Ptr a -> m ()
    glVertexPointer GLint
    v1 GLuint
    v2 GLint
    v3 Ptr a
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    dyn133 FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexPointer GLint
    v1 GLuint
    v2 GLint
    v3 Ptr a
    v4

    {-# NOINLINE ptr_glVertexPointer #-}
    ptr_glVertexPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexPointer :: forall a. FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexPointer = IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLuint -> GLint -> GLint -> Ptr a -> m ()
    glVertexPointerEXT GLint
    v1 GLuint
    v2 GLint
    v3 GLint
    v4 Ptr a
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()
    dyn134 FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    ptr_glVertexPointerEXT GLint
    v1 GLuint
    v2 GLint
    v3 GLint
    v4 Ptr a
    v5

    {-# NOINLINE ptr_glVertexPointerEXT #-}
    ptr_glVertexPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexPointerEXT :: forall a.
    FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    ptr_glVertexPointerEXT = IO (FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLint -> GLuint -> GLint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> m ()
    glVertexPointerListIBM GLint
    v1 GLuint
    v2 GLint
    v3 Ptr (Ptr a)
    v4 GLint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
    dyn135 FunPtr (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glVertexPointerListIBM GLint
    v1 GLuint
    v2 GLint
    v3 Ptr (Ptr a)
    v4 GLint
    v5

    {-# NOINLINE ptr_glVertexPointerListIBM #-}
    ptr_glVertexPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glVertexPointerListIBM :: forall a.
    FunPtr (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glVertexPointerListIBM = IO
      (FunPtr
         (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> FunPtr
         (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
     -> FunPtr
          (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> IO
         (FunPtr
            (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> FunPtr
         (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLint -> GLuint -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLuint -> Ptr (Ptr a) -> m ()
    glVertexPointervINTEL GLint
    v1 GLuint
    v2 Ptr (Ptr a)
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    -> GLint -> GLuint -> Ptr (Ptr a) -> IO ()
    forall a.
    FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    -> GLint -> GLuint -> Ptr (Ptr a) -> IO ()
    dyn136 FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    forall a. FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    ptr_glVertexPointervINTEL GLint
    v1 GLuint
    v2 Ptr (Ptr a)
    v3

    {-# NOINLINE ptr_glVertexPointervINTEL #-}
    ptr_glVertexPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    ptr_glVertexPointervINTEL :: forall a. FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    ptr_glVertexPointervINTEL = IO (FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ()))
    -> FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ()))
     -> FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ()))
    -> IO (FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ()))
    -> FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLuint -> Ptr (Ptr a) -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexPointervINTEL"

    -- glVertexStream1dATI ---------------------------------------------------------

    glVertexStream1dATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLdouble -- ^ @x@.
      -> m ()
    glVertexStream1dATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLdouble -> m ()
    glVertexStream1dATI GLuint
    v1 GLdouble
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLdouble -> IO ()) -> GLuint -> GLdouble -> IO ()
    dyn569 FunPtr (GLuint -> GLdouble -> IO ())
    ptr_glVertexStream1dATI GLuint
    v1 GLdouble
    v2

    {-# NOINLINE ptr_glVertexStream1dATI #-}
    ptr_glVertexStream1dATI :: FunPtr (GLenum -> GLdouble -> IO ())
    ptr_glVertexStream1dATI :: FunPtr (GLuint -> GLdouble -> IO ())
    ptr_glVertexStream1dATI = IO (FunPtr (GLuint -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1dATI"

    -- glVertexStream1dvATI --------------------------------------------------------

    glVertexStream1dvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLdouble -- ^ @coords@ pointing to @1@ element of type @GLdouble@.
      -> m ()
    glVertexStream1dvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLdouble -> m ()
    glVertexStream1dvATI GLuint
    v1 Ptr GLdouble
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLdouble -> IO ())
    -> GLuint -> Ptr GLdouble -> IO ()
    dyn100 FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream1dvATI GLuint
    v1 Ptr GLdouble
    v2

    {-# NOINLINE ptr_glVertexStream1dvATI #-}
    ptr_glVertexStream1dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
    ptr_glVertexStream1dvATI :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream1dvATI = IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1dvATI"

    -- glVertexStream1fATI ---------------------------------------------------------

    glVertexStream1fATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLfloat -- ^ @x@.
      -> m ()
    glVertexStream1fATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLfloat -> m ()
    glVertexStream1fATI GLuint
    v1 GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLfloat -> IO ()) -> GLuint -> GLfloat -> IO ()
    dyn0 FunPtr (GLuint -> GLfloat -> IO ())
    ptr_glVertexStream1fATI GLuint
    v1 GLfloat
    v2

    {-# NOINLINE ptr_glVertexStream1fATI #-}
    ptr_glVertexStream1fATI :: FunPtr (GLenum -> GLfloat -> IO ())
    ptr_glVertexStream1fATI :: FunPtr (GLuint -> GLfloat -> IO ())
    ptr_glVertexStream1fATI = IO (FunPtr (GLuint -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1fATI"

    -- glVertexStream1fvATI --------------------------------------------------------

    glVertexStream1fvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLfloat -- ^ @coords@ pointing to @1@ element of type @GLfloat@.
      -> m ()
    glVertexStream1fvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glVertexStream1fvATI GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn101 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream1fvATI GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glVertexStream1fvATI #-}
    ptr_glVertexStream1fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
    ptr_glVertexStream1fvATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream1fvATI = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1fvATI"

    -- glVertexStream1iATI ---------------------------------------------------------

    glVertexStream1iATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLint -- ^ @x@.
      -> m ()
    glVertexStream1iATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLint -> m ()
    glVertexStream1iATI GLuint
    v1 GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> IO ()) -> GLuint -> GLint -> IO ()
    dyn58 FunPtr (GLuint -> GLint -> IO ())
    ptr_glVertexStream1iATI GLuint
    v1 GLint
    v2

    {-# NOINLINE ptr_glVertexStream1iATI #-}
    ptr_glVertexStream1iATI :: FunPtr (GLenum -> GLint -> IO ())
    ptr_glVertexStream1iATI :: FunPtr (GLuint -> GLint -> IO ())
    ptr_glVertexStream1iATI = IO (FunPtr (GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1iATI"

    -- glVertexStream1ivATI --------------------------------------------------------

    glVertexStream1ivATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLint -- ^ @coords@ pointing to @1@ element of type @GLint@.
      -> m ()
    glVertexStream1ivATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLint -> m ()
    glVertexStream1ivATI GLuint
    v1 Ptr GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLint -> IO ())
    -> GLuint -> Ptr GLint -> IO ()
    dyn143 FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream1ivATI GLuint
    v1 Ptr GLint
    v2

    {-# NOINLINE ptr_glVertexStream1ivATI #-}
    ptr_glVertexStream1ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
    ptr_glVertexStream1ivATI :: FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream1ivATI = IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1ivATI"

    -- glVertexStream1sATI ---------------------------------------------------------

    glVertexStream1sATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLshort -- ^ @x@.
      -> m ()
    glVertexStream1sATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLshort -> m ()
    glVertexStream1sATI GLuint
    v1 GLshort
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLshort -> IO ()) -> GLuint -> GLshort -> IO ()
    dyn572 FunPtr (GLuint -> GLshort -> IO ())
    ptr_glVertexStream1sATI GLuint
    v1 GLshort
    v2

    {-# NOINLINE ptr_glVertexStream1sATI #-}
    ptr_glVertexStream1sATI :: FunPtr (GLenum -> GLshort -> IO ())
    ptr_glVertexStream1sATI :: FunPtr (GLuint -> GLshort -> IO ())
    ptr_glVertexStream1sATI = IO (FunPtr (GLuint -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLshort -> IO ()))
     -> FunPtr (GLuint -> GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1sATI"

    -- glVertexStream1svATI --------------------------------------------------------

    glVertexStream1svATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLshort -- ^ @coords@ pointing to @1@ element of type @GLshort@.
      -> m ()
    glVertexStream1svATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLshort -> m ()
    glVertexStream1svATI GLuint
    v1 Ptr GLshort
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLshort -> IO ())
    -> GLuint -> Ptr GLshort -> IO ()
    dyn573 FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream1svATI GLuint
    v1 Ptr GLshort
    v2

    {-# NOINLINE ptr_glVertexStream1svATI #-}
    ptr_glVertexStream1svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
    ptr_glVertexStream1svATI :: FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream1svATI = IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream1svATI"

    -- glVertexStream2dATI ---------------------------------------------------------

    glVertexStream2dATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLdouble -- ^ @x@.
      -> GLdouble -- ^ @y@.
      -> m ()
    glVertexStream2dATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLdouble -> GLdouble -> m ()
    glVertexStream2dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
    -> GLuint -> GLdouble -> GLdouble -> IO ()
    dyn575 FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream2dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3

    {-# NOINLINE ptr_glVertexStream2dATI #-}
    ptr_glVertexStream2dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream2dATI :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream2dATI = IO (FunPtr (GLuint -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLdouble -> GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLdouble -> GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLdouble -> GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2dATI"

    -- glVertexStream2dvATI --------------------------------------------------------

    glVertexStream2dvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLdouble -- ^ @coords@ pointing to @2@ elements of type @GLdouble@.
      -> m ()
    glVertexStream2dvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLdouble -> m ()
    glVertexStream2dvATI GLuint
    v1 Ptr GLdouble
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLdouble -> IO ())
    -> GLuint -> Ptr GLdouble -> IO ()
    dyn100 FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream2dvATI GLuint
    v1 Ptr GLdouble
    v2

    {-# NOINLINE ptr_glVertexStream2dvATI #-}
    ptr_glVertexStream2dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
    ptr_glVertexStream2dvATI :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream2dvATI = IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2dvATI"

    -- glVertexStream2fATI ---------------------------------------------------------

    glVertexStream2fATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLfloat -- ^ @x@.
      -> GLfloat -- ^ @y@.
      -> m ()
    glVertexStream2fATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> m ()
    glVertexStream2fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> IO ()
    dyn576 FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream2fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glVertexStream2fATI #-}
    ptr_glVertexStream2fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream2fATI :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream2fATI = IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2fATI"

    -- glVertexStream2fvATI --------------------------------------------------------

    glVertexStream2fvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLfloat -- ^ @coords@ pointing to @2@ elements of type @GLfloat@.
      -> m ()
    glVertexStream2fvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glVertexStream2fvATI GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn101 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream2fvATI GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glVertexStream2fvATI #-}
    ptr_glVertexStream2fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
    ptr_glVertexStream2fvATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream2fvATI = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2fvATI"

    -- glVertexStream2iATI ---------------------------------------------------------

    glVertexStream2iATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLint -- ^ @x@.
      -> GLint -- ^ @y@.
      -> m ()
    glVertexStream2iATI :: forall (m :: * -> *). MonadIO m => GLuint -> GLint -> GLint -> m ()
    glVertexStream2iATI GLuint
    v1 GLint
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> GLint -> IO ())
    -> GLuint -> GLint -> GLint -> IO ()
    dyn275 FunPtr (GLuint -> GLint -> GLint -> IO ())
    ptr_glVertexStream2iATI GLuint
    v1 GLint
    v2 GLint
    v3

    {-# NOINLINE ptr_glVertexStream2iATI #-}
    ptr_glVertexStream2iATI :: FunPtr (GLenum -> GLint -> GLint -> IO ())
    ptr_glVertexStream2iATI :: FunPtr (GLuint -> GLint -> GLint -> IO ())
    ptr_glVertexStream2iATI = IO (FunPtr (GLuint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLint -> GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2iATI"

    -- glVertexStream2ivATI --------------------------------------------------------

    glVertexStream2ivATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLint -- ^ @coords@ pointing to @2@ elements of type @GLint@.
      -> m ()
    glVertexStream2ivATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLint -> m ()
    glVertexStream2ivATI GLuint
    v1 Ptr GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLint -> IO ())
    -> GLuint -> Ptr GLint -> IO ()
    dyn143 FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream2ivATI GLuint
    v1 Ptr GLint
    v2

    {-# NOINLINE ptr_glVertexStream2ivATI #-}
    ptr_glVertexStream2ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
    ptr_glVertexStream2ivATI :: FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream2ivATI = IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2ivATI"

    -- glVertexStream2sATI ---------------------------------------------------------

    glVertexStream2sATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLshort -- ^ @x@.
      -> GLshort -- ^ @y@.
      -> m ()
    glVertexStream2sATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLshort -> GLshort -> m ()
    glVertexStream2sATI GLuint
    v1 GLshort
    v2 GLshort
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLshort -> GLshort -> IO ())
    -> GLuint -> GLshort -> GLshort -> IO ()
    dyn578 FunPtr (GLuint -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream2sATI GLuint
    v1 GLshort
    v2 GLshort
    v3

    {-# NOINLINE ptr_glVertexStream2sATI #-}
    ptr_glVertexStream2sATI :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream2sATI :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream2sATI = IO (FunPtr (GLuint -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLshort -> GLshort -> IO ()))
     -> FunPtr (GLuint -> GLshort -> GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLshort -> GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2sATI"

    -- glVertexStream2svATI --------------------------------------------------------

    glVertexStream2svATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLshort -- ^ @coords@ pointing to @2@ elements of type @GLshort@.
      -> m ()
    glVertexStream2svATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLshort -> m ()
    glVertexStream2svATI GLuint
    v1 Ptr GLshort
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLshort -> IO ())
    -> GLuint -> Ptr GLshort -> IO ()
    dyn573 FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream2svATI GLuint
    v1 Ptr GLshort
    v2

    {-# NOINLINE ptr_glVertexStream2svATI #-}
    ptr_glVertexStream2svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
    ptr_glVertexStream2svATI :: FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream2svATI = IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream2svATI"

    -- glVertexStream3dATI ---------------------------------------------------------

    glVertexStream3dATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLdouble -- ^ @x@.
      -> GLdouble -- ^ @y@.
      -> GLdouble -- ^ @z@.
      -> m ()
    glVertexStream3dATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
    glVertexStream3dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3 GLdouble
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
    -> GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()
    dyn548 FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream3dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3 GLdouble
    v4

    {-# NOINLINE ptr_glVertexStream3dATI #-}
    ptr_glVertexStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream3dATI :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream3dATI = IO (FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3dATI"

    -- glVertexStream3dvATI --------------------------------------------------------

    glVertexStream3dvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
      -> m ()
    glVertexStream3dvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLdouble -> m ()
    glVertexStream3dvATI GLuint
    v1 Ptr GLdouble
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLdouble -> IO ())
    -> GLuint -> Ptr GLdouble -> IO ()
    dyn100 FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream3dvATI GLuint
    v1 Ptr GLdouble
    v2

    {-# NOINLINE ptr_glVertexStream3dvATI #-}
    ptr_glVertexStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
    ptr_glVertexStream3dvATI :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream3dvATI = IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3dvATI"

    -- glVertexStream3fATI ---------------------------------------------------------

    glVertexStream3fATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLfloat -- ^ @x@.
      -> GLfloat -- ^ @y@.
      -> GLfloat -- ^ @z@.
      -> m ()
    glVertexStream3fATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
    glVertexStream3fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()
    dyn549 FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream3fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4

    {-# NOINLINE ptr_glVertexStream3fATI #-}
    ptr_glVertexStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream3fATI :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream3fATI = IO (FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3fATI"

    -- glVertexStream3fvATI --------------------------------------------------------

    glVertexStream3fvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
      -> m ()
    glVertexStream3fvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glVertexStream3fvATI GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn101 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream3fvATI GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glVertexStream3fvATI #-}
    ptr_glVertexStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
    ptr_glVertexStream3fvATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream3fvATI = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3fvATI"

    -- glVertexStream3iATI ---------------------------------------------------------

    glVertexStream3iATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLint -- ^ @x@.
      -> GLint -- ^ @y@.
      -> GLint -- ^ @z@.
      -> m ()
    glVertexStream3iATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> GLint -> GLint -> m ()
    glVertexStream3iATI GLuint
    v1 GLint
    v2 GLint
    v3 GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
    -> GLuint -> GLint -> GLint -> GLint -> IO ()
    dyn582 FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream3iATI GLuint
    v1 GLint
    v2 GLint
    v3 GLint
    v4

    {-# NOINLINE ptr_glVertexStream3iATI #-}
    ptr_glVertexStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream3iATI :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream3iATI = IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3iATI"

    -- glVertexStream3ivATI --------------------------------------------------------

    glVertexStream3ivATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
      -> m ()
    glVertexStream3ivATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLint -> m ()
    glVertexStream3ivATI GLuint
    v1 Ptr GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLint -> IO ())
    -> GLuint -> Ptr GLint -> IO ()
    dyn143 FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream3ivATI GLuint
    v1 Ptr GLint
    v2

    {-# NOINLINE ptr_glVertexStream3ivATI #-}
    ptr_glVertexStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
    ptr_glVertexStream3ivATI :: FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream3ivATI = IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3ivATI"

    -- glVertexStream3sATI ---------------------------------------------------------

    glVertexStream3sATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLshort -- ^ @x@.
      -> GLshort -- ^ @y@.
      -> GLshort -- ^ @z@.
      -> m ()
    glVertexStream3sATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLshort -> GLshort -> GLshort -> m ()
    glVertexStream3sATI GLuint
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
    -> GLuint -> GLshort -> GLshort -> GLshort -> IO ()
    dyn583 FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream3sATI GLuint
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4

    {-# NOINLINE ptr_glVertexStream3sATI #-}
    ptr_glVertexStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream3sATI :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream3sATI = IO (FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ()))
     -> FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3sATI"

    -- glVertexStream3svATI --------------------------------------------------------

    glVertexStream3svATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
      -> m ()
    glVertexStream3svATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLshort -> m ()
    glVertexStream3svATI GLuint
    v1 Ptr GLshort
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLshort -> IO ())
    -> GLuint -> Ptr GLshort -> IO ()
    dyn573 FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream3svATI GLuint
    v1 Ptr GLshort
    v2

    {-# NOINLINE ptr_glVertexStream3svATI #-}
    ptr_glVertexStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
    ptr_glVertexStream3svATI :: FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream3svATI = IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream3svATI"

    -- glVertexStream4dATI ---------------------------------------------------------

    glVertexStream4dATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLdouble -- ^ @x@.
      -> GLdouble -- ^ @y@.
      -> GLdouble -- ^ @z@.
      -> GLdouble -- ^ @w@.
      -> m ()
    glVertexStream4dATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
    glVertexStream4dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3 GLdouble
    v4 GLdouble
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()
    dyn546 FunPtr
      (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream4dATI GLuint
    v1 GLdouble
    v2 GLdouble
    v3 GLdouble
    v4 GLdouble
    v5

    {-# NOINLINE ptr_glVertexStream4dATI #-}
    ptr_glVertexStream4dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream4dATI :: FunPtr
      (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    ptr_glVertexStream4dATI = IO
      (FunPtr
         (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr
         (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
     -> FunPtr
          (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    -> FunPtr
         (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4dATI"

    -- glVertexStream4dvATI --------------------------------------------------------

    glVertexStream4dvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLdouble -- ^ @coords@ pointing to @4@ elements of type @GLdouble@.
      -> m ()
    glVertexStream4dvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLdouble -> m ()
    glVertexStream4dvATI GLuint
    v1 Ptr GLdouble
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLdouble -> IO ())
    -> GLuint -> Ptr GLdouble -> IO ()
    dyn100 FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream4dvATI GLuint
    v1 Ptr GLdouble
    v2

    {-# NOINLINE ptr_glVertexStream4dvATI #-}
    ptr_glVertexStream4dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
    ptr_glVertexStream4dvATI :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
    ptr_glVertexStream4dvATI = IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4dvATI"

    -- glVertexStream4fATI ---------------------------------------------------------

    glVertexStream4fATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLfloat -- ^ @x@.
      -> GLfloat -- ^ @y@.
      -> GLfloat -- ^ @z@.
      -> GLfloat -- ^ @w@.
      -> m ()
    glVertexStream4fATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
    glVertexStream4fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
    dyn547 FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream4fATI GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5

    {-# NOINLINE ptr_glVertexStream4fATI #-}
    ptr_glVertexStream4fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream4fATI :: FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glVertexStream4fATI = IO
      (FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4fATI"

    -- glVertexStream4fvATI --------------------------------------------------------

    glVertexStream4fvATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLfloat -- ^ @coords@ pointing to @4@ elements of type @GLfloat@.
      -> m ()
    glVertexStream4fvATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glVertexStream4fvATI GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn101 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream4fvATI GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glVertexStream4fvATI #-}
    ptr_glVertexStream4fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
    ptr_glVertexStream4fvATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glVertexStream4fvATI = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4fvATI"

    -- glVertexStream4iATI ---------------------------------------------------------

    glVertexStream4iATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLint -- ^ @x@.
      -> GLint -- ^ @y@.
      -> GLint -- ^ @z@.
      -> GLint -- ^ @w@.
      -> m ()
    glVertexStream4iATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> GLint -> GLint -> GLint -> m ()
    glVertexStream4iATI GLuint
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
    -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()
    dyn276 FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream4iATI GLuint
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5

    {-# NOINLINE ptr_glVertexStream4iATI #-}
    ptr_glVertexStream4iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream4iATI :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glVertexStream4iATI = IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4iATI"

    -- glVertexStream4ivATI --------------------------------------------------------

    glVertexStream4ivATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLint -- ^ @coords@ pointing to @4@ elements of type @GLint@.
      -> m ()
    glVertexStream4ivATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLint -> m ()
    glVertexStream4ivATI GLuint
    v1 Ptr GLint
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLint -> IO ())
    -> GLuint -> Ptr GLint -> IO ()
    dyn143 FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream4ivATI GLuint
    v1 Ptr GLint
    v2

    {-# NOINLINE ptr_glVertexStream4ivATI #-}
    ptr_glVertexStream4ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
    ptr_glVertexStream4ivATI :: FunPtr (GLuint -> Ptr GLint -> IO ())
    ptr_glVertexStream4ivATI = IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
     -> FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4ivATI"

    -- glVertexStream4sATI ---------------------------------------------------------

    glVertexStream4sATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> GLshort -- ^ @x@.
      -> GLshort -- ^ @y@.
      -> GLshort -- ^ @z@.
      -> GLshort -- ^ @w@.
      -> m ()
    glVertexStream4sATI :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
    glVertexStream4sATI GLuint
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4 GLshort
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    -> GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
    dyn587 FunPtr
      (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream4sATI GLuint
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4 GLshort
    v5

    {-# NOINLINE ptr_glVertexStream4sATI #-}
    ptr_glVertexStream4sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream4sATI :: FunPtr
      (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glVertexStream4sATI = IO
      (FunPtr
         (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr
         (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
     -> FunPtr
          (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr
         (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4sATI"

    -- glVertexStream4svATI --------------------------------------------------------

    glVertexStream4svATI
      :: MonadIO m
      => GLenum -- ^ @stream@ of type [VertexStreamATI](Graphics-GL-Groups.html#VertexStreamATI).
      -> Ptr GLshort -- ^ @coords@ pointing to @4@ elements of type @GLshort@.
      -> m ()
    glVertexStream4svATI :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLshort -> m ()
    glVertexStream4svATI GLuint
    v1 Ptr GLshort
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLshort -> IO ())
    -> GLuint -> Ptr GLshort -> IO ()
    dyn573 FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream4svATI GLuint
    v1 Ptr GLshort
    v2

    {-# NOINLINE ptr_glVertexStream4svATI #-}
    ptr_glVertexStream4svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
    ptr_glVertexStream4svATI :: FunPtr (GLuint -> Ptr GLshort -> IO ())
    ptr_glVertexStream4svATI = IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
     -> FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    -> FunPtr (GLuint -> Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexStream4svATI"

    -- glVertexWeightPointerEXT ----------------------------------------------------

    glVertexWeightPointerEXT
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [VertexWeightPointerTypeEXT](Graphics-GL-Groups.html#VertexWeightPointerTypeEXT).
      -> GLsizei -- ^ @stride@.
      -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
      -> m ()
    glVertexWeightPointerEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLuint -> GLint -> Ptr a -> m ()
    glVertexWeightPointerEXT GLint
    v1 GLuint
    v2 GLint
    v3 Ptr a
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLuint -> GLint -> Ptr a -> IO ()
    dyn133 FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexWeightPointerEXT GLint
    v1 GLuint
    v2 GLint
    v3 Ptr a
    v4

    {-# NOINLINE ptr_glVertexWeightPointerEXT #-}
    ptr_glVertexWeightPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
    ptr_glVertexWeightPointerEXT :: forall a. FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    ptr_glVertexWeightPointerEXT = IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLuint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexWeightPointerEXT"

    -- glVertexWeightfEXT ----------------------------------------------------------

    -- | The vector equivalent of this command is 'glVertexWeightfvEXT'.
    glVertexWeightfEXT
      :: MonadIO m
      => GLfloat -- ^ @weight@.
      -> m ()
    glVertexWeightfEXT :: forall (m :: * -> *). MonadIO m => GLfloat -> m ()
    glVertexWeightfEXT GLfloat
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLfloat -> IO ()) -> GLfloat -> IO ()
    dyn85 FunPtr (GLfloat -> IO ())
    ptr_glVertexWeightfEXT GLfloat
    v1

    {-# NOINLINE ptr_glVertexWeightfEXT #-}
    ptr_glVertexWeightfEXT :: FunPtr (GLfloat -> IO ())
    ptr_glVertexWeightfEXT :: FunPtr (GLfloat -> IO ())
    ptr_glVertexWeightfEXT = IO (FunPtr (GLfloat -> IO ())) -> FunPtr (GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLfloat -> IO ())) -> FunPtr (GLfloat -> IO ()))
    -> IO (FunPtr (GLfloat -> IO ())) -> FunPtr (GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexWeightfEXT"

    -- glVertexWeightfvEXT ---------------------------------------------------------

    glVertexWeightfvEXT
      :: MonadIO m
      => Ptr GLfloat -- ^ @weight@ pointing to @1@ element of type @GLfloat@.
      -> m ()
    glVertexWeightfvEXT :: forall (m :: * -> *). MonadIO m => Ptr GLfloat -> m ()
    glVertexWeightfvEXT Ptr GLfloat
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> IO ()
    dyn44 FunPtr (Ptr GLfloat -> IO ())
    ptr_glVertexWeightfvEXT Ptr GLfloat
    v1

    {-# NOINLINE ptr_glVertexWeightfvEXT #-}
    ptr_glVertexWeightfvEXT :: FunPtr (Ptr GLfloat -> IO ())
    ptr_glVertexWeightfvEXT :: FunPtr (Ptr GLfloat -> IO ())
    ptr_glVertexWeightfvEXT = IO (FunPtr (Ptr GLfloat -> IO ())) -> FunPtr (Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLfloat -> IO ()))
     -> FunPtr (Ptr GLfloat -> IO ()))
    -> IO (FunPtr (Ptr GLfloat -> IO ()))
    -> FunPtr (Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexWeightfvEXT"

    -- glVertexWeighthNV -----------------------------------------------------------

    -- | The vector equivalent of this command is 'glVertexWeighthvNV'.
    glVertexWeighthNV
      :: MonadIO m
      => GLhalfNV -- ^ @weight@ of type @Half16NV@.
      -> m ()
    glVertexWeighthNV :: forall (m :: * -> *). MonadIO m => GLhalfNV -> m ()
    glVertexWeighthNV GLhalfNV
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLhalfNV -> IO ()) -> GLhalfNV -> IO ()
    dyn292 FunPtr (GLhalfNV -> IO ())
    ptr_glVertexWeighthNV GLhalfNV
    v1

    {-# NOINLINE ptr_glVertexWeighthNV #-}
    ptr_glVertexWeighthNV :: FunPtr (GLhalfNV -> IO ())
    ptr_glVertexWeighthNV :: FunPtr (GLhalfNV -> IO ())
    ptr_glVertexWeighthNV = IO (FunPtr (GLhalfNV -> IO ())) -> FunPtr (GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLhalfNV -> IO ())) -> FunPtr (GLhalfNV -> IO ()))
    -> IO (FunPtr (GLhalfNV -> IO ())) -> FunPtr (GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexWeighthNV"

    -- glVertexWeighthvNV ----------------------------------------------------------

    glVertexWeighthvNV
      :: MonadIO m
      => Ptr GLhalfNV -- ^ @weight@ pointing to @1@ element of type @Half16NV@.
      -> m ()
    glVertexWeighthvNV :: forall (m :: * -> *). MonadIO m => Ptr GLhalfNV -> m ()
    glVertexWeighthvNV Ptr GLhalfNV
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLhalfNV -> IO ()) -> Ptr GLhalfNV -> IO ()
    dyn106 FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glVertexWeighthvNV Ptr GLhalfNV
    v1

    {-# NOINLINE ptr_glVertexWeighthvNV #-}
    ptr_glVertexWeighthvNV :: FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glVertexWeighthvNV :: FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glVertexWeighthvNV = IO (FunPtr (Ptr GLhalfNV -> IO ()))
    -> FunPtr (Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLhalfNV -> IO ()))
     -> FunPtr (Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (Ptr GLhalfNV -> IO ()))
    -> FunPtr (Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glVertexWeighthvNV"

    -- glVideoCaptureNV ------------------------------------------------------------

    glVideoCaptureNV
      :: MonadIO m
      => GLuint -- ^ @video_capture_slot@.
      -> Ptr GLuint -- ^ @sequence_num@.
      -> Ptr GLuint64EXT -- ^ @capture_time@.
      -> m GLenum
    glVideoCaptureNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> m GLuint
    glVideoCaptureNV GLuint
    v1 Ptr GLuint
    v2 Ptr GLuint64EXT
    v3 = IO GLuint -> m GLuint
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO GLuint -> m GLuint) -> IO GLuint -> m GLuint
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint)
    -> GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint
    dyn933 FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint)
    ptr_glVideoCaptureNV GLuint
    v1 Ptr GLuint
    v2 Ptr GLuint64EXT
    v3

    {-# NOINLINE ptr_glVideoCaptureNV #-}
    ptr_glVideoCaptureNV :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
    ptr_glVideoCaptureNV :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint)
    ptr_glVideoCaptureNV = IO (FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint))
    -> FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint)
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint))
     -> FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint))
    -> IO
         (FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint))
    -> FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint)
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLuint))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLuint -> Ptr GLdouble -> m ()
    glVideoCaptureStreamParameterdvNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLdouble
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ())
    -> GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()
    dyn465 FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ())
    ptr_glVideoCaptureStreamParameterdvNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLdouble
    v4

    {-# NOINLINE ptr_glVideoCaptureStreamParameterdvNV #-}
    ptr_glVideoCaptureStreamParameterdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
    ptr_glVideoCaptureStreamParameterdvNV :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ())
    ptr_glVideoCaptureStreamParameterdvNV = IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLuint -> Ptr GLfloat -> m ()
    glVideoCaptureStreamParameterfvNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLfloat
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()
    dyn466 FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
    ptr_glVideoCaptureStreamParameterfvNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLfloat
    v4

    {-# NOINLINE ptr_glVideoCaptureStreamParameterfvNV #-}
    ptr_glVideoCaptureStreamParameterfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glVideoCaptureStreamParameterfvNV :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
    ptr_glVideoCaptureStreamParameterfvNV = IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLuint -> Ptr GLint -> m ()
    glVideoCaptureStreamParameterivNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ())
    -> GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()
    dyn314 FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ())
    ptr_glVideoCaptureStreamParameterivNV GLuint
    v1 GLuint
    v2 GLuint
    v3 Ptr GLint
    v4

    {-# NOINLINE ptr_glVideoCaptureStreamParameterivNV #-}
    ptr_glVideoCaptureStreamParameterivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
    ptr_glVideoCaptureStreamParameterivNV :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ())
    ptr_glVideoCaptureStreamParameterivNV = IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()))
     -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLint -> GLint -> GLint -> GLint -> m ()
    glViewport GLint
    v1 GLint
    v2 GLint
    v3 GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    -> GLint -> GLint -> GLint -> GLint -> IO ()
    dyn738 FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glViewport GLint
    v1 GLint
    v2 GLint
    v3 GLint
    v4

    {-# NOINLINE ptr_glViewport #-}
    ptr_glViewport :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
    ptr_glViewport :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glViewport = IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glViewportArrayv GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayv GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glViewportArrayv #-}
    ptr_glViewportArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayv :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayv = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glViewportArrayvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvNV GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glViewportArrayvNV #-}
    ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvNV = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLfloat -> m ()
    glViewportArrayvOES GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    -> GLuint -> GLint -> Ptr GLfloat -> IO ()
    dyn226 FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvOES GLuint
    v1 GLint
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glViewportArrayvOES #-}
    ptr_glViewportArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvOES :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    ptr_glViewportArrayvOES = IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
    glViewportIndexedf GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
    dyn907 FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedf GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5

    {-# NOINLINE ptr_glViewportIndexedf #-}
    ptr_glViewportIndexedf :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedf :: FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedf = IO
      (FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glViewportIndexedf"

    -- glViewportIndexedfNV --------------------------------------------------------

    -- | This command is an alias for 'glViewportIndexedf'.
    glViewportIndexedfNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLfloat -- ^ @x@.
      -> GLfloat -- ^ @y@.
      -> GLfloat -- ^ @w@.
      -> GLfloat -- ^ @h@.
      -> m ()
    glViewportIndexedfNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
    glViewportIndexedfNV GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
    dyn907 FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfNV GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5

    {-# NOINLINE ptr_glViewportIndexedfNV #-}
    ptr_glViewportIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfNV :: FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfNV = IO
      (FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glViewportIndexedfNV"

    -- glViewportIndexedfOES -------------------------------------------------------

    -- | This command is an alias for 'glViewportIndexedf'.
    glViewportIndexedfOES
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLfloat -- ^ @x@.
      -> GLfloat -- ^ @y@.
      -> GLfloat -- ^ @w@.
      -> GLfloat -- ^ @h@.
      -> m ()
    glViewportIndexedfOES :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
    glViewportIndexedfOES GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()
    dyn907 FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfOES GLuint
    v1 GLfloat
    v2 GLfloat
    v3 GLfloat
    v4 GLfloat
    v5

    {-# NOINLINE ptr_glViewportIndexedfOES #-}
    ptr_glViewportIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfOES :: FunPtr
      (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportIndexedfOES = IO
      (FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr
          (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr
         (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glViewportIndexedfv GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn394 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfv GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glViewportIndexedfv #-}
    ptr_glViewportIndexedfv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfv = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glViewportIndexedfvNV GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn394 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvNV GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glViewportIndexedfvNV #-}
    ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvNV = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *). MonadIO m => GLuint -> Ptr GLfloat -> m ()
    glViewportIndexedfvOES GLuint
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> Ptr GLfloat -> IO ())
    -> GLuint -> Ptr GLfloat -> IO ()
    dyn394 FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvOES GLuint
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glViewportIndexedfvOES #-}
    ptr_glViewportIndexedfvOES :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvOES :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
    ptr_glViewportIndexedfvOES = IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLuint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glViewportIndexedfvOES"

    -- glViewportPositionWScaleNV --------------------------------------------------

    glViewportPositionWScaleNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLfloat -- ^ @xcoeff@.
      -> GLfloat -- ^ @ycoeff@.
      -> m ()
    glViewportPositionWScaleNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLfloat -> GLfloat -> m ()
    glViewportPositionWScaleNV GLuint
    v1 GLfloat
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    -> GLuint -> GLfloat -> GLfloat -> IO ()
    dyn229 FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportPositionWScaleNV GLuint
    v1 GLfloat
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glViewportPositionWScaleNV #-}
    ptr_glViewportPositionWScaleNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportPositionWScaleNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    ptr_glViewportPositionWScaleNV = IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
     -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    -> FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLuint -> GLfloat -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glViewportPositionWScaleNV"

    -- glViewportSwizzleNV ---------------------------------------------------------

    glViewportSwizzleNV
      :: MonadIO m
      => GLuint -- ^ @index@.
      -> GLenum -- ^ @swizzlex@.
      -> GLenum -- ^ @swizzley@.
      -> GLenum -- ^ @swizzlez@.
      -> GLenum -- ^ @swizzlew@.
      -> m ()
    glViewportSwizzleNV :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
    glViewportSwizzleNV GLuint
    v1 GLuint
    v2 GLuint
    v3 GLuint
    v4 GLuint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
    -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()
    dyn57 FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
    ptr_glViewportSwizzleNV GLuint
    v1 GLuint
    v2 GLuint
    v3 GLuint
    v4 GLuint
    v5

    {-# NOINLINE ptr_glViewportSwizzleNV #-}
    ptr_glViewportSwizzleNV :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    ptr_glViewportSwizzleNV :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
    ptr_glViewportSwizzleNV = IO
      (FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()))
     -> FunPtr
          (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()))
    -> IO
         (FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()))
    -> FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "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 :: forall (m :: * -> *).
    MonadIO m =>
    GLuint
    -> GLuint
    -> Ptr GLuint
    -> GLuint
    -> Ptr GLuint
    -> Ptr GLuint
    -> m ()
    glWaitSemaphoreEXT GLuint
    v1 GLuint
    v2 Ptr GLuint
    v3 GLuint
    v4 Ptr GLuint
    v5 Ptr GLuint
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLuint
       -> GLuint
       -> Ptr GLuint
       -> GLuint
       -> Ptr GLuint
       -> Ptr GLuint
       -> IO ())
    -> GLuint
    -> GLuint
    -> Ptr GLuint
    -> GLuint
    -> Ptr GLuint
    -> Ptr GLuint
    -> IO ()
    dyn749 FunPtr
      (GLuint
       -> GLuint
       -> Ptr GLuint
       -> GLuint
       -> Ptr GLuint
       -> Ptr GLuint
       -> IO ())
    ptr_glWaitSemaphoreEXT GLuint
    v1 GLuint
    v2 Ptr GLuint
    v3 GLuint
    v4 Ptr GLuint
    v5 Ptr GLuint
    v6

    {-# NOINLINE ptr_glWaitSemaphoreEXT #-}
    ptr_glWaitSemaphoreEXT :: FunPtr (GLuint -> GLuint -> Ptr GLuint -> GLuint -> Ptr GLuint -> Ptr GLenum -> IO ())
    ptr_glWaitSemaphoreEXT :: FunPtr
      (GLuint
       -> GLuint
       -> Ptr GLuint
       -> GLuint
       -> Ptr GLuint
       -> Ptr GLuint
       -> IO ())
    ptr_glWaitSemaphoreEXT = IO
      (FunPtr
         (GLuint
          -> GLuint
          -> Ptr GLuint
          -> GLuint
          -> Ptr GLuint
          -> Ptr GLuint
          -> IO ()))
    -> FunPtr
         (GLuint
          -> GLuint
          -> Ptr GLuint
          -> GLuint
          -> Ptr GLuint
          -> Ptr GLuint
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint
           -> GLuint
           -> Ptr GLuint
           -> GLuint
           -> Ptr GLuint
           -> Ptr GLuint
           -> IO ()))
     -> FunPtr
          (GLuint
           -> GLuint
           -> Ptr GLuint
           -> GLuint
           -> Ptr GLuint
           -> Ptr GLuint
           -> IO ()))
    -> IO
         (FunPtr
            (GLuint
             -> GLuint
             -> Ptr GLuint
             -> GLuint
             -> Ptr GLuint
             -> Ptr GLuint
             -> IO ()))
    -> FunPtr
         (GLuint
          -> GLuint
          -> Ptr GLuint
          -> GLuint
          -> Ptr GLuint
          -> Ptr GLuint
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint
             -> GLuint
             -> Ptr GLuint
             -> GLuint
             -> Ptr GLuint
             -> Ptr GLuint
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glWaitSemaphoreEXT"

    -- glWaitSemaphoreui64NVX ------------------------------------------------------

    glWaitSemaphoreui64NVX
      :: MonadIO m
      => GLuint -- ^ @waitGpu@.
      -> GLsizei -- ^ @fenceObjectCount@.
      -> Ptr GLuint -- ^ @semaphoreArray@ pointing to @fenceObjectCount@ elements of type @GLuint@.
      -> Ptr GLuint64 -- ^ @fenceValueArray@ pointing to @fenceObjectCount@ elements of type @GLuint64@.
      -> m ()
    glWaitSemaphoreui64NVX :: forall (m :: * -> *).
    MonadIO m =>
    GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> m ()
    glWaitSemaphoreui64NVX GLuint
    v1 GLint
    v2 Ptr GLuint
    v3 Ptr GLuint64EXT
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ())
    -> GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()
    dyn750 FunPtr (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ())
    ptr_glWaitSemaphoreui64NVX GLuint
    v1 GLint
    v2 Ptr GLuint
    v3 Ptr GLuint64EXT
    v4

    {-# NOINLINE ptr_glWaitSemaphoreui64NVX #-}
    ptr_glWaitSemaphoreui64NVX :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLuint64 -> IO ())
    ptr_glWaitSemaphoreui64NVX :: FunPtr (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ())
    ptr_glWaitSemaphoreui64NVX = IO
      (FunPtr
         (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()))
     -> FunPtr
          (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()))
    -> IO
         (FunPtr
            (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()))
    -> FunPtr
         (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLuint -> GLint -> Ptr GLuint -> Ptr GLuint64EXT -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glWaitSemaphoreui64NVX"