/**
 * OpenGL loader generated by gload.
 *
 * Versions:
 *   OpenGL 1.0
 *   OpenGL 1.1
 *   OpenGL 1.2
 *   OpenGL 1.3
 *   OpenGL 1.4
 *   OpenGL 1.5
 *   OpenGL 2.0
 *
 * Commands:
 *   glCullFace
 *   glFrontFace
 *   glHint
 *   glLineWidth
 *   glPointSize
 *   glPolygonMode
 *   glScissor
 *   glTexParameterf
 *   glTexParameterfv
 *   glTexParameteri
 *   glTexParameteriv
 *   glTexImage1D
 *   glTexImage2D
 *   glDrawBuffer
 *   glClear
 *   glClearColor
 *   glClearStencil
 *   glClearDepth
 *   glStencilMask
 *   glColorMask
 *   glDepthMask
 *   glDisable
 *   glEnable
 *   glFinish
 *   glFlush
 *   glBlendFunc
 *   glLogicOp
 *   glStencilFunc
 *   glStencilOp
 *   glDepthFunc
 *   glPixelStoref
 *   glPixelStorei
 *   glReadBuffer
 *   glReadPixels
 *   glGetBooleanv
 *   glGetDoublev
 *   glGetError
 *   glGetFloatv
 *   glGetIntegerv
 *   glGetString
 *   glGetTexImage
 *   glGetTexParameterfv
 *   glGetTexParameteriv
 *   glGetTexLevelParameterfv
 *   glGetTexLevelParameteriv
 *   glIsEnabled
 *   glDepthRange
 *   glViewport
 *   glNewList
 *   glEndList
 *   glCallList
 *   glCallLists
 *   glDeleteLists
 *   glGenLists
 *   glListBase
 *   glBegin
 *   glBitmap
 *   glColor3b
 *   glColor3bv
 *   glColor3d
 *   glColor3dv
 *   glColor3f
 *   glColor3fv
 *   glColor3i
 *   glColor3iv
 *   glColor3s
 *   glColor3sv
 *   glColor3ub
 *   glColor3ubv
 *   glColor3ui
 *   glColor3uiv
 *   glColor3us
 *   glColor3usv
 *   glColor4b
 *   glColor4bv
 *   glColor4d
 *   glColor4dv
 *   glColor4f
 *   glColor4fv
 *   glColor4i
 *   glColor4iv
 *   glColor4s
 *   glColor4sv
 *   glColor4ub
 *   glColor4ubv
 *   glColor4ui
 *   glColor4uiv
 *   glColor4us
 *   glColor4usv
 *   glEdgeFlag
 *   glEdgeFlagv
 *   glEnd
 *   glIndexd
 *   glIndexdv
 *   glIndexf
 *   glIndexfv
 *   glIndexi
 *   glIndexiv
 *   glIndexs
 *   glIndexsv
 *   glNormal3b
 *   glNormal3bv
 *   glNormal3d
 *   glNormal3dv
 *   glNormal3f
 *   glNormal3fv
 *   glNormal3i
 *   glNormal3iv
 *   glNormal3s
 *   glNormal3sv
 *   glRasterPos2d
 *   glRasterPos2dv
 *   glRasterPos2f
 *   glRasterPos2fv
 *   glRasterPos2i
 *   glRasterPos2iv
 *   glRasterPos2s
 *   glRasterPos2sv
 *   glRasterPos3d
 *   glRasterPos3dv
 *   glRasterPos3f
 *   glRasterPos3fv
 *   glRasterPos3i
 *   glRasterPos3iv
 *   glRasterPos3s
 *   glRasterPos3sv
 *   glRasterPos4d
 *   glRasterPos4dv
 *   glRasterPos4f
 *   glRasterPos4fv
 *   glRasterPos4i
 *   glRasterPos4iv
 *   glRasterPos4s
 *   glRasterPos4sv
 *   glRectd
 *   glRectdv
 *   glRectf
 *   glRectfv
 *   glRecti
 *   glRectiv
 *   glRects
 *   glRectsv
 *   glTexCoord1d
 *   glTexCoord1dv
 *   glTexCoord1f
 *   glTexCoord1fv
 *   glTexCoord1i
 *   glTexCoord1iv
 *   glTexCoord1s
 *   glTexCoord1sv
 *   glTexCoord2d
 *   glTexCoord2dv
 *   glTexCoord2f
 *   glTexCoord2fv
 *   glTexCoord2i
 *   glTexCoord2iv
 *   glTexCoord2s
 *   glTexCoord2sv
 *   glTexCoord3d
 *   glTexCoord3dv
 *   glTexCoord3f
 *   glTexCoord3fv
 *   glTexCoord3i
 *   glTexCoord3iv
 *   glTexCoord3s
 *   glTexCoord3sv
 *   glTexCoord4d
 *   glTexCoord4dv
 *   glTexCoord4f
 *   glTexCoord4fv
 *   glTexCoord4i
 *   glTexCoord4iv
 *   glTexCoord4s
 *   glTexCoord4sv
 *   glVertex2d
 *   glVertex2dv
 *   glVertex2f
 *   glVertex2fv
 *   glVertex2i
 *   glVertex2iv
 *   glVertex2s
 *   glVertex2sv
 *   glVertex3d
 *   glVertex3dv
 *   glVertex3f
 *   glVertex3fv
 *   glVertex3i
 *   glVertex3iv
 *   glVertex3s
 *   glVertex3sv
 *   glVertex4d
 *   glVertex4dv
 *   glVertex4f
 *   glVertex4fv
 *   glVertex4i
 *   glVertex4iv
 *   glVertex4s
 *   glVertex4sv
 *   glClipPlane
 *   glColorMaterial
 *   glFogf
 *   glFogfv
 *   glFogi
 *   glFogiv
 *   glLightf
 *   glLightfv
 *   glLighti
 *   glLightiv
 *   glLightModelf
 *   glLightModelfv
 *   glLightModeli
 *   glLightModeliv
 *   glLineStipple
 *   glMaterialf
 *   glMaterialfv
 *   glMateriali
 *   glMaterialiv
 *   glPolygonStipple
 *   glShadeModel
 *   glTexEnvf
 *   glTexEnvfv
 *   glTexEnvi
 *   glTexEnviv
 *   glTexGend
 *   glTexGendv
 *   glTexGenf
 *   glTexGenfv
 *   glTexGeni
 *   glTexGeniv
 *   glFeedbackBuffer
 *   glSelectBuffer
 *   glRenderMode
 *   glInitNames
 *   glLoadName
 *   glPassThrough
 *   glPopName
 *   glPushName
 *   glClearAccum
 *   glClearIndex
 *   glIndexMask
 *   glAccum
 *   glPopAttrib
 *   glPushAttrib
 *   glMap1d
 *   glMap1f
 *   glMap2d
 *   glMap2f
 *   glMapGrid1d
 *   glMapGrid1f
 *   glMapGrid2d
 *   glMapGrid2f
 *   glEvalCoord1d
 *   glEvalCoord1dv
 *   glEvalCoord1f
 *   glEvalCoord1fv
 *   glEvalCoord2d
 *   glEvalCoord2dv
 *   glEvalCoord2f
 *   glEvalCoord2fv
 *   glEvalMesh1
 *   glEvalPoint1
 *   glEvalMesh2
 *   glEvalPoint2
 *   glAlphaFunc
 *   glPixelZoom
 *   glPixelTransferf
 *   glPixelTransferi
 *   glPixelMapfv
 *   glPixelMapuiv
 *   glPixelMapusv
 *   glCopyPixels
 *   glDrawPixels
 *   glGetClipPlane
 *   glGetLightfv
 *   glGetLightiv
 *   glGetMapdv
 *   glGetMapfv
 *   glGetMapiv
 *   glGetMaterialfv
 *   glGetMaterialiv
 *   glGetPixelMapfv
 *   glGetPixelMapuiv
 *   glGetPixelMapusv
 *   glGetPolygonStipple
 *   glGetTexEnvfv
 *   glGetTexEnviv
 *   glGetTexGendv
 *   glGetTexGenfv
 *   glGetTexGeniv
 *   glIsList
 *   glFrustum
 *   glLoadIdentity
 *   glLoadMatrixf
 *   glLoadMatrixd
 *   glMatrixMode
 *   glMultMatrixf
 *   glMultMatrixd
 *   glOrtho
 *   glPopMatrix
 *   glPushMatrix
 *   glRotated
 *   glRotatef
 *   glScaled
 *   glScalef
 *   glTranslated
 *   glTranslatef
 *   glDrawArrays
 *   glDrawElements
 *   glGetPointerv
 *   glPolygonOffset
 *   glCopyTexImage1D
 *   glCopyTexImage2D
 *   glCopyTexSubImage1D
 *   glCopyTexSubImage2D
 *   glTexSubImage1D
 *   glTexSubImage2D
 *   glBindTexture
 *   glDeleteTextures
 *   glGenTextures
 *   glIsTexture
 *   glArrayElement
 *   glColorPointer
 *   glDisableClientState
 *   glEdgeFlagPointer
 *   glEnableClientState
 *   glIndexPointer
 *   glInterleavedArrays
 *   glNormalPointer
 *   glTexCoordPointer
 *   glVertexPointer
 *   glAreTexturesResident
 *   glPrioritizeTextures
 *   glIndexub
 *   glIndexubv
 *   glPopClientAttrib
 *   glPushClientAttrib
 *   glDrawRangeElements
 *   glTexImage3D
 *   glTexSubImage3D
 *   glCopyTexSubImage3D
 *   glActiveTexture
 *   glSampleCoverage
 *   glCompressedTexImage3D
 *   glCompressedTexImage2D
 *   glCompressedTexImage1D
 *   glCompressedTexSubImage3D
 *   glCompressedTexSubImage2D
 *   glCompressedTexSubImage1D
 *   glGetCompressedTexImage
 *   glClientActiveTexture
 *   glMultiTexCoord1d
 *   glMultiTexCoord1dv
 *   glMultiTexCoord1f
 *   glMultiTexCoord1fv
 *   glMultiTexCoord1i
 *   glMultiTexCoord1iv
 *   glMultiTexCoord1s
 *   glMultiTexCoord1sv
 *   glMultiTexCoord2d
 *   glMultiTexCoord2dv
 *   glMultiTexCoord2f
 *   glMultiTexCoord2fv
 *   glMultiTexCoord2i
 *   glMultiTexCoord2iv
 *   glMultiTexCoord2s
 *   glMultiTexCoord2sv
 *   glMultiTexCoord3d
 *   glMultiTexCoord3dv
 *   glMultiTexCoord3f
 *   glMultiTexCoord3fv
 *   glMultiTexCoord3i
 *   glMultiTexCoord3iv
 *   glMultiTexCoord3s
 *   glMultiTexCoord3sv
 *   glMultiTexCoord4d
 *   glMultiTexCoord4dv
 *   glMultiTexCoord4f
 *   glMultiTexCoord4fv
 *   glMultiTexCoord4i
 *   glMultiTexCoord4iv
 *   glMultiTexCoord4s
 *   glMultiTexCoord4sv
 *   glLoadTransposeMatrixf
 *   glLoadTransposeMatrixd
 *   glMultTransposeMatrixf
 *   glMultTransposeMatrixd
 *   glBlendFuncSeparate
 *   glMultiDrawArrays
 *   glMultiDrawElements
 *   glPointParameterf
 *   glPointParameterfv
 *   glPointParameteri
 *   glPointParameteriv
 *   glFogCoordf
 *   glFogCoordfv
 *   glFogCoordd
 *   glFogCoorddv
 *   glFogCoordPointer
 *   glSecondaryColor3b
 *   glSecondaryColor3bv
 *   glSecondaryColor3d
 *   glSecondaryColor3dv
 *   glSecondaryColor3f
 *   glSecondaryColor3fv
 *   glSecondaryColor3i
 *   glSecondaryColor3iv
 *   glSecondaryColor3s
 *   glSecondaryColor3sv
 *   glSecondaryColor3ub
 *   glSecondaryColor3ubv
 *   glSecondaryColor3ui
 *   glSecondaryColor3uiv
 *   glSecondaryColor3us
 *   glSecondaryColor3usv
 *   glSecondaryColorPointer
 *   glWindowPos2d
 *   glWindowPos2dv
 *   glWindowPos2f
 *   glWindowPos2fv
 *   glWindowPos2i
 *   glWindowPos2iv
 *   glWindowPos2s
 *   glWindowPos2sv
 *   glWindowPos3d
 *   glWindowPos3dv
 *   glWindowPos3f
 *   glWindowPos3fv
 *   glWindowPos3i
 *   glWindowPos3iv
 *   glWindowPos3s
 *   glWindowPos3sv
 *   glGenQueries
 *   glDeleteQueries
 *   glIsQuery
 *   glBeginQuery
 *   glEndQuery
 *   glGetQueryiv
 *   glGetQueryObjectiv
 *   glGetQueryObjectuiv
 *   glBindBuffer
 *   glDeleteBuffers
 *   glGenBuffers
 *   glIsBuffer
 *   glBufferData
 *   glBufferSubData
 *   glGetBufferSubData
 *   glMapBuffer
 *   glUnmapBuffer
 *   glGetBufferParameteriv
 *   glGetBufferPointerv
 *   glBlendEquationSeparate
 *   glDrawBuffers
 *   glStencilOpSeparate
 *   glStencilFuncSeparate
 *   glStencilMaskSeparate
 *   glAttachShader
 *   glBindAttribLocation
 *   glCompileShader
 *   glCreateProgram
 *   glCreateShader
 *   glDeleteProgram
 *   glDeleteShader
 *   glDetachShader
 *   glDisableVertexAttribArray
 *   glEnableVertexAttribArray
 *   glGetActiveAttrib
 *   glGetActiveUniform
 *   glGetAttachedShaders
 *   glGetAttribLocation
 *   glGetProgramiv
 *   glGetProgramInfoLog
 *   glGetShaderiv
 *   glGetShaderInfoLog
 *   glGetShaderSource
 *   glGetUniformLocation
 *   glGetUniformfv
 *   glGetUniformiv
 *   glGetVertexAttribdv
 *   glGetVertexAttribfv
 *   glGetVertexAttribiv
 *   glGetVertexAttribPointerv
 *   glIsProgram
 *   glIsShader
 *   glLinkProgram
 *   glShaderSource
 *   glUseProgram
 *   glUniform1f
 *   glUniform2f
 *   glUniform3f
 *   glUniform4f
 *   glUniform1i
 *   glUniform2i
 *   glUniform3i
 *   glUniform4i
 *   glUniform1fv
 *   glUniform2fv
 *   glUniform3fv
 *   glUniform4fv
 *   glUniform1iv
 *   glUniform2iv
 *   glUniform3iv
 *   glUniform4iv
 *   glUniformMatrix2fv
 *   glUniformMatrix3fv
 *   glUniformMatrix4fv
 *   glValidateProgram
 *   glVertexAttrib1d
 *   glVertexAttrib1dv
 *   glVertexAttrib1f
 *   glVertexAttrib1fv
 *   glVertexAttrib1s
 *   glVertexAttrib1sv
 *   glVertexAttrib2d
 *   glVertexAttrib2dv
 *   glVertexAttrib2f
 *   glVertexAttrib2fv
 *   glVertexAttrib2s
 *   glVertexAttrib2sv
 *   glVertexAttrib3d
 *   glVertexAttrib3dv
 *   glVertexAttrib3f
 *   glVertexAttrib3fv
 *   glVertexAttrib3s
 *   glVertexAttrib3sv
 *   glVertexAttrib4Nbv
 *   glVertexAttrib4Niv
 *   glVertexAttrib4Nsv
 *   glVertexAttrib4Nub
 *   glVertexAttrib4Nubv
 *   glVertexAttrib4Nuiv
 *   glVertexAttrib4Nusv
 *   glVertexAttrib4bv
 *   glVertexAttrib4d
 *   glVertexAttrib4dv
 *   glVertexAttrib4f
 *   glVertexAttrib4fv
 *   glVertexAttrib4iv
 *   glVertexAttrib4s
 *   glVertexAttrib4sv
 *   glVertexAttrib4ubv
 *   glVertexAttrib4uiv
 *   glVertexAttrib4usv
 *   glVertexAttribPointer
 */

#ifndef __gload_h__
#define __gload_h__

#define __gl_h_

#ifdef _WIN32
#ifdef APIENTRY
#undef APIENTRY
#endif
#define APIENTRY __stdcall
#endif

#ifndef APIENTRY
#define APIENTRY
#endif

#ifndef APIENTRYP
#define APIENTRYP APIENTRY*
#endif

#ifndef GLAPIENTRY
#define GLAPIENTRY APIENTRY
#endif

#ifndef GLAPI
#define GLAPI extern
#endif

#ifdef __cplusplus
extern "C" {
#endif

typedef unsigned int GLenum;
typedef unsigned char GLboolean;
typedef unsigned int GLbitfield;
typedef int GLsizei;
typedef GLsizei* GLsizeiptr;
typedef float GLfloat;
typedef float GLclampf;
typedef double GLdouble;
typedef double GLclampd;
typedef void GLvoid;
typedef char GLchar;

typedef signed char GLbyte;
typedef signed short GLshort;
typedef int GLint;
typedef GLint* GLintptr;

typedef unsigned char GLubyte;
typedef unsigned short GLushort;
typedef unsigned int GLuint;

GLAPI void gload_init(void);
/***** OpenGL 1.0 *****/
#define GL_VERSION_1_0
#define GL_DEPTH_BUFFER_BIT 0x00000100
#define GL_STENCIL_BUFFER_BIT 0x00000400
#define GL_COLOR_BUFFER_BIT 0x00004000
#define GL_FALSE 0
#define GL_TRUE 1
#define GL_POINTS 0x0000
#define GL_LINES 0x0001
#define GL_LINE_LOOP 0x0002
#define GL_LINE_STRIP 0x0003
#define GL_TRIANGLES 0x0004
#define GL_TRIANGLE_STRIP 0x0005
#define GL_TRIANGLE_FAN 0x0006
#define GL_QUADS 0x0007
#define GL_NEVER 0x0200
#define GL_LESS 0x0201
#define GL_EQUAL 0x0202
#define GL_LEQUAL 0x0203
#define GL_GREATER 0x0204
#define GL_NOTEQUAL 0x0205
#define GL_GEQUAL 0x0206
#define GL_ALWAYS 0x0207
#define GL_ZERO 0
#define GL_ONE 1
#define GL_SRC_COLOR 0x0300
#define GL_ONE_MINUS_SRC_COLOR 0x0301
#define GL_SRC_ALPHA 0x0302
#define GL_ONE_MINUS_SRC_ALPHA 0x0303
#define GL_DST_ALPHA 0x0304
#define GL_ONE_MINUS_DST_ALPHA 0x0305
#define GL_DST_COLOR 0x0306
#define GL_ONE_MINUS_DST_COLOR 0x0307
#define GL_SRC_ALPHA_SATURATE 0x0308
#define GL_NONE 0
#define GL_FRONT_LEFT 0x0400
#define GL_FRONT_RIGHT 0x0401
#define GL_BACK_LEFT 0x0402
#define GL_BACK_RIGHT 0x0403
#define GL_FRONT 0x0404
#define GL_BACK 0x0405
#define GL_LEFT 0x0406
#define GL_RIGHT 0x0407
#define GL_FRONT_AND_BACK 0x0408
#define GL_NO_ERROR 0
#define GL_INVALID_ENUM 0x0500
#define GL_INVALID_VALUE 0x0501
#define GL_INVALID_OPERATION 0x0502
#define GL_OUT_OF_MEMORY 0x0505
#define GL_CW 0x0900
#define GL_CCW 0x0901
#define GL_POINT_SIZE 0x0B11
#define GL_POINT_SIZE_RANGE 0x0B12
#define GL_POINT_SIZE_GRANULARITY 0x0B13
#define GL_LINE_SMOOTH 0x0B20
#define GL_LINE_WIDTH 0x0B21
#define GL_LINE_WIDTH_RANGE 0x0B22
#define GL_LINE_WIDTH_GRANULARITY 0x0B23
#define GL_POLYGON_MODE 0x0B40
#define GL_POLYGON_SMOOTH 0x0B41
#define GL_CULL_FACE 0x0B44
#define GL_CULL_FACE_MODE 0x0B45
#define GL_FRONT_FACE 0x0B46
#define GL_DEPTH_RANGE 0x0B70
#define GL_DEPTH_TEST 0x0B71
#define GL_DEPTH_WRITEMASK 0x0B72
#define GL_DEPTH_CLEAR_VALUE 0x0B73
#define GL_DEPTH_FUNC 0x0B74
#define GL_STENCIL_TEST 0x0B90
#define GL_STENCIL_CLEAR_VALUE 0x0B91
#define GL_STENCIL_FUNC 0x0B92
#define GL_STENCIL_VALUE_MASK 0x0B93
#define GL_STENCIL_FAIL 0x0B94
#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
#define GL_STENCIL_REF 0x0B97
#define GL_STENCIL_WRITEMASK 0x0B98
#define GL_VIEWPORT 0x0BA2
#define GL_DITHER 0x0BD0
#define GL_BLEND_DST 0x0BE0
#define GL_BLEND_SRC 0x0BE1
#define GL_BLEND 0x0BE2
#define GL_LOGIC_OP_MODE 0x0BF0
#define GL_DRAW_BUFFER 0x0C01
#define GL_READ_BUFFER 0x0C02
#define GL_SCISSOR_BOX 0x0C10
#define GL_SCISSOR_TEST 0x0C11
#define GL_COLOR_CLEAR_VALUE 0x0C22
#define GL_COLOR_WRITEMASK 0x0C23
#define GL_DOUBLEBUFFER 0x0C32
#define GL_STEREO 0x0C33
#define GL_LINE_SMOOTH_HINT 0x0C52
#define GL_POLYGON_SMOOTH_HINT 0x0C53
#define GL_UNPACK_SWAP_BYTES 0x0CF0
#define GL_UNPACK_LSB_FIRST 0x0CF1
#define GL_UNPACK_ROW_LENGTH 0x0CF2
#define GL_UNPACK_SKIP_ROWS 0x0CF3
#define GL_UNPACK_SKIP_PIXELS 0x0CF4
#define GL_UNPACK_ALIGNMENT 0x0CF5
#define GL_PACK_SWAP_BYTES 0x0D00
#define GL_PACK_LSB_FIRST 0x0D01
#define GL_PACK_ROW_LENGTH 0x0D02
#define GL_PACK_SKIP_ROWS 0x0D03
#define GL_PACK_SKIP_PIXELS 0x0D04
#define GL_PACK_ALIGNMENT 0x0D05
#define GL_MAX_TEXTURE_SIZE 0x0D33
#define GL_MAX_VIEWPORT_DIMS 0x0D3A
#define GL_SUBPIXEL_BITS 0x0D50
#define GL_TEXTURE_1D 0x0DE0
#define GL_TEXTURE_2D 0x0DE1
#define GL_TEXTURE_WIDTH 0x1000
#define GL_TEXTURE_HEIGHT 0x1001
#define GL_TEXTURE_BORDER_COLOR 0x1004
#define GL_DONT_CARE 0x1100
#define GL_FASTEST 0x1101
#define GL_NICEST 0x1102
#define GL_BYTE 0x1400
#define GL_UNSIGNED_BYTE 0x1401
#define GL_SHORT 0x1402
#define GL_UNSIGNED_SHORT 0x1403
#define GL_INT 0x1404
#define GL_UNSIGNED_INT 0x1405
#define GL_FLOAT 0x1406
#define GL_STACK_OVERFLOW 0x0503
#define GL_STACK_UNDERFLOW 0x0504
#define GL_CLEAR 0x1500
#define GL_AND 0x1501
#define GL_AND_REVERSE 0x1502
#define GL_COPY 0x1503
#define GL_AND_INVERTED 0x1504
#define GL_NOOP 0x1505
#define GL_XOR 0x1506
#define GL_OR 0x1507
#define GL_NOR 0x1508
#define GL_EQUIV 0x1509
#define GL_INVERT 0x150A
#define GL_OR_REVERSE 0x150B
#define GL_COPY_INVERTED 0x150C
#define GL_OR_INVERTED 0x150D
#define GL_NAND 0x150E
#define GL_SET 0x150F
#define GL_TEXTURE 0x1702
#define GL_COLOR 0x1800
#define GL_DEPTH 0x1801
#define GL_STENCIL 0x1802
#define GL_STENCIL_INDEX 0x1901
#define GL_DEPTH_COMPONENT 0x1902
#define GL_RED 0x1903
#define GL_GREEN 0x1904
#define GL_BLUE 0x1905
#define GL_ALPHA 0x1906
#define GL_RGB 0x1907
#define GL_RGBA 0x1908
#define GL_POINT 0x1B00
#define GL_LINE 0x1B01
#define GL_FILL 0x1B02
#define GL_KEEP 0x1E00
#define GL_REPLACE 0x1E01
#define GL_INCR 0x1E02
#define GL_DECR 0x1E03
#define GL_VENDOR 0x1F00
#define GL_RENDERER 0x1F01
#define GL_VERSION 0x1F02
#define GL_EXTENSIONS 0x1F03
#define GL_NEAREST 0x2600
#define GL_LINEAR 0x2601
#define GL_NEAREST_MIPMAP_NEAREST 0x2700
#define GL_LINEAR_MIPMAP_NEAREST 0x2701
#define GL_NEAREST_MIPMAP_LINEAR 0x2702
#define GL_LINEAR_MIPMAP_LINEAR 0x2703
#define GL_TEXTURE_MAG_FILTER 0x2800
#define GL_TEXTURE_MIN_FILTER 0x2801
#define GL_TEXTURE_WRAP_S 0x2802
#define GL_TEXTURE_WRAP_T 0x2803
#define GL_REPEAT 0x2901
#define GL_CURRENT_BIT 0x00000001
#define GL_POINT_BIT 0x00000002
#define GL_LINE_BIT 0x00000004
#define GL_POLYGON_BIT 0x00000008
#define GL_POLYGON_STIPPLE_BIT 0x00000010
#define GL_PIXEL_MODE_BIT 0x00000020
#define GL_LIGHTING_BIT 0x00000040
#define GL_FOG_BIT 0x00000080
#define GL_ACCUM_BUFFER_BIT 0x00000200
#define GL_VIEWPORT_BIT 0x00000800
#define GL_TRANSFORM_BIT 0x00001000
#define GL_ENABLE_BIT 0x00002000
#define GL_HINT_BIT 0x00008000
#define GL_EVAL_BIT 0x00010000
#define GL_LIST_BIT 0x00020000
#define GL_TEXTURE_BIT 0x00040000
#define GL_SCISSOR_BIT 0x00080000
#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF
#define GL_QUAD_STRIP 0x0008
#define GL_POLYGON 0x0009
#define GL_ACCUM 0x0100
#define GL_LOAD 0x0101
#define GL_RETURN 0x0102
#define GL_MULT 0x0103
#define GL_ADD 0x0104
#define GL_AUX0 0x0409
#define GL_AUX1 0x040A
#define GL_AUX2 0x040B
#define GL_AUX3 0x040C
#define GL_2D 0x0600
#define GL_3D 0x0601
#define GL_3D_COLOR 0x0602
#define GL_3D_COLOR_TEXTURE 0x0603
#define GL_4D_COLOR_TEXTURE 0x0604
#define GL_PASS_THROUGH_TOKEN 0x0700
#define GL_POINT_TOKEN 0x0701
#define GL_LINE_TOKEN 0x0702
#define GL_POLYGON_TOKEN 0x0703
#define GL_BITMAP_TOKEN 0x0704
#define GL_DRAW_PIXEL_TOKEN 0x0705
#define GL_COPY_PIXEL_TOKEN 0x0706
#define GL_LINE_RESET_TOKEN 0x0707
#define GL_EXP 0x0800
#define GL_EXP2 0x0801
#define GL_COEFF 0x0A00
#define GL_ORDER 0x0A01
#define GL_DOMAIN 0x0A02
#define GL_PIXEL_MAP_I_TO_I 0x0C70
#define GL_PIXEL_MAP_S_TO_S 0x0C71
#define GL_PIXEL_MAP_I_TO_R 0x0C72
#define GL_PIXEL_MAP_I_TO_G 0x0C73
#define GL_PIXEL_MAP_I_TO_B 0x0C74
#define GL_PIXEL_MAP_I_TO_A 0x0C75
#define GL_PIXEL_MAP_R_TO_R 0x0C76
#define GL_PIXEL_MAP_G_TO_G 0x0C77
#define GL_PIXEL_MAP_B_TO_B 0x0C78
#define GL_PIXEL_MAP_A_TO_A 0x0C79
#define GL_CURRENT_COLOR 0x0B00
#define GL_CURRENT_INDEX 0x0B01
#define GL_CURRENT_NORMAL 0x0B02
#define GL_CURRENT_TEXTURE_COORDS 0x0B03
#define GL_CURRENT_RASTER_COLOR 0x0B04
#define GL_CURRENT_RASTER_INDEX 0x0B05
#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
#define GL_CURRENT_RASTER_POSITION 0x0B07
#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
#define GL_CURRENT_RASTER_DISTANCE 0x0B09
#define GL_POINT_SMOOTH 0x0B10
#define GL_LINE_STIPPLE 0x0B24
#define GL_LINE_STIPPLE_PATTERN 0x0B25
#define GL_LINE_STIPPLE_REPEAT 0x0B26
#define GL_LIST_MODE 0x0B30
#define GL_MAX_LIST_NESTING 0x0B31
#define GL_LIST_BASE 0x0B32
#define GL_LIST_INDEX 0x0B33
#define GL_POLYGON_STIPPLE 0x0B42
#define GL_EDGE_FLAG 0x0B43
#define GL_LIGHTING 0x0B50
#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
#define GL_LIGHT_MODEL_AMBIENT 0x0B53
#define GL_SHADE_MODEL 0x0B54
#define GL_COLOR_MATERIAL_FACE 0x0B55
#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
#define GL_COLOR_MATERIAL 0x0B57
#define GL_FOG 0x0B60
#define GL_FOG_INDEX 0x0B61
#define GL_FOG_DENSITY 0x0B62
#define GL_FOG_START 0x0B63
#define GL_FOG_END 0x0B64
#define GL_FOG_MODE 0x0B65
#define GL_FOG_COLOR 0x0B66
#define GL_ACCUM_CLEAR_VALUE 0x0B80
#define GL_MATRIX_MODE 0x0BA0
#define GL_NORMALIZE 0x0BA1
#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
#define GL_PROJECTION_STACK_DEPTH 0x0BA4
#define GL_TEXTURE_STACK_DEPTH 0x0BA5
#define GL_MODELVIEW_MATRIX 0x0BA6
#define GL_PROJECTION_MATRIX 0x0BA7
#define GL_TEXTURE_MATRIX 0x0BA8
#define GL_ATTRIB_STACK_DEPTH 0x0BB0
#define GL_ALPHA_TEST 0x0BC0
#define GL_ALPHA_TEST_FUNC 0x0BC1
#define GL_ALPHA_TEST_REF 0x0BC2
#define GL_LOGIC_OP 0x0BF1
#define GL_AUX_BUFFERS 0x0C00
#define GL_INDEX_CLEAR_VALUE 0x0C20
#define GL_INDEX_WRITEMASK 0x0C21
#define GL_INDEX_MODE 0x0C30
#define GL_RGBA_MODE 0x0C31
#define GL_RENDER_MODE 0x0C40
#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
#define GL_POINT_SMOOTH_HINT 0x0C51
#define GL_FOG_HINT 0x0C54
#define GL_TEXTURE_GEN_S 0x0C60
#define GL_TEXTURE_GEN_T 0x0C61
#define GL_TEXTURE_GEN_R 0x0C62
#define GL_TEXTURE_GEN_Q 0x0C63
#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
#define GL_MAP_COLOR 0x0D10
#define GL_MAP_STENCIL 0x0D11
#define GL_INDEX_SHIFT 0x0D12
#define GL_INDEX_OFFSET 0x0D13
#define GL_RED_SCALE 0x0D14
#define GL_RED_BIAS 0x0D15
#define GL_ZOOM_X 0x0D16
#define GL_ZOOM_Y 0x0D17
#define GL_GREEN_SCALE 0x0D18
#define GL_GREEN_BIAS 0x0D19
#define GL_BLUE_SCALE 0x0D1A
#define GL_BLUE_BIAS 0x0D1B
#define GL_ALPHA_SCALE 0x0D1C
#define GL_ALPHA_BIAS 0x0D1D
#define GL_DEPTH_SCALE 0x0D1E
#define GL_DEPTH_BIAS 0x0D1F
#define GL_MAX_EVAL_ORDER 0x0D30
#define GL_MAX_LIGHTS 0x0D31
#define GL_MAX_CLIP_PLANES 0x0D32
#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
#define GL_MAX_NAME_STACK_DEPTH 0x0D37
#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
#define GL_INDEX_BITS 0x0D51
#define GL_RED_BITS 0x0D52
#define GL_GREEN_BITS 0x0D53
#define GL_BLUE_BITS 0x0D54
#define GL_ALPHA_BITS 0x0D55
#define GL_DEPTH_BITS 0x0D56
#define GL_STENCIL_BITS 0x0D57
#define GL_ACCUM_RED_BITS 0x0D58
#define GL_ACCUM_GREEN_BITS 0x0D59
#define GL_ACCUM_BLUE_BITS 0x0D5A
#define GL_ACCUM_ALPHA_BITS 0x0D5B
#define GL_NAME_STACK_DEPTH 0x0D70
#define GL_AUTO_NORMAL 0x0D80
#define GL_MAP1_COLOR_4 0x0D90
#define GL_MAP1_INDEX 0x0D91
#define GL_MAP1_NORMAL 0x0D92
#define GL_MAP1_TEXTURE_COORD_1 0x0D93
#define GL_MAP1_TEXTURE_COORD_2 0x0D94
#define GL_MAP1_TEXTURE_COORD_3 0x0D95
#define GL_MAP1_TEXTURE_COORD_4 0x0D96
#define GL_MAP1_VERTEX_3 0x0D97
#define GL_MAP1_VERTEX_4 0x0D98
#define GL_MAP2_COLOR_4 0x0DB0
#define GL_MAP2_INDEX 0x0DB1
#define GL_MAP2_NORMAL 0x0DB2
#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
#define GL_MAP2_VERTEX_3 0x0DB7
#define GL_MAP2_VERTEX_4 0x0DB8
#define GL_MAP1_GRID_DOMAIN 0x0DD0
#define GL_MAP1_GRID_SEGMENTS 0x0DD1
#define GL_MAP2_GRID_DOMAIN 0x0DD2
#define GL_MAP2_GRID_SEGMENTS 0x0DD3
#define GL_TEXTURE_COMPONENTS 0x1003
#define GL_TEXTURE_BORDER 0x1005
#define GL_AMBIENT 0x1200
#define GL_DIFFUSE 0x1201
#define GL_SPECULAR 0x1202
#define GL_POSITION 0x1203
#define GL_SPOT_DIRECTION 0x1204
#define GL_SPOT_EXPONENT 0x1205
#define GL_SPOT_CUTOFF 0x1206
#define GL_CONSTANT_ATTENUATION 0x1207
#define GL_LINEAR_ATTENUATION 0x1208
#define GL_QUADRATIC_ATTENUATION 0x1209
#define GL_COMPILE 0x1300
#define GL_COMPILE_AND_EXECUTE 0x1301
#define GL_2_BYTES 0x1407
#define GL_3_BYTES 0x1408
#define GL_4_BYTES 0x1409
#define GL_EMISSION 0x1600
#define GL_SHININESS 0x1601
#define GL_AMBIENT_AND_DIFFUSE 0x1602
#define GL_COLOR_INDEXES 0x1603
#define GL_MODELVIEW 0x1700
#define GL_PROJECTION 0x1701
#define GL_COLOR_INDEX 0x1900
#define GL_LUMINANCE 0x1909
#define GL_LUMINANCE_ALPHA 0x190A
#define GL_BITMAP 0x1A00
#define GL_RENDER 0x1C00
#define GL_FEEDBACK 0x1C01
#define GL_SELECT 0x1C02
#define GL_FLAT 0x1D00
#define GL_SMOOTH 0x1D01
#define GL_S 0x2000
#define GL_T 0x2001
#define GL_R 0x2002
#define GL_Q 0x2003
#define GL_MODULATE 0x2100
#define GL_DECAL 0x2101
#define GL_TEXTURE_ENV_MODE 0x2200
#define GL_TEXTURE_ENV_COLOR 0x2201
#define GL_TEXTURE_ENV 0x2300
#define GL_EYE_LINEAR 0x2400
#define GL_OBJECT_LINEAR 0x2401
#define GL_SPHERE_MAP 0x2402
#define GL_TEXTURE_GEN_MODE 0x2500
#define GL_OBJECT_PLANE 0x2501
#define GL_EYE_PLANE 0x2502
#define GL_CLAMP 0x2900
#define GL_CLIP_PLANE0 0x3000
#define GL_CLIP_PLANE1 0x3001
#define GL_CLIP_PLANE2 0x3002
#define GL_CLIP_PLANE3 0x3003
#define GL_CLIP_PLANE4 0x3004
#define GL_CLIP_PLANE5 0x3005
#define GL_LIGHT0 0x4000
#define GL_LIGHT1 0x4001
#define GL_LIGHT2 0x4002
#define GL_LIGHT3 0x4003
#define GL_LIGHT4 0x4004
#define GL_LIGHT5 0x4005
#define GL_LIGHT6 0x4006
#define GL_LIGHT7 0x4007
#define glCullFace gload_glCullFace
typedef void (APIENTRYP PFNGLCULLFACEPROC)(GLenum mode);
GLAPI PFNGLCULLFACEPROC gload_glCullFace;

#define glFrontFace gload_glFrontFace
typedef void (APIENTRYP PFNGLFRONTFACEPROC)(GLenum mode);
GLAPI PFNGLFRONTFACEPROC gload_glFrontFace;

#define glHint gload_glHint
typedef void (APIENTRYP PFNGLHINTPROC)(GLenum target, GLenum mode);
GLAPI PFNGLHINTPROC gload_glHint;

#define glLineWidth gload_glLineWidth
typedef void (APIENTRYP PFNGLLINEWIDTHPROC)(GLfloat width);
GLAPI PFNGLLINEWIDTHPROC gload_glLineWidth;

#define glPointSize gload_glPointSize
typedef void (APIENTRYP PFNGLPOINTSIZEPROC)(GLfloat size);
GLAPI PFNGLPOINTSIZEPROC gload_glPointSize;

#define glPolygonMode gload_glPolygonMode
typedef void (APIENTRYP PFNGLPOLYGONMODEPROC)(GLenum face, GLenum mode);
GLAPI PFNGLPOLYGONMODEPROC gload_glPolygonMode;

#define glScissor gload_glScissor
typedef void (APIENTRYP PFNGLSCISSORPROC)(GLint x, GLint y, GLsizei width, GLsizei height);
GLAPI PFNGLSCISSORPROC gload_glScissor;

#define glTexParameterf gload_glTexParameterf
typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC)(GLenum target, GLenum pname, GLfloat param);
GLAPI PFNGLTEXPARAMETERFPROC gload_glTexParameterf;

#define glTexParameterfv gload_glTexParameterfv
typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC)(GLenum target, GLenum pname, const GLfloat *params);
GLAPI PFNGLTEXPARAMETERFVPROC gload_glTexParameterfv;

#define glTexParameteri gload_glTexParameteri
typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC)(GLenum target, GLenum pname, GLint param);
GLAPI PFNGLTEXPARAMETERIPROC gload_glTexParameteri;

#define glTexParameteriv gload_glTexParameteriv
typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC)(GLenum target, GLenum pname, const GLint *params);
GLAPI PFNGLTEXPARAMETERIVPROC gload_glTexParameteriv;

#define glTexImage1D gload_glTexImage1D
typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXIMAGE1DPROC gload_glTexImage1D;

#define glTexImage2D gload_glTexImage2D
typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXIMAGE2DPROC gload_glTexImage2D;

#define glDrawBuffer gload_glDrawBuffer
typedef void (APIENTRYP PFNGLDRAWBUFFERPROC)(GLenum buf);
GLAPI PFNGLDRAWBUFFERPROC gload_glDrawBuffer;

#define glClear gload_glClear
typedef void (APIENTRYP PFNGLCLEARPROC)(GLbitfield mask);
GLAPI PFNGLCLEARPROC gload_glClear;

#define glClearColor gload_glClearColor
typedef void (APIENTRYP PFNGLCLEARCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
GLAPI PFNGLCLEARCOLORPROC gload_glClearColor;

#define glClearStencil gload_glClearStencil
typedef void (APIENTRYP PFNGLCLEARSTENCILPROC)(GLint s);
GLAPI PFNGLCLEARSTENCILPROC gload_glClearStencil;

#define glClearDepth gload_glClearDepth
typedef void (APIENTRYP PFNGLCLEARDEPTHPROC)(GLdouble depth);
GLAPI PFNGLCLEARDEPTHPROC gload_glClearDepth;

#define glStencilMask gload_glStencilMask
typedef void (APIENTRYP PFNGLSTENCILMASKPROC)(GLuint mask);
GLAPI PFNGLSTENCILMASKPROC gload_glStencilMask;

#define glColorMask gload_glColorMask
typedef void (APIENTRYP PFNGLCOLORMASKPROC)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
GLAPI PFNGLCOLORMASKPROC gload_glColorMask;

#define glDepthMask gload_glDepthMask
typedef void (APIENTRYP PFNGLDEPTHMASKPROC)(GLboolean flag);
GLAPI PFNGLDEPTHMASKPROC gload_glDepthMask;

#define glDisable gload_glDisable
typedef void (APIENTRYP PFNGLDISABLEPROC)(GLenum cap);
GLAPI PFNGLDISABLEPROC gload_glDisable;

#define glEnable gload_glEnable
typedef void (APIENTRYP PFNGLENABLEPROC)(GLenum cap);
GLAPI PFNGLENABLEPROC gload_glEnable;

#define glFinish gload_glFinish
typedef void (APIENTRYP PFNGLFINISHPROC)(void);
GLAPI PFNGLFINISHPROC gload_glFinish;

#define glFlush gload_glFlush
typedef void (APIENTRYP PFNGLFLUSHPROC)(void);
GLAPI PFNGLFLUSHPROC gload_glFlush;

#define glBlendFunc gload_glBlendFunc
typedef void (APIENTRYP PFNGLBLENDFUNCPROC)(GLenum sfactor, GLenum dfactor);
GLAPI PFNGLBLENDFUNCPROC gload_glBlendFunc;

#define glLogicOp gload_glLogicOp
typedef void (APIENTRYP PFNGLLOGICOPPROC)(GLenum opcode);
GLAPI PFNGLLOGICOPPROC gload_glLogicOp;

#define glStencilFunc gload_glStencilFunc
typedef void (APIENTRYP PFNGLSTENCILFUNCPROC)(GLenum func, GLint ref, GLuint mask);
GLAPI PFNGLSTENCILFUNCPROC gload_glStencilFunc;

#define glStencilOp gload_glStencilOp
typedef void (APIENTRYP PFNGLSTENCILOPPROC)(GLenum fail, GLenum zfail, GLenum zpass);
GLAPI PFNGLSTENCILOPPROC gload_glStencilOp;

#define glDepthFunc gload_glDepthFunc
typedef void (APIENTRYP PFNGLDEPTHFUNCPROC)(GLenum func);
GLAPI PFNGLDEPTHFUNCPROC gload_glDepthFunc;

#define glPixelStoref gload_glPixelStoref
typedef void (APIENTRYP PFNGLPIXELSTOREFPROC)(GLenum pname, GLfloat param);
GLAPI PFNGLPIXELSTOREFPROC gload_glPixelStoref;

#define glPixelStorei gload_glPixelStorei
typedef void (APIENTRYP PFNGLPIXELSTOREIPROC)(GLenum pname, GLint param);
GLAPI PFNGLPIXELSTOREIPROC gload_glPixelStorei;

#define glReadBuffer gload_glReadBuffer
typedef void (APIENTRYP PFNGLREADBUFFERPROC)(GLenum src);
GLAPI PFNGLREADBUFFERPROC gload_glReadBuffer;

#define glReadPixels gload_glReadPixels
typedef void (APIENTRYP PFNGLREADPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
GLAPI PFNGLREADPIXELSPROC gload_glReadPixels;

#define glGetBooleanv gload_glGetBooleanv
typedef void (APIENTRYP PFNGLGETBOOLEANVPROC)(GLenum pname, GLboolean *data);
GLAPI PFNGLGETBOOLEANVPROC gload_glGetBooleanv;

#define glGetDoublev gload_glGetDoublev
typedef void (APIENTRYP PFNGLGETDOUBLEVPROC)(GLenum pname, GLdouble *data);
GLAPI PFNGLGETDOUBLEVPROC gload_glGetDoublev;

#define glGetError gload_glGetError
typedef GLenum (APIENTRYP PFNGLGETERRORPROC)(void);
GLAPI PFNGLGETERRORPROC gload_glGetError;

#define glGetFloatv gload_glGetFloatv
typedef void (APIENTRYP PFNGLGETFLOATVPROC)(GLenum pname, GLfloat *data);
GLAPI PFNGLGETFLOATVPROC gload_glGetFloatv;

#define glGetIntegerv gload_glGetIntegerv
typedef void (APIENTRYP PFNGLGETINTEGERVPROC)(GLenum pname, GLint *data);
GLAPI PFNGLGETINTEGERVPROC gload_glGetIntegerv;

#define glGetString gload_glGetString
typedef const GLubyte *(APIENTRYP PFNGLGETSTRINGPROC)(GLenum name);
GLAPI PFNGLGETSTRINGPROC gload_glGetString;

#define glGetTexImage gload_glGetTexImage
typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC)(GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
GLAPI PFNGLGETTEXIMAGEPROC gload_glGetTexImage;

#define glGetTexParameterfv gload_glGetTexParameterfv
typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC)(GLenum target, GLenum pname, GLfloat *params);
GLAPI PFNGLGETTEXPARAMETERFVPROC gload_glGetTexParameterfv;

#define glGetTexParameteriv gload_glGetTexParameteriv
typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
GLAPI PFNGLGETTEXPARAMETERIVPROC gload_glGetTexParameteriv;

#define glGetTexLevelParameterfv gload_glGetTexLevelParameterfv
typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC)(GLenum target, GLint level, GLenum pname, GLfloat *params);
GLAPI PFNGLGETTEXLEVELPARAMETERFVPROC gload_glGetTexLevelParameterfv;

#define glGetTexLevelParameteriv gload_glGetTexLevelParameteriv
typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC)(GLenum target, GLint level, GLenum pname, GLint *params);
GLAPI PFNGLGETTEXLEVELPARAMETERIVPROC gload_glGetTexLevelParameteriv;

#define glIsEnabled gload_glIsEnabled
typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC)(GLenum cap);
GLAPI PFNGLISENABLEDPROC gload_glIsEnabled;

#define glDepthRange gload_glDepthRange
typedef void (APIENTRYP PFNGLDEPTHRANGEPROC)(GLdouble n, GLdouble f);
GLAPI PFNGLDEPTHRANGEPROC gload_glDepthRange;

#define glViewport gload_glViewport
typedef void (APIENTRYP PFNGLVIEWPORTPROC)(GLint x, GLint y, GLsizei width, GLsizei height);
GLAPI PFNGLVIEWPORTPROC gload_glViewport;

#define glNewList gload_glNewList
typedef void (APIENTRYP PFNGLNEWLISTPROC)(GLuint list, GLenum mode);
GLAPI PFNGLNEWLISTPROC gload_glNewList;

#define glEndList gload_glEndList
typedef void (APIENTRYP PFNGLENDLISTPROC)(void);
GLAPI PFNGLENDLISTPROC gload_glEndList;

#define glCallList gload_glCallList
typedef void (APIENTRYP PFNGLCALLLISTPROC)(GLuint list);
GLAPI PFNGLCALLLISTPROC gload_glCallList;

#define glCallLists gload_glCallLists
typedef void (APIENTRYP PFNGLCALLLISTSPROC)(GLsizei n, GLenum type, const void *lists);
GLAPI PFNGLCALLLISTSPROC gload_glCallLists;

#define glDeleteLists gload_glDeleteLists
typedef void (APIENTRYP PFNGLDELETELISTSPROC)(GLuint list, GLsizei range);
GLAPI PFNGLDELETELISTSPROC gload_glDeleteLists;

#define glGenLists gload_glGenLists
typedef GLuint (APIENTRYP PFNGLGENLISTSPROC)(GLsizei range);
GLAPI PFNGLGENLISTSPROC gload_glGenLists;

#define glListBase gload_glListBase
typedef void (APIENTRYP PFNGLLISTBASEPROC)(GLuint base);
GLAPI PFNGLLISTBASEPROC gload_glListBase;

#define glBegin gload_glBegin
typedef void (APIENTRYP PFNGLBEGINPROC)(GLenum mode);
GLAPI PFNGLBEGINPROC gload_glBegin;

#define glBitmap gload_glBitmap
typedef void (APIENTRYP PFNGLBITMAPPROC)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
GLAPI PFNGLBITMAPPROC gload_glBitmap;

#define glColor3b gload_glColor3b
typedef void (APIENTRYP PFNGLCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue);
GLAPI PFNGLCOLOR3BPROC gload_glColor3b;

#define glColor3bv gload_glColor3bv
typedef void (APIENTRYP PFNGLCOLOR3BVPROC)(const GLbyte *v);
GLAPI PFNGLCOLOR3BVPROC gload_glColor3bv;

#define glColor3d gload_glColor3d
typedef void (APIENTRYP PFNGLCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue);
GLAPI PFNGLCOLOR3DPROC gload_glColor3d;

#define glColor3dv gload_glColor3dv
typedef void (APIENTRYP PFNGLCOLOR3DVPROC)(const GLdouble *v);
GLAPI PFNGLCOLOR3DVPROC gload_glColor3dv;

#define glColor3f gload_glColor3f
typedef void (APIENTRYP PFNGLCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue);
GLAPI PFNGLCOLOR3FPROC gload_glColor3f;

#define glColor3fv gload_glColor3fv
typedef void (APIENTRYP PFNGLCOLOR3FVPROC)(const GLfloat *v);
GLAPI PFNGLCOLOR3FVPROC gload_glColor3fv;

#define glColor3i gload_glColor3i
typedef void (APIENTRYP PFNGLCOLOR3IPROC)(GLint red, GLint green, GLint blue);
GLAPI PFNGLCOLOR3IPROC gload_glColor3i;

#define glColor3iv gload_glColor3iv
typedef void (APIENTRYP PFNGLCOLOR3IVPROC)(const GLint *v);
GLAPI PFNGLCOLOR3IVPROC gload_glColor3iv;

#define glColor3s gload_glColor3s
typedef void (APIENTRYP PFNGLCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue);
GLAPI PFNGLCOLOR3SPROC gload_glColor3s;

#define glColor3sv gload_glColor3sv
typedef void (APIENTRYP PFNGLCOLOR3SVPROC)(const GLshort *v);
GLAPI PFNGLCOLOR3SVPROC gload_glColor3sv;

#define glColor3ub gload_glColor3ub
typedef void (APIENTRYP PFNGLCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue);
GLAPI PFNGLCOLOR3UBPROC gload_glColor3ub;

#define glColor3ubv gload_glColor3ubv
typedef void (APIENTRYP PFNGLCOLOR3UBVPROC)(const GLubyte *v);
GLAPI PFNGLCOLOR3UBVPROC gload_glColor3ubv;

#define glColor3ui gload_glColor3ui
typedef void (APIENTRYP PFNGLCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue);
GLAPI PFNGLCOLOR3UIPROC gload_glColor3ui;

#define glColor3uiv gload_glColor3uiv
typedef void (APIENTRYP PFNGLCOLOR3UIVPROC)(const GLuint *v);
GLAPI PFNGLCOLOR3UIVPROC gload_glColor3uiv;

#define glColor3us gload_glColor3us
typedef void (APIENTRYP PFNGLCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue);
GLAPI PFNGLCOLOR3USPROC gload_glColor3us;

#define glColor3usv gload_glColor3usv
typedef void (APIENTRYP PFNGLCOLOR3USVPROC)(const GLushort *v);
GLAPI PFNGLCOLOR3USVPROC gload_glColor3usv;

#define glColor4b gload_glColor4b
typedef void (APIENTRYP PFNGLCOLOR4BPROC)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
GLAPI PFNGLCOLOR4BPROC gload_glColor4b;

#define glColor4bv gload_glColor4bv
typedef void (APIENTRYP PFNGLCOLOR4BVPROC)(const GLbyte *v);
GLAPI PFNGLCOLOR4BVPROC gload_glColor4bv;

#define glColor4d gload_glColor4d
typedef void (APIENTRYP PFNGLCOLOR4DPROC)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
GLAPI PFNGLCOLOR4DPROC gload_glColor4d;

#define glColor4dv gload_glColor4dv
typedef void (APIENTRYP PFNGLCOLOR4DVPROC)(const GLdouble *v);
GLAPI PFNGLCOLOR4DVPROC gload_glColor4dv;

#define glColor4f gload_glColor4f
typedef void (APIENTRYP PFNGLCOLOR4FPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
GLAPI PFNGLCOLOR4FPROC gload_glColor4f;

#define glColor4fv gload_glColor4fv
typedef void (APIENTRYP PFNGLCOLOR4FVPROC)(const GLfloat *v);
GLAPI PFNGLCOLOR4FVPROC gload_glColor4fv;

#define glColor4i gload_glColor4i
typedef void (APIENTRYP PFNGLCOLOR4IPROC)(GLint red, GLint green, GLint blue, GLint alpha);
GLAPI PFNGLCOLOR4IPROC gload_glColor4i;

#define glColor4iv gload_glColor4iv
typedef void (APIENTRYP PFNGLCOLOR4IVPROC)(const GLint *v);
GLAPI PFNGLCOLOR4IVPROC gload_glColor4iv;

#define glColor4s gload_glColor4s
typedef void (APIENTRYP PFNGLCOLOR4SPROC)(GLshort red, GLshort green, GLshort blue, GLshort alpha);
GLAPI PFNGLCOLOR4SPROC gload_glColor4s;

#define glColor4sv gload_glColor4sv
typedef void (APIENTRYP PFNGLCOLOR4SVPROC)(const GLshort *v);
GLAPI PFNGLCOLOR4SVPROC gload_glColor4sv;

#define glColor4ub gload_glColor4ub
typedef void (APIENTRYP PFNGLCOLOR4UBPROC)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
GLAPI PFNGLCOLOR4UBPROC gload_glColor4ub;

#define glColor4ubv gload_glColor4ubv
typedef void (APIENTRYP PFNGLCOLOR4UBVPROC)(const GLubyte *v);
GLAPI PFNGLCOLOR4UBVPROC gload_glColor4ubv;

#define glColor4ui gload_glColor4ui
typedef void (APIENTRYP PFNGLCOLOR4UIPROC)(GLuint red, GLuint green, GLuint blue, GLuint alpha);
GLAPI PFNGLCOLOR4UIPROC gload_glColor4ui;

#define glColor4uiv gload_glColor4uiv
typedef void (APIENTRYP PFNGLCOLOR4UIVPROC)(const GLuint *v);
GLAPI PFNGLCOLOR4UIVPROC gload_glColor4uiv;

#define glColor4us gload_glColor4us
typedef void (APIENTRYP PFNGLCOLOR4USPROC)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
GLAPI PFNGLCOLOR4USPROC gload_glColor4us;

#define glColor4usv gload_glColor4usv
typedef void (APIENTRYP PFNGLCOLOR4USVPROC)(const GLushort *v);
GLAPI PFNGLCOLOR4USVPROC gload_glColor4usv;

#define glEdgeFlag gload_glEdgeFlag
typedef void (APIENTRYP PFNGLEDGEFLAGPROC)(GLboolean flag);
GLAPI PFNGLEDGEFLAGPROC gload_glEdgeFlag;

#define glEdgeFlagv gload_glEdgeFlagv
typedef void (APIENTRYP PFNGLEDGEFLAGVPROC)(const GLboolean *flag);
GLAPI PFNGLEDGEFLAGVPROC gload_glEdgeFlagv;

#define glEnd gload_glEnd
typedef void (APIENTRYP PFNGLENDPROC)(void);
GLAPI PFNGLENDPROC gload_glEnd;

#define glIndexd gload_glIndexd
typedef void (APIENTRYP PFNGLINDEXDPROC)(GLdouble c);
GLAPI PFNGLINDEXDPROC gload_glIndexd;

#define glIndexdv gload_glIndexdv
typedef void (APIENTRYP PFNGLINDEXDVPROC)(const GLdouble *c);
GLAPI PFNGLINDEXDVPROC gload_glIndexdv;

#define glIndexf gload_glIndexf
typedef void (APIENTRYP PFNGLINDEXFPROC)(GLfloat c);
GLAPI PFNGLINDEXFPROC gload_glIndexf;

#define glIndexfv gload_glIndexfv
typedef void (APIENTRYP PFNGLINDEXFVPROC)(const GLfloat *c);
GLAPI PFNGLINDEXFVPROC gload_glIndexfv;

#define glIndexi gload_glIndexi
typedef void (APIENTRYP PFNGLINDEXIPROC)(GLint c);
GLAPI PFNGLINDEXIPROC gload_glIndexi;

#define glIndexiv gload_glIndexiv
typedef void (APIENTRYP PFNGLINDEXIVPROC)(const GLint *c);
GLAPI PFNGLINDEXIVPROC gload_glIndexiv;

#define glIndexs gload_glIndexs
typedef void (APIENTRYP PFNGLINDEXSPROC)(GLshort c);
GLAPI PFNGLINDEXSPROC gload_glIndexs;

#define glIndexsv gload_glIndexsv
typedef void (APIENTRYP PFNGLINDEXSVPROC)(const GLshort *c);
GLAPI PFNGLINDEXSVPROC gload_glIndexsv;

#define glNormal3b gload_glNormal3b
typedef void (APIENTRYP PFNGLNORMAL3BPROC)(GLbyte nx, GLbyte ny, GLbyte nz);
GLAPI PFNGLNORMAL3BPROC gload_glNormal3b;

#define glNormal3bv gload_glNormal3bv
typedef void (APIENTRYP PFNGLNORMAL3BVPROC)(const GLbyte *v);
GLAPI PFNGLNORMAL3BVPROC gload_glNormal3bv;

#define glNormal3d gload_glNormal3d
typedef void (APIENTRYP PFNGLNORMAL3DPROC)(GLdouble nx, GLdouble ny, GLdouble nz);
GLAPI PFNGLNORMAL3DPROC gload_glNormal3d;

#define glNormal3dv gload_glNormal3dv
typedef void (APIENTRYP PFNGLNORMAL3DVPROC)(const GLdouble *v);
GLAPI PFNGLNORMAL3DVPROC gload_glNormal3dv;

#define glNormal3f gload_glNormal3f
typedef void (APIENTRYP PFNGLNORMAL3FPROC)(GLfloat nx, GLfloat ny, GLfloat nz);
GLAPI PFNGLNORMAL3FPROC gload_glNormal3f;

#define glNormal3fv gload_glNormal3fv
typedef void (APIENTRYP PFNGLNORMAL3FVPROC)(const GLfloat *v);
GLAPI PFNGLNORMAL3FVPROC gload_glNormal3fv;

#define glNormal3i gload_glNormal3i
typedef void (APIENTRYP PFNGLNORMAL3IPROC)(GLint nx, GLint ny, GLint nz);
GLAPI PFNGLNORMAL3IPROC gload_glNormal3i;

#define glNormal3iv gload_glNormal3iv
typedef void (APIENTRYP PFNGLNORMAL3IVPROC)(const GLint *v);
GLAPI PFNGLNORMAL3IVPROC gload_glNormal3iv;

#define glNormal3s gload_glNormal3s
typedef void (APIENTRYP PFNGLNORMAL3SPROC)(GLshort nx, GLshort ny, GLshort nz);
GLAPI PFNGLNORMAL3SPROC gload_glNormal3s;

#define glNormal3sv gload_glNormal3sv
typedef void (APIENTRYP PFNGLNORMAL3SVPROC)(const GLshort *v);
GLAPI PFNGLNORMAL3SVPROC gload_glNormal3sv;

#define glRasterPos2d gload_glRasterPos2d
typedef void (APIENTRYP PFNGLRASTERPOS2DPROC)(GLdouble x, GLdouble y);
GLAPI PFNGLRASTERPOS2DPROC gload_glRasterPos2d;

#define glRasterPos2dv gload_glRasterPos2dv
typedef void (APIENTRYP PFNGLRASTERPOS2DVPROC)(const GLdouble *v);
GLAPI PFNGLRASTERPOS2DVPROC gload_glRasterPos2dv;

#define glRasterPos2f gload_glRasterPos2f
typedef void (APIENTRYP PFNGLRASTERPOS2FPROC)(GLfloat x, GLfloat y);
GLAPI PFNGLRASTERPOS2FPROC gload_glRasterPos2f;

#define glRasterPos2fv gload_glRasterPos2fv
typedef void (APIENTRYP PFNGLRASTERPOS2FVPROC)(const GLfloat *v);
GLAPI PFNGLRASTERPOS2FVPROC gload_glRasterPos2fv;

#define glRasterPos2i gload_glRasterPos2i
typedef void (APIENTRYP PFNGLRASTERPOS2IPROC)(GLint x, GLint y);
GLAPI PFNGLRASTERPOS2IPROC gload_glRasterPos2i;

#define glRasterPos2iv gload_glRasterPos2iv
typedef void (APIENTRYP PFNGLRASTERPOS2IVPROC)(const GLint *v);
GLAPI PFNGLRASTERPOS2IVPROC gload_glRasterPos2iv;

#define glRasterPos2s gload_glRasterPos2s
typedef void (APIENTRYP PFNGLRASTERPOS2SPROC)(GLshort x, GLshort y);
GLAPI PFNGLRASTERPOS2SPROC gload_glRasterPos2s;

#define glRasterPos2sv gload_glRasterPos2sv
typedef void (APIENTRYP PFNGLRASTERPOS2SVPROC)(const GLshort *v);
GLAPI PFNGLRASTERPOS2SVPROC gload_glRasterPos2sv;

#define glRasterPos3d gload_glRasterPos3d
typedef void (APIENTRYP PFNGLRASTERPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLRASTERPOS3DPROC gload_glRasterPos3d;

#define glRasterPos3dv gload_glRasterPos3dv
typedef void (APIENTRYP PFNGLRASTERPOS3DVPROC)(const GLdouble *v);
GLAPI PFNGLRASTERPOS3DVPROC gload_glRasterPos3dv;

#define glRasterPos3f gload_glRasterPos3f
typedef void (APIENTRYP PFNGLRASTERPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLRASTERPOS3FPROC gload_glRasterPos3f;

#define glRasterPos3fv gload_glRasterPos3fv
typedef void (APIENTRYP PFNGLRASTERPOS3FVPROC)(const GLfloat *v);
GLAPI PFNGLRASTERPOS3FVPROC gload_glRasterPos3fv;

#define glRasterPos3i gload_glRasterPos3i
typedef void (APIENTRYP PFNGLRASTERPOS3IPROC)(GLint x, GLint y, GLint z);
GLAPI PFNGLRASTERPOS3IPROC gload_glRasterPos3i;

#define glRasterPos3iv gload_glRasterPos3iv
typedef void (APIENTRYP PFNGLRASTERPOS3IVPROC)(const GLint *v);
GLAPI PFNGLRASTERPOS3IVPROC gload_glRasterPos3iv;

#define glRasterPos3s gload_glRasterPos3s
typedef void (APIENTRYP PFNGLRASTERPOS3SPROC)(GLshort x, GLshort y, GLshort z);
GLAPI PFNGLRASTERPOS3SPROC gload_glRasterPos3s;

#define glRasterPos3sv gload_glRasterPos3sv
typedef void (APIENTRYP PFNGLRASTERPOS3SVPROC)(const GLshort *v);
GLAPI PFNGLRASTERPOS3SVPROC gload_glRasterPos3sv;

#define glRasterPos4d gload_glRasterPos4d
typedef void (APIENTRYP PFNGLRASTERPOS4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
GLAPI PFNGLRASTERPOS4DPROC gload_glRasterPos4d;

#define glRasterPos4dv gload_glRasterPos4dv
typedef void (APIENTRYP PFNGLRASTERPOS4DVPROC)(const GLdouble *v);
GLAPI PFNGLRASTERPOS4DVPROC gload_glRasterPos4dv;

#define glRasterPos4f gload_glRasterPos4f
typedef void (APIENTRYP PFNGLRASTERPOS4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
GLAPI PFNGLRASTERPOS4FPROC gload_glRasterPos4f;

#define glRasterPos4fv gload_glRasterPos4fv
typedef void (APIENTRYP PFNGLRASTERPOS4FVPROC)(const GLfloat *v);
GLAPI PFNGLRASTERPOS4FVPROC gload_glRasterPos4fv;

#define glRasterPos4i gload_glRasterPos4i
typedef void (APIENTRYP PFNGLRASTERPOS4IPROC)(GLint x, GLint y, GLint z, GLint w);
GLAPI PFNGLRASTERPOS4IPROC gload_glRasterPos4i;

#define glRasterPos4iv gload_glRasterPos4iv
typedef void (APIENTRYP PFNGLRASTERPOS4IVPROC)(const GLint *v);
GLAPI PFNGLRASTERPOS4IVPROC gload_glRasterPos4iv;

#define glRasterPos4s gload_glRasterPos4s
typedef void (APIENTRYP PFNGLRASTERPOS4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w);
GLAPI PFNGLRASTERPOS4SPROC gload_glRasterPos4s;

#define glRasterPos4sv gload_glRasterPos4sv
typedef void (APIENTRYP PFNGLRASTERPOS4SVPROC)(const GLshort *v);
GLAPI PFNGLRASTERPOS4SVPROC gload_glRasterPos4sv;

#define glRectd gload_glRectd
typedef void (APIENTRYP PFNGLRECTDPROC)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
GLAPI PFNGLRECTDPROC gload_glRectd;

#define glRectdv gload_glRectdv
typedef void (APIENTRYP PFNGLRECTDVPROC)(const GLdouble *v1, const GLdouble *v2);
GLAPI PFNGLRECTDVPROC gload_glRectdv;

#define glRectf gload_glRectf
typedef void (APIENTRYP PFNGLRECTFPROC)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
GLAPI PFNGLRECTFPROC gload_glRectf;

#define glRectfv gload_glRectfv
typedef void (APIENTRYP PFNGLRECTFVPROC)(const GLfloat *v1, const GLfloat *v2);
GLAPI PFNGLRECTFVPROC gload_glRectfv;

#define glRecti gload_glRecti
typedef void (APIENTRYP PFNGLRECTIPROC)(GLint x1, GLint y1, GLint x2, GLint y2);
GLAPI PFNGLRECTIPROC gload_glRecti;

#define glRectiv gload_glRectiv
typedef void (APIENTRYP PFNGLRECTIVPROC)(const GLint *v1, const GLint *v2);
GLAPI PFNGLRECTIVPROC gload_glRectiv;

#define glRects gload_glRects
typedef void (APIENTRYP PFNGLRECTSPROC)(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
GLAPI PFNGLRECTSPROC gload_glRects;

#define glRectsv gload_glRectsv
typedef void (APIENTRYP PFNGLRECTSVPROC)(const GLshort *v1, const GLshort *v2);
GLAPI PFNGLRECTSVPROC gload_glRectsv;

#define glTexCoord1d gload_glTexCoord1d
typedef void (APIENTRYP PFNGLTEXCOORD1DPROC)(GLdouble s);
GLAPI PFNGLTEXCOORD1DPROC gload_glTexCoord1d;

#define glTexCoord1dv gload_glTexCoord1dv
typedef void (APIENTRYP PFNGLTEXCOORD1DVPROC)(const GLdouble *v);
GLAPI PFNGLTEXCOORD1DVPROC gload_glTexCoord1dv;

#define glTexCoord1f gload_glTexCoord1f
typedef void (APIENTRYP PFNGLTEXCOORD1FPROC)(GLfloat s);
GLAPI PFNGLTEXCOORD1FPROC gload_glTexCoord1f;

#define glTexCoord1fv gload_glTexCoord1fv
typedef void (APIENTRYP PFNGLTEXCOORD1FVPROC)(const GLfloat *v);
GLAPI PFNGLTEXCOORD1FVPROC gload_glTexCoord1fv;

#define glTexCoord1i gload_glTexCoord1i
typedef void (APIENTRYP PFNGLTEXCOORD1IPROC)(GLint s);
GLAPI PFNGLTEXCOORD1IPROC gload_glTexCoord1i;

#define glTexCoord1iv gload_glTexCoord1iv
typedef void (APIENTRYP PFNGLTEXCOORD1IVPROC)(const GLint *v);
GLAPI PFNGLTEXCOORD1IVPROC gload_glTexCoord1iv;

#define glTexCoord1s gload_glTexCoord1s
typedef void (APIENTRYP PFNGLTEXCOORD1SPROC)(GLshort s);
GLAPI PFNGLTEXCOORD1SPROC gload_glTexCoord1s;

#define glTexCoord1sv gload_glTexCoord1sv
typedef void (APIENTRYP PFNGLTEXCOORD1SVPROC)(const GLshort *v);
GLAPI PFNGLTEXCOORD1SVPROC gload_glTexCoord1sv;

#define glTexCoord2d gload_glTexCoord2d
typedef void (APIENTRYP PFNGLTEXCOORD2DPROC)(GLdouble s, GLdouble t);
GLAPI PFNGLTEXCOORD2DPROC gload_glTexCoord2d;

#define glTexCoord2dv gload_glTexCoord2dv
typedef void (APIENTRYP PFNGLTEXCOORD2DVPROC)(const GLdouble *v);
GLAPI PFNGLTEXCOORD2DVPROC gload_glTexCoord2dv;

#define glTexCoord2f gload_glTexCoord2f
typedef void (APIENTRYP PFNGLTEXCOORD2FPROC)(GLfloat s, GLfloat t);
GLAPI PFNGLTEXCOORD2FPROC gload_glTexCoord2f;

#define glTexCoord2fv gload_glTexCoord2fv
typedef void (APIENTRYP PFNGLTEXCOORD2FVPROC)(const GLfloat *v);
GLAPI PFNGLTEXCOORD2FVPROC gload_glTexCoord2fv;

#define glTexCoord2i gload_glTexCoord2i
typedef void (APIENTRYP PFNGLTEXCOORD2IPROC)(GLint s, GLint t);
GLAPI PFNGLTEXCOORD2IPROC gload_glTexCoord2i;

#define glTexCoord2iv gload_glTexCoord2iv
typedef void (APIENTRYP PFNGLTEXCOORD2IVPROC)(const GLint *v);
GLAPI PFNGLTEXCOORD2IVPROC gload_glTexCoord2iv;

#define glTexCoord2s gload_glTexCoord2s
typedef void (APIENTRYP PFNGLTEXCOORD2SPROC)(GLshort s, GLshort t);
GLAPI PFNGLTEXCOORD2SPROC gload_glTexCoord2s;

#define glTexCoord2sv gload_glTexCoord2sv
typedef void (APIENTRYP PFNGLTEXCOORD2SVPROC)(const GLshort *v);
GLAPI PFNGLTEXCOORD2SVPROC gload_glTexCoord2sv;

#define glTexCoord3d gload_glTexCoord3d
typedef void (APIENTRYP PFNGLTEXCOORD3DPROC)(GLdouble s, GLdouble t, GLdouble r);
GLAPI PFNGLTEXCOORD3DPROC gload_glTexCoord3d;

#define glTexCoord3dv gload_glTexCoord3dv
typedef void (APIENTRYP PFNGLTEXCOORD3DVPROC)(const GLdouble *v);
GLAPI PFNGLTEXCOORD3DVPROC gload_glTexCoord3dv;

#define glTexCoord3f gload_glTexCoord3f
typedef void (APIENTRYP PFNGLTEXCOORD3FPROC)(GLfloat s, GLfloat t, GLfloat r);
GLAPI PFNGLTEXCOORD3FPROC gload_glTexCoord3f;

#define glTexCoord3fv gload_glTexCoord3fv
typedef void (APIENTRYP PFNGLTEXCOORD3FVPROC)(const GLfloat *v);
GLAPI PFNGLTEXCOORD3FVPROC gload_glTexCoord3fv;

#define glTexCoord3i gload_glTexCoord3i
typedef void (APIENTRYP PFNGLTEXCOORD3IPROC)(GLint s, GLint t, GLint r);
GLAPI PFNGLTEXCOORD3IPROC gload_glTexCoord3i;

#define glTexCoord3iv gload_glTexCoord3iv
typedef void (APIENTRYP PFNGLTEXCOORD3IVPROC)(const GLint *v);
GLAPI PFNGLTEXCOORD3IVPROC gload_glTexCoord3iv;

#define glTexCoord3s gload_glTexCoord3s
typedef void (APIENTRYP PFNGLTEXCOORD3SPROC)(GLshort s, GLshort t, GLshort r);
GLAPI PFNGLTEXCOORD3SPROC gload_glTexCoord3s;

#define glTexCoord3sv gload_glTexCoord3sv
typedef void (APIENTRYP PFNGLTEXCOORD3SVPROC)(const GLshort *v);
GLAPI PFNGLTEXCOORD3SVPROC gload_glTexCoord3sv;

#define glTexCoord4d gload_glTexCoord4d
typedef void (APIENTRYP PFNGLTEXCOORD4DPROC)(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
GLAPI PFNGLTEXCOORD4DPROC gload_glTexCoord4d;

#define glTexCoord4dv gload_glTexCoord4dv
typedef void (APIENTRYP PFNGLTEXCOORD4DVPROC)(const GLdouble *v);
GLAPI PFNGLTEXCOORD4DVPROC gload_glTexCoord4dv;

#define glTexCoord4f gload_glTexCoord4f
typedef void (APIENTRYP PFNGLTEXCOORD4FPROC)(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
GLAPI PFNGLTEXCOORD4FPROC gload_glTexCoord4f;

#define glTexCoord4fv gload_glTexCoord4fv
typedef void (APIENTRYP PFNGLTEXCOORD4FVPROC)(const GLfloat *v);
GLAPI PFNGLTEXCOORD4FVPROC gload_glTexCoord4fv;

#define glTexCoord4i gload_glTexCoord4i
typedef void (APIENTRYP PFNGLTEXCOORD4IPROC)(GLint s, GLint t, GLint r, GLint q);
GLAPI PFNGLTEXCOORD4IPROC gload_glTexCoord4i;

#define glTexCoord4iv gload_glTexCoord4iv
typedef void (APIENTRYP PFNGLTEXCOORD4IVPROC)(const GLint *v);
GLAPI PFNGLTEXCOORD4IVPROC gload_glTexCoord4iv;

#define glTexCoord4s gload_glTexCoord4s
typedef void (APIENTRYP PFNGLTEXCOORD4SPROC)(GLshort s, GLshort t, GLshort r, GLshort q);
GLAPI PFNGLTEXCOORD4SPROC gload_glTexCoord4s;

#define glTexCoord4sv gload_glTexCoord4sv
typedef void (APIENTRYP PFNGLTEXCOORD4SVPROC)(const GLshort *v);
GLAPI PFNGLTEXCOORD4SVPROC gload_glTexCoord4sv;

#define glVertex2d gload_glVertex2d
typedef void (APIENTRYP PFNGLVERTEX2DPROC)(GLdouble x, GLdouble y);
GLAPI PFNGLVERTEX2DPROC gload_glVertex2d;

#define glVertex2dv gload_glVertex2dv
typedef void (APIENTRYP PFNGLVERTEX2DVPROC)(const GLdouble *v);
GLAPI PFNGLVERTEX2DVPROC gload_glVertex2dv;

#define glVertex2f gload_glVertex2f
typedef void (APIENTRYP PFNGLVERTEX2FPROC)(GLfloat x, GLfloat y);
GLAPI PFNGLVERTEX2FPROC gload_glVertex2f;

#define glVertex2fv gload_glVertex2fv
typedef void (APIENTRYP PFNGLVERTEX2FVPROC)(const GLfloat *v);
GLAPI PFNGLVERTEX2FVPROC gload_glVertex2fv;

#define glVertex2i gload_glVertex2i
typedef void (APIENTRYP PFNGLVERTEX2IPROC)(GLint x, GLint y);
GLAPI PFNGLVERTEX2IPROC gload_glVertex2i;

#define glVertex2iv gload_glVertex2iv
typedef void (APIENTRYP PFNGLVERTEX2IVPROC)(const GLint *v);
GLAPI PFNGLVERTEX2IVPROC gload_glVertex2iv;

#define glVertex2s gload_glVertex2s
typedef void (APIENTRYP PFNGLVERTEX2SPROC)(GLshort x, GLshort y);
GLAPI PFNGLVERTEX2SPROC gload_glVertex2s;

#define glVertex2sv gload_glVertex2sv
typedef void (APIENTRYP PFNGLVERTEX2SVPROC)(const GLshort *v);
GLAPI PFNGLVERTEX2SVPROC gload_glVertex2sv;

#define glVertex3d gload_glVertex3d
typedef void (APIENTRYP PFNGLVERTEX3DPROC)(GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLVERTEX3DPROC gload_glVertex3d;

#define glVertex3dv gload_glVertex3dv
typedef void (APIENTRYP PFNGLVERTEX3DVPROC)(const GLdouble *v);
GLAPI PFNGLVERTEX3DVPROC gload_glVertex3dv;

#define glVertex3f gload_glVertex3f
typedef void (APIENTRYP PFNGLVERTEX3FPROC)(GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLVERTEX3FPROC gload_glVertex3f;

#define glVertex3fv gload_glVertex3fv
typedef void (APIENTRYP PFNGLVERTEX3FVPROC)(const GLfloat *v);
GLAPI PFNGLVERTEX3FVPROC gload_glVertex3fv;

#define glVertex3i gload_glVertex3i
typedef void (APIENTRYP PFNGLVERTEX3IPROC)(GLint x, GLint y, GLint z);
GLAPI PFNGLVERTEX3IPROC gload_glVertex3i;

#define glVertex3iv gload_glVertex3iv
typedef void (APIENTRYP PFNGLVERTEX3IVPROC)(const GLint *v);
GLAPI PFNGLVERTEX3IVPROC gload_glVertex3iv;

#define glVertex3s gload_glVertex3s
typedef void (APIENTRYP PFNGLVERTEX3SPROC)(GLshort x, GLshort y, GLshort z);
GLAPI PFNGLVERTEX3SPROC gload_glVertex3s;

#define glVertex3sv gload_glVertex3sv
typedef void (APIENTRYP PFNGLVERTEX3SVPROC)(const GLshort *v);
GLAPI PFNGLVERTEX3SVPROC gload_glVertex3sv;

#define glVertex4d gload_glVertex4d
typedef void (APIENTRYP PFNGLVERTEX4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
GLAPI PFNGLVERTEX4DPROC gload_glVertex4d;

#define glVertex4dv gload_glVertex4dv
typedef void (APIENTRYP PFNGLVERTEX4DVPROC)(const GLdouble *v);
GLAPI PFNGLVERTEX4DVPROC gload_glVertex4dv;

#define glVertex4f gload_glVertex4f
typedef void (APIENTRYP PFNGLVERTEX4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
GLAPI PFNGLVERTEX4FPROC gload_glVertex4f;

#define glVertex4fv gload_glVertex4fv
typedef void (APIENTRYP PFNGLVERTEX4FVPROC)(const GLfloat *v);
GLAPI PFNGLVERTEX4FVPROC gload_glVertex4fv;

#define glVertex4i gload_glVertex4i
typedef void (APIENTRYP PFNGLVERTEX4IPROC)(GLint x, GLint y, GLint z, GLint w);
GLAPI PFNGLVERTEX4IPROC gload_glVertex4i;

#define glVertex4iv gload_glVertex4iv
typedef void (APIENTRYP PFNGLVERTEX4IVPROC)(const GLint *v);
GLAPI PFNGLVERTEX4IVPROC gload_glVertex4iv;

#define glVertex4s gload_glVertex4s
typedef void (APIENTRYP PFNGLVERTEX4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w);
GLAPI PFNGLVERTEX4SPROC gload_glVertex4s;

#define glVertex4sv gload_glVertex4sv
typedef void (APIENTRYP PFNGLVERTEX4SVPROC)(const GLshort *v);
GLAPI PFNGLVERTEX4SVPROC gload_glVertex4sv;

#define glClipPlane gload_glClipPlane
typedef void (APIENTRYP PFNGLCLIPPLANEPROC)(GLenum plane, const GLdouble *equation);
GLAPI PFNGLCLIPPLANEPROC gload_glClipPlane;

#define glColorMaterial gload_glColorMaterial
typedef void (APIENTRYP PFNGLCOLORMATERIALPROC)(GLenum face, GLenum mode);
GLAPI PFNGLCOLORMATERIALPROC gload_glColorMaterial;

#define glFogf gload_glFogf
typedef void (APIENTRYP PFNGLFOGFPROC)(GLenum pname, GLfloat param);
GLAPI PFNGLFOGFPROC gload_glFogf;

#define glFogfv gload_glFogfv
typedef void (APIENTRYP PFNGLFOGFVPROC)(GLenum pname, const GLfloat *params);
GLAPI PFNGLFOGFVPROC gload_glFogfv;

#define glFogi gload_glFogi
typedef void (APIENTRYP PFNGLFOGIPROC)(GLenum pname, GLint param);
GLAPI PFNGLFOGIPROC gload_glFogi;

#define glFogiv gload_glFogiv
typedef void (APIENTRYP PFNGLFOGIVPROC)(GLenum pname, const GLint *params);
GLAPI PFNGLFOGIVPROC gload_glFogiv;

#define glLightf gload_glLightf
typedef void (APIENTRYP PFNGLLIGHTFPROC)(GLenum light, GLenum pname, GLfloat param);
GLAPI PFNGLLIGHTFPROC gload_glLightf;

#define glLightfv gload_glLightfv
typedef void (APIENTRYP PFNGLLIGHTFVPROC)(GLenum light, GLenum pname, const GLfloat *params);
GLAPI PFNGLLIGHTFVPROC gload_glLightfv;

#define glLighti gload_glLighti
typedef void (APIENTRYP PFNGLLIGHTIPROC)(GLenum light, GLenum pname, GLint param);
GLAPI PFNGLLIGHTIPROC gload_glLighti;

#define glLightiv gload_glLightiv
typedef void (APIENTRYP PFNGLLIGHTIVPROC)(GLenum light, GLenum pname, const GLint *params);
GLAPI PFNGLLIGHTIVPROC gload_glLightiv;

#define glLightModelf gload_glLightModelf
typedef void (APIENTRYP PFNGLLIGHTMODELFPROC)(GLenum pname, GLfloat param);
GLAPI PFNGLLIGHTMODELFPROC gload_glLightModelf;

#define glLightModelfv gload_glLightModelfv
typedef void (APIENTRYP PFNGLLIGHTMODELFVPROC)(GLenum pname, const GLfloat *params);
GLAPI PFNGLLIGHTMODELFVPROC gload_glLightModelfv;

#define glLightModeli gload_glLightModeli
typedef void (APIENTRYP PFNGLLIGHTMODELIPROC)(GLenum pname, GLint param);
GLAPI PFNGLLIGHTMODELIPROC gload_glLightModeli;

#define glLightModeliv gload_glLightModeliv
typedef void (APIENTRYP PFNGLLIGHTMODELIVPROC)(GLenum pname, const GLint *params);
GLAPI PFNGLLIGHTMODELIVPROC gload_glLightModeliv;

#define glLineStipple gload_glLineStipple
typedef void (APIENTRYP PFNGLLINESTIPPLEPROC)(GLint factor, GLushort pattern);
GLAPI PFNGLLINESTIPPLEPROC gload_glLineStipple;

#define glMaterialf gload_glMaterialf
typedef void (APIENTRYP PFNGLMATERIALFPROC)(GLenum face, GLenum pname, GLfloat param);
GLAPI PFNGLMATERIALFPROC gload_glMaterialf;

#define glMaterialfv gload_glMaterialfv
typedef void (APIENTRYP PFNGLMATERIALFVPROC)(GLenum face, GLenum pname, const GLfloat *params);
GLAPI PFNGLMATERIALFVPROC gload_glMaterialfv;

#define glMateriali gload_glMateriali
typedef void (APIENTRYP PFNGLMATERIALIPROC)(GLenum face, GLenum pname, GLint param);
GLAPI PFNGLMATERIALIPROC gload_glMateriali;

#define glMaterialiv gload_glMaterialiv
typedef void (APIENTRYP PFNGLMATERIALIVPROC)(GLenum face, GLenum pname, const GLint *params);
GLAPI PFNGLMATERIALIVPROC gload_glMaterialiv;

#define glPolygonStipple gload_glPolygonStipple
typedef void (APIENTRYP PFNGLPOLYGONSTIPPLEPROC)(const GLubyte *mask);
GLAPI PFNGLPOLYGONSTIPPLEPROC gload_glPolygonStipple;

#define glShadeModel gload_glShadeModel
typedef void (APIENTRYP PFNGLSHADEMODELPROC)(GLenum mode);
GLAPI PFNGLSHADEMODELPROC gload_glShadeModel;

#define glTexEnvf gload_glTexEnvf
typedef void (APIENTRYP PFNGLTEXENVFPROC)(GLenum target, GLenum pname, GLfloat param);
GLAPI PFNGLTEXENVFPROC gload_glTexEnvf;

#define glTexEnvfv gload_glTexEnvfv
typedef void (APIENTRYP PFNGLTEXENVFVPROC)(GLenum target, GLenum pname, const GLfloat *params);
GLAPI PFNGLTEXENVFVPROC gload_glTexEnvfv;

#define glTexEnvi gload_glTexEnvi
typedef void (APIENTRYP PFNGLTEXENVIPROC)(GLenum target, GLenum pname, GLint param);
GLAPI PFNGLTEXENVIPROC gload_glTexEnvi;

#define glTexEnviv gload_glTexEnviv
typedef void (APIENTRYP PFNGLTEXENVIVPROC)(GLenum target, GLenum pname, const GLint *params);
GLAPI PFNGLTEXENVIVPROC gload_glTexEnviv;

#define glTexGend gload_glTexGend
typedef void (APIENTRYP PFNGLTEXGENDPROC)(GLenum coord, GLenum pname, GLdouble param);
GLAPI PFNGLTEXGENDPROC gload_glTexGend;

#define glTexGendv gload_glTexGendv
typedef void (APIENTRYP PFNGLTEXGENDVPROC)(GLenum coord, GLenum pname, const GLdouble *params);
GLAPI PFNGLTEXGENDVPROC gload_glTexGendv;

#define glTexGenf gload_glTexGenf
typedef void (APIENTRYP PFNGLTEXGENFPROC)(GLenum coord, GLenum pname, GLfloat param);
GLAPI PFNGLTEXGENFPROC gload_glTexGenf;

#define glTexGenfv gload_glTexGenfv
typedef void (APIENTRYP PFNGLTEXGENFVPROC)(GLenum coord, GLenum pname, const GLfloat *params);
GLAPI PFNGLTEXGENFVPROC gload_glTexGenfv;

#define glTexGeni gload_glTexGeni
typedef void (APIENTRYP PFNGLTEXGENIPROC)(GLenum coord, GLenum pname, GLint param);
GLAPI PFNGLTEXGENIPROC gload_glTexGeni;

#define glTexGeniv gload_glTexGeniv
typedef void (APIENTRYP PFNGLTEXGENIVPROC)(GLenum coord, GLenum pname, const GLint *params);
GLAPI PFNGLTEXGENIVPROC gload_glTexGeniv;

#define glFeedbackBuffer gload_glFeedbackBuffer
typedef void (APIENTRYP PFNGLFEEDBACKBUFFERPROC)(GLsizei size, GLenum type, GLfloat *buffer);
GLAPI PFNGLFEEDBACKBUFFERPROC gload_glFeedbackBuffer;

#define glSelectBuffer gload_glSelectBuffer
typedef void (APIENTRYP PFNGLSELECTBUFFERPROC)(GLsizei size, GLuint *buffer);
GLAPI PFNGLSELECTBUFFERPROC gload_glSelectBuffer;

#define glRenderMode gload_glRenderMode
typedef GLint (APIENTRYP PFNGLRENDERMODEPROC)(GLenum mode);
GLAPI PFNGLRENDERMODEPROC gload_glRenderMode;

#define glInitNames gload_glInitNames
typedef void (APIENTRYP PFNGLINITNAMESPROC)(void);
GLAPI PFNGLINITNAMESPROC gload_glInitNames;

#define glLoadName gload_glLoadName
typedef void (APIENTRYP PFNGLLOADNAMEPROC)(GLuint name);
GLAPI PFNGLLOADNAMEPROC gload_glLoadName;

#define glPassThrough gload_glPassThrough
typedef void (APIENTRYP PFNGLPASSTHROUGHPROC)(GLfloat token);
GLAPI PFNGLPASSTHROUGHPROC gload_glPassThrough;

#define glPopName gload_glPopName
typedef void (APIENTRYP PFNGLPOPNAMEPROC)(void);
GLAPI PFNGLPOPNAMEPROC gload_glPopName;

#define glPushName gload_glPushName
typedef void (APIENTRYP PFNGLPUSHNAMEPROC)(GLuint name);
GLAPI PFNGLPUSHNAMEPROC gload_glPushName;

#define glClearAccum gload_glClearAccum
typedef void (APIENTRYP PFNGLCLEARACCUMPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
GLAPI PFNGLCLEARACCUMPROC gload_glClearAccum;

#define glClearIndex gload_glClearIndex
typedef void (APIENTRYP PFNGLCLEARINDEXPROC)(GLfloat c);
GLAPI PFNGLCLEARINDEXPROC gload_glClearIndex;

#define glIndexMask gload_glIndexMask
typedef void (APIENTRYP PFNGLINDEXMASKPROC)(GLuint mask);
GLAPI PFNGLINDEXMASKPROC gload_glIndexMask;

#define glAccum gload_glAccum
typedef void (APIENTRYP PFNGLACCUMPROC)(GLenum op, GLfloat value);
GLAPI PFNGLACCUMPROC gload_glAccum;

#define glPopAttrib gload_glPopAttrib
typedef void (APIENTRYP PFNGLPOPATTRIBPROC)(void);
GLAPI PFNGLPOPATTRIBPROC gload_glPopAttrib;

#define glPushAttrib gload_glPushAttrib
typedef void (APIENTRYP PFNGLPUSHATTRIBPROC)(GLbitfield mask);
GLAPI PFNGLPUSHATTRIBPROC gload_glPushAttrib;

#define glMap1d gload_glMap1d
typedef void (APIENTRYP PFNGLMAP1DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
GLAPI PFNGLMAP1DPROC gload_glMap1d;

#define glMap1f gload_glMap1f
typedef void (APIENTRYP PFNGLMAP1FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
GLAPI PFNGLMAP1FPROC gload_glMap1f;

#define glMap2d gload_glMap2d
typedef void (APIENTRYP PFNGLMAP2DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
GLAPI PFNGLMAP2DPROC gload_glMap2d;

#define glMap2f gload_glMap2f
typedef void (APIENTRYP PFNGLMAP2FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
GLAPI PFNGLMAP2FPROC gload_glMap2f;

#define glMapGrid1d gload_glMapGrid1d
typedef void (APIENTRYP PFNGLMAPGRID1DPROC)(GLint un, GLdouble u1, GLdouble u2);
GLAPI PFNGLMAPGRID1DPROC gload_glMapGrid1d;

#define glMapGrid1f gload_glMapGrid1f
typedef void (APIENTRYP PFNGLMAPGRID1FPROC)(GLint un, GLfloat u1, GLfloat u2);
GLAPI PFNGLMAPGRID1FPROC gload_glMapGrid1f;

#define glMapGrid2d gload_glMapGrid2d
typedef void (APIENTRYP PFNGLMAPGRID2DPROC)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
GLAPI PFNGLMAPGRID2DPROC gload_glMapGrid2d;

#define glMapGrid2f gload_glMapGrid2f
typedef void (APIENTRYP PFNGLMAPGRID2FPROC)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
GLAPI PFNGLMAPGRID2FPROC gload_glMapGrid2f;

#define glEvalCoord1d gload_glEvalCoord1d
typedef void (APIENTRYP PFNGLEVALCOORD1DPROC)(GLdouble u);
GLAPI PFNGLEVALCOORD1DPROC gload_glEvalCoord1d;

#define glEvalCoord1dv gload_glEvalCoord1dv
typedef void (APIENTRYP PFNGLEVALCOORD1DVPROC)(const GLdouble *u);
GLAPI PFNGLEVALCOORD1DVPROC gload_glEvalCoord1dv;

#define glEvalCoord1f gload_glEvalCoord1f
typedef void (APIENTRYP PFNGLEVALCOORD1FPROC)(GLfloat u);
GLAPI PFNGLEVALCOORD1FPROC gload_glEvalCoord1f;

#define glEvalCoord1fv gload_glEvalCoord1fv
typedef void (APIENTRYP PFNGLEVALCOORD1FVPROC)(const GLfloat *u);
GLAPI PFNGLEVALCOORD1FVPROC gload_glEvalCoord1fv;

#define glEvalCoord2d gload_glEvalCoord2d
typedef void (APIENTRYP PFNGLEVALCOORD2DPROC)(GLdouble u, GLdouble v);
GLAPI PFNGLEVALCOORD2DPROC gload_glEvalCoord2d;

#define glEvalCoord2dv gload_glEvalCoord2dv
typedef void (APIENTRYP PFNGLEVALCOORD2DVPROC)(const GLdouble *u);
GLAPI PFNGLEVALCOORD2DVPROC gload_glEvalCoord2dv;

#define glEvalCoord2f gload_glEvalCoord2f
typedef void (APIENTRYP PFNGLEVALCOORD2FPROC)(GLfloat u, GLfloat v);
GLAPI PFNGLEVALCOORD2FPROC gload_glEvalCoord2f;

#define glEvalCoord2fv gload_glEvalCoord2fv
typedef void (APIENTRYP PFNGLEVALCOORD2FVPROC)(const GLfloat *u);
GLAPI PFNGLEVALCOORD2FVPROC gload_glEvalCoord2fv;

#define glEvalMesh1 gload_glEvalMesh1
typedef void (APIENTRYP PFNGLEVALMESH1PROC)(GLenum mode, GLint i1, GLint i2);
GLAPI PFNGLEVALMESH1PROC gload_glEvalMesh1;

#define glEvalPoint1 gload_glEvalPoint1
typedef void (APIENTRYP PFNGLEVALPOINT1PROC)(GLint i);
GLAPI PFNGLEVALPOINT1PROC gload_glEvalPoint1;

#define glEvalMesh2 gload_glEvalMesh2
typedef void (APIENTRYP PFNGLEVALMESH2PROC)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
GLAPI PFNGLEVALMESH2PROC gload_glEvalMesh2;

#define glEvalPoint2 gload_glEvalPoint2
typedef void (APIENTRYP PFNGLEVALPOINT2PROC)(GLint i, GLint j);
GLAPI PFNGLEVALPOINT2PROC gload_glEvalPoint2;

#define glAlphaFunc gload_glAlphaFunc
typedef void (APIENTRYP PFNGLALPHAFUNCPROC)(GLenum func, GLfloat ref);
GLAPI PFNGLALPHAFUNCPROC gload_glAlphaFunc;

#define glPixelZoom gload_glPixelZoom
typedef void (APIENTRYP PFNGLPIXELZOOMPROC)(GLfloat xfactor, GLfloat yfactor);
GLAPI PFNGLPIXELZOOMPROC gload_glPixelZoom;

#define glPixelTransferf gload_glPixelTransferf
typedef void (APIENTRYP PFNGLPIXELTRANSFERFPROC)(GLenum pname, GLfloat param);
GLAPI PFNGLPIXELTRANSFERFPROC gload_glPixelTransferf;

#define glPixelTransferi gload_glPixelTransferi
typedef void (APIENTRYP PFNGLPIXELTRANSFERIPROC)(GLenum pname, GLint param);
GLAPI PFNGLPIXELTRANSFERIPROC gload_glPixelTransferi;

#define glPixelMapfv gload_glPixelMapfv
typedef void (APIENTRYP PFNGLPIXELMAPFVPROC)(GLenum map, GLsizei mapsize, const GLfloat *values);
GLAPI PFNGLPIXELMAPFVPROC gload_glPixelMapfv;

#define glPixelMapuiv gload_glPixelMapuiv
typedef void (APIENTRYP PFNGLPIXELMAPUIVPROC)(GLenum map, GLsizei mapsize, const GLuint *values);
GLAPI PFNGLPIXELMAPUIVPROC gload_glPixelMapuiv;

#define glPixelMapusv gload_glPixelMapusv
typedef void (APIENTRYP PFNGLPIXELMAPUSVPROC)(GLenum map, GLsizei mapsize, const GLushort *values);
GLAPI PFNGLPIXELMAPUSVPROC gload_glPixelMapusv;

#define glCopyPixels gload_glCopyPixels
typedef void (APIENTRYP PFNGLCOPYPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
GLAPI PFNGLCOPYPIXELSPROC gload_glCopyPixels;

#define glDrawPixels gload_glDrawPixels
typedef void (APIENTRYP PFNGLDRAWPIXELSPROC)(GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLDRAWPIXELSPROC gload_glDrawPixels;

#define glGetClipPlane gload_glGetClipPlane
typedef void (APIENTRYP PFNGLGETCLIPPLANEPROC)(GLenum plane, GLdouble *equation);
GLAPI PFNGLGETCLIPPLANEPROC gload_glGetClipPlane;

#define glGetLightfv gload_glGetLightfv
typedef void (APIENTRYP PFNGLGETLIGHTFVPROC)(GLenum light, GLenum pname, GLfloat *params);
GLAPI PFNGLGETLIGHTFVPROC gload_glGetLightfv;

#define glGetLightiv gload_glGetLightiv
typedef void (APIENTRYP PFNGLGETLIGHTIVPROC)(GLenum light, GLenum pname, GLint *params);
GLAPI PFNGLGETLIGHTIVPROC gload_glGetLightiv;

#define glGetMapdv gload_glGetMapdv
typedef void (APIENTRYP PFNGLGETMAPDVPROC)(GLenum target, GLenum query, GLdouble *v);
GLAPI PFNGLGETMAPDVPROC gload_glGetMapdv;

#define glGetMapfv gload_glGetMapfv
typedef void (APIENTRYP PFNGLGETMAPFVPROC)(GLenum target, GLenum query, GLfloat *v);
GLAPI PFNGLGETMAPFVPROC gload_glGetMapfv;

#define glGetMapiv gload_glGetMapiv
typedef void (APIENTRYP PFNGLGETMAPIVPROC)(GLenum target, GLenum query, GLint *v);
GLAPI PFNGLGETMAPIVPROC gload_glGetMapiv;

#define glGetMaterialfv gload_glGetMaterialfv
typedef void (APIENTRYP PFNGLGETMATERIALFVPROC)(GLenum face, GLenum pname, GLfloat *params);
GLAPI PFNGLGETMATERIALFVPROC gload_glGetMaterialfv;

#define glGetMaterialiv gload_glGetMaterialiv
typedef void (APIENTRYP PFNGLGETMATERIALIVPROC)(GLenum face, GLenum pname, GLint *params);
GLAPI PFNGLGETMATERIALIVPROC gload_glGetMaterialiv;

#define glGetPixelMapfv gload_glGetPixelMapfv
typedef void (APIENTRYP PFNGLGETPIXELMAPFVPROC)(GLenum map, GLfloat *values);
GLAPI PFNGLGETPIXELMAPFVPROC gload_glGetPixelMapfv;

#define glGetPixelMapuiv gload_glGetPixelMapuiv
typedef void (APIENTRYP PFNGLGETPIXELMAPUIVPROC)(GLenum map, GLuint *values);
GLAPI PFNGLGETPIXELMAPUIVPROC gload_glGetPixelMapuiv;

#define glGetPixelMapusv gload_glGetPixelMapusv
typedef void (APIENTRYP PFNGLGETPIXELMAPUSVPROC)(GLenum map, GLushort *values);
GLAPI PFNGLGETPIXELMAPUSVPROC gload_glGetPixelMapusv;

#define glGetPolygonStipple gload_glGetPolygonStipple
typedef void (APIENTRYP PFNGLGETPOLYGONSTIPPLEPROC)(GLubyte *mask);
GLAPI PFNGLGETPOLYGONSTIPPLEPROC gload_glGetPolygonStipple;

#define glGetTexEnvfv gload_glGetTexEnvfv
typedef void (APIENTRYP PFNGLGETTEXENVFVPROC)(GLenum target, GLenum pname, GLfloat *params);
GLAPI PFNGLGETTEXENVFVPROC gload_glGetTexEnvfv;

#define glGetTexEnviv gload_glGetTexEnviv
typedef void (APIENTRYP PFNGLGETTEXENVIVPROC)(GLenum target, GLenum pname, GLint *params);
GLAPI PFNGLGETTEXENVIVPROC gload_glGetTexEnviv;

#define glGetTexGendv gload_glGetTexGendv
typedef void (APIENTRYP PFNGLGETTEXGENDVPROC)(GLenum coord, GLenum pname, GLdouble *params);
GLAPI PFNGLGETTEXGENDVPROC gload_glGetTexGendv;

#define glGetTexGenfv gload_glGetTexGenfv
typedef void (APIENTRYP PFNGLGETTEXGENFVPROC)(GLenum coord, GLenum pname, GLfloat *params);
GLAPI PFNGLGETTEXGENFVPROC gload_glGetTexGenfv;

#define glGetTexGeniv gload_glGetTexGeniv
typedef void (APIENTRYP PFNGLGETTEXGENIVPROC)(GLenum coord, GLenum pname, GLint *params);
GLAPI PFNGLGETTEXGENIVPROC gload_glGetTexGeniv;

#define glIsList gload_glIsList
typedef GLboolean (APIENTRYP PFNGLISLISTPROC)(GLuint list);
GLAPI PFNGLISLISTPROC gload_glIsList;

#define glFrustum gload_glFrustum
typedef void (APIENTRYP PFNGLFRUSTUMPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
GLAPI PFNGLFRUSTUMPROC gload_glFrustum;

#define glLoadIdentity gload_glLoadIdentity
typedef void (APIENTRYP PFNGLLOADIDENTITYPROC)(void);
GLAPI PFNGLLOADIDENTITYPROC gload_glLoadIdentity;

#define glLoadMatrixf gload_glLoadMatrixf
typedef void (APIENTRYP PFNGLLOADMATRIXFPROC)(const GLfloat *m);
GLAPI PFNGLLOADMATRIXFPROC gload_glLoadMatrixf;

#define glLoadMatrixd gload_glLoadMatrixd
typedef void (APIENTRYP PFNGLLOADMATRIXDPROC)(const GLdouble *m);
GLAPI PFNGLLOADMATRIXDPROC gload_glLoadMatrixd;

#define glMatrixMode gload_glMatrixMode
typedef void (APIENTRYP PFNGLMATRIXMODEPROC)(GLenum mode);
GLAPI PFNGLMATRIXMODEPROC gload_glMatrixMode;

#define glMultMatrixf gload_glMultMatrixf
typedef void (APIENTRYP PFNGLMULTMATRIXFPROC)(const GLfloat *m);
GLAPI PFNGLMULTMATRIXFPROC gload_glMultMatrixf;

#define glMultMatrixd gload_glMultMatrixd
typedef void (APIENTRYP PFNGLMULTMATRIXDPROC)(const GLdouble *m);
GLAPI PFNGLMULTMATRIXDPROC gload_glMultMatrixd;

#define glOrtho gload_glOrtho
typedef void (APIENTRYP PFNGLORTHOPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
GLAPI PFNGLORTHOPROC gload_glOrtho;

#define glPopMatrix gload_glPopMatrix
typedef void (APIENTRYP PFNGLPOPMATRIXPROC)(void);
GLAPI PFNGLPOPMATRIXPROC gload_glPopMatrix;

#define glPushMatrix gload_glPushMatrix
typedef void (APIENTRYP PFNGLPUSHMATRIXPROC)(void);
GLAPI PFNGLPUSHMATRIXPROC gload_glPushMatrix;

#define glRotated gload_glRotated
typedef void (APIENTRYP PFNGLROTATEDPROC)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLROTATEDPROC gload_glRotated;

#define glRotatef gload_glRotatef
typedef void (APIENTRYP PFNGLROTATEFPROC)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLROTATEFPROC gload_glRotatef;

#define glScaled gload_glScaled
typedef void (APIENTRYP PFNGLSCALEDPROC)(GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLSCALEDPROC gload_glScaled;

#define glScalef gload_glScalef
typedef void (APIENTRYP PFNGLSCALEFPROC)(GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLSCALEFPROC gload_glScalef;

#define glTranslated gload_glTranslated
typedef void (APIENTRYP PFNGLTRANSLATEDPROC)(GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLTRANSLATEDPROC gload_glTranslated;

#define glTranslatef gload_glTranslatef
typedef void (APIENTRYP PFNGLTRANSLATEFPROC)(GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLTRANSLATEFPROC gload_glTranslatef;


/***** OpenGL 1.1 *****/
#define GL_VERSION_1_1
#define GL_COLOR_LOGIC_OP 0x0BF2
#define GL_POLYGON_OFFSET_UNITS 0x2A00
#define GL_POLYGON_OFFSET_POINT 0x2A01
#define GL_POLYGON_OFFSET_LINE 0x2A02
#define GL_POLYGON_OFFSET_FILL 0x8037
#define GL_POLYGON_OFFSET_FACTOR 0x8038
#define GL_TEXTURE_BINDING_1D 0x8068
#define GL_TEXTURE_BINDING_2D 0x8069
#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
#define GL_TEXTURE_RED_SIZE 0x805C
#define GL_TEXTURE_GREEN_SIZE 0x805D
#define GL_TEXTURE_BLUE_SIZE 0x805E
#define GL_TEXTURE_ALPHA_SIZE 0x805F
#define GL_DOUBLE 0x140A
#define GL_PROXY_TEXTURE_1D 0x8063
#define GL_PROXY_TEXTURE_2D 0x8064
#define GL_R3_G3_B2 0x2A10
#define GL_RGB4 0x804F
#define GL_RGB5 0x8050
#define GL_RGB8 0x8051
#define GL_RGB10 0x8052
#define GL_RGB12 0x8053
#define GL_RGB16 0x8054
#define GL_RGBA2 0x8055
#define GL_RGBA4 0x8056
#define GL_RGB5_A1 0x8057
#define GL_RGBA8 0x8058
#define GL_RGB10_A2 0x8059
#define GL_RGBA12 0x805A
#define GL_RGBA16 0x805B
#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
#define GL_VERTEX_ARRAY_POINTER 0x808E
#define GL_NORMAL_ARRAY_POINTER 0x808F
#define GL_COLOR_ARRAY_POINTER 0x8090
#define GL_INDEX_ARRAY_POINTER 0x8091
#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
#define GL_SELECTION_BUFFER_POINTER 0x0DF3
#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
#define GL_INDEX_LOGIC_OP 0x0BF1
#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
#define GL_SELECTION_BUFFER_SIZE 0x0DF4
#define GL_VERTEX_ARRAY 0x8074
#define GL_NORMAL_ARRAY 0x8075
#define GL_COLOR_ARRAY 0x8076
#define GL_INDEX_ARRAY 0x8077
#define GL_TEXTURE_COORD_ARRAY 0x8078
#define GL_EDGE_FLAG_ARRAY 0x8079
#define GL_VERTEX_ARRAY_SIZE 0x807A
#define GL_VERTEX_ARRAY_TYPE 0x807B
#define GL_VERTEX_ARRAY_STRIDE 0x807C
#define GL_NORMAL_ARRAY_TYPE 0x807E
#define GL_NORMAL_ARRAY_STRIDE 0x807F
#define GL_COLOR_ARRAY_SIZE 0x8081
#define GL_COLOR_ARRAY_TYPE 0x8082
#define GL_COLOR_ARRAY_STRIDE 0x8083
#define GL_INDEX_ARRAY_TYPE 0x8085
#define GL_INDEX_ARRAY_STRIDE 0x8086
#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
#define GL_TEXTURE_INTENSITY_SIZE 0x8061
#define GL_TEXTURE_PRIORITY 0x8066
#define GL_TEXTURE_RESIDENT 0x8067
#define GL_ALPHA4 0x803B
#define GL_ALPHA8 0x803C
#define GL_ALPHA12 0x803D
#define GL_ALPHA16 0x803E
#define GL_LUMINANCE4 0x803F
#define GL_LUMINANCE8 0x8040
#define GL_LUMINANCE12 0x8041
#define GL_LUMINANCE16 0x8042
#define GL_LUMINANCE4_ALPHA4 0x8043
#define GL_LUMINANCE6_ALPHA2 0x8044
#define GL_LUMINANCE8_ALPHA8 0x8045
#define GL_LUMINANCE12_ALPHA4 0x8046
#define GL_LUMINANCE12_ALPHA12 0x8047
#define GL_LUMINANCE16_ALPHA16 0x8048
#define GL_INTENSITY 0x8049
#define GL_INTENSITY4 0x804A
#define GL_INTENSITY8 0x804B
#define GL_INTENSITY12 0x804C
#define GL_INTENSITY16 0x804D
#define GL_V2F 0x2A20
#define GL_V3F 0x2A21
#define GL_C4UB_V2F 0x2A22
#define GL_C4UB_V3F 0x2A23
#define GL_C3F_V3F 0x2A24
#define GL_N3F_V3F 0x2A25
#define GL_C4F_N3F_V3F 0x2A26
#define GL_T2F_V3F 0x2A27
#define GL_T4F_V4F 0x2A28
#define GL_T2F_C4UB_V3F 0x2A29
#define GL_T2F_C3F_V3F 0x2A2A
#define GL_T2F_N3F_V3F 0x2A2B
#define GL_T2F_C4F_N3F_V3F 0x2A2C
#define GL_T4F_C4F_N3F_V4F 0x2A2D
#define glDrawArrays gload_glDrawArrays
typedef void (APIENTRYP PFNGLDRAWARRAYSPROC)(GLenum mode, GLint first, GLsizei count);
GLAPI PFNGLDRAWARRAYSPROC gload_glDrawArrays;

#define glDrawElements gload_glDrawElements
typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices);
GLAPI PFNGLDRAWELEMENTSPROC gload_glDrawElements;

#define glGetPointerv gload_glGetPointerv
typedef void (APIENTRYP PFNGLGETPOINTERVPROC)(GLenum pname, void **params);
GLAPI PFNGLGETPOINTERVPROC gload_glGetPointerv;

#define glPolygonOffset gload_glPolygonOffset
typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC)(GLfloat factor, GLfloat units);
GLAPI PFNGLPOLYGONOFFSETPROC gload_glPolygonOffset;

#define glCopyTexImage1D gload_glCopyTexImage1D
typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
GLAPI PFNGLCOPYTEXIMAGE1DPROC gload_glCopyTexImage1D;

#define glCopyTexImage2D gload_glCopyTexImage2D
typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
GLAPI PFNGLCOPYTEXIMAGE2DPROC gload_glCopyTexImage2D;

#define glCopyTexSubImage1D gload_glCopyTexSubImage1D
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
GLAPI PFNGLCOPYTEXSUBIMAGE1DPROC gload_glCopyTexSubImage1D;

#define glCopyTexSubImage2D gload_glCopyTexSubImage2D
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
GLAPI PFNGLCOPYTEXSUBIMAGE2DPROC gload_glCopyTexSubImage2D;

#define glTexSubImage1D gload_glTexSubImage1D
typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXSUBIMAGE1DPROC gload_glTexSubImage1D;

#define glTexSubImage2D gload_glTexSubImage2D
typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXSUBIMAGE2DPROC gload_glTexSubImage2D;

#define glBindTexture gload_glBindTexture
typedef void (APIENTRYP PFNGLBINDTEXTUREPROC)(GLenum target, GLuint texture);
GLAPI PFNGLBINDTEXTUREPROC gload_glBindTexture;

#define glDeleteTextures gload_glDeleteTextures
typedef void (APIENTRYP PFNGLDELETETEXTURESPROC)(GLsizei n, const GLuint *textures);
GLAPI PFNGLDELETETEXTURESPROC gload_glDeleteTextures;

#define glGenTextures gload_glGenTextures
typedef void (APIENTRYP PFNGLGENTEXTURESPROC)(GLsizei n, GLuint *textures);
GLAPI PFNGLGENTEXTURESPROC gload_glGenTextures;

#define glIsTexture gload_glIsTexture
typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC)(GLuint texture);
GLAPI PFNGLISTEXTUREPROC gload_glIsTexture;

#define glArrayElement gload_glArrayElement
typedef void (APIENTRYP PFNGLARRAYELEMENTPROC)(GLint i);
GLAPI PFNGLARRAYELEMENTPROC gload_glArrayElement;

#define glColorPointer gload_glColorPointer
typedef void (APIENTRYP PFNGLCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLCOLORPOINTERPROC gload_glColorPointer;

#define glDisableClientState gload_glDisableClientState
typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEPROC)(GLenum array);
GLAPI PFNGLDISABLECLIENTSTATEPROC gload_glDisableClientState;

#define glEdgeFlagPointer gload_glEdgeFlagPointer
typedef void (APIENTRYP PFNGLEDGEFLAGPOINTERPROC)(GLsizei stride, const void *pointer);
GLAPI PFNGLEDGEFLAGPOINTERPROC gload_glEdgeFlagPointer;

#define glEnableClientState gload_glEnableClientState
typedef void (APIENTRYP PFNGLENABLECLIENTSTATEPROC)(GLenum array);
GLAPI PFNGLENABLECLIENTSTATEPROC gload_glEnableClientState;

#define glIndexPointer gload_glIndexPointer
typedef void (APIENTRYP PFNGLINDEXPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLINDEXPOINTERPROC gload_glIndexPointer;

#define glInterleavedArrays gload_glInterleavedArrays
typedef void (APIENTRYP PFNGLINTERLEAVEDARRAYSPROC)(GLenum format, GLsizei stride, const void *pointer);
GLAPI PFNGLINTERLEAVEDARRAYSPROC gload_glInterleavedArrays;

#define glNormalPointer gload_glNormalPointer
typedef void (APIENTRYP PFNGLNORMALPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLNORMALPOINTERPROC gload_glNormalPointer;

#define glTexCoordPointer gload_glTexCoordPointer
typedef void (APIENTRYP PFNGLTEXCOORDPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLTEXCOORDPOINTERPROC gload_glTexCoordPointer;

#define glVertexPointer gload_glVertexPointer
typedef void (APIENTRYP PFNGLVERTEXPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLVERTEXPOINTERPROC gload_glVertexPointer;

#define glAreTexturesResident gload_glAreTexturesResident
typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTPROC)(GLsizei n, const GLuint *textures, GLboolean *residences);
GLAPI PFNGLARETEXTURESRESIDENTPROC gload_glAreTexturesResident;

#define glPrioritizeTextures gload_glPrioritizeTextures
typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESPROC)(GLsizei n, const GLuint *textures, const GLfloat *priorities);
GLAPI PFNGLPRIORITIZETEXTURESPROC gload_glPrioritizeTextures;

#define glIndexub gload_glIndexub
typedef void (APIENTRYP PFNGLINDEXUBPROC)(GLubyte c);
GLAPI PFNGLINDEXUBPROC gload_glIndexub;

#define glIndexubv gload_glIndexubv
typedef void (APIENTRYP PFNGLINDEXUBVPROC)(const GLubyte *c);
GLAPI PFNGLINDEXUBVPROC gload_glIndexubv;

#define glPopClientAttrib gload_glPopClientAttrib
typedef void (APIENTRYP PFNGLPOPCLIENTATTRIBPROC)(void);
GLAPI PFNGLPOPCLIENTATTRIBPROC gload_glPopClientAttrib;

#define glPushClientAttrib gload_glPushClientAttrib
typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBPROC)(GLbitfield mask);
GLAPI PFNGLPUSHCLIENTATTRIBPROC gload_glPushClientAttrib;


/***** OpenGL 1.2 *****/
#define GL_VERSION_1_2
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
#define GL_UNSIGNED_INT_8_8_8_8 0x8035
#define GL_UNSIGNED_INT_10_10_10_2 0x8036
#define GL_TEXTURE_BINDING_3D 0x806A
#define GL_PACK_SKIP_IMAGES 0x806B
#define GL_PACK_IMAGE_HEIGHT 0x806C
#define GL_UNPACK_SKIP_IMAGES 0x806D
#define GL_UNPACK_IMAGE_HEIGHT 0x806E
#define GL_TEXTURE_3D 0x806F
#define GL_PROXY_TEXTURE_3D 0x8070
#define GL_TEXTURE_DEPTH 0x8071
#define GL_TEXTURE_WRAP_R 0x8072
#define GL_MAX_3D_TEXTURE_SIZE 0x8073
#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
#define GL_UNSIGNED_SHORT_5_6_5 0x8363
#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
#define GL_BGR 0x80E0
#define GL_BGRA 0x80E1
#define GL_MAX_ELEMENTS_VERTICES 0x80E8
#define GL_MAX_ELEMENTS_INDICES 0x80E9
#define GL_CLAMP_TO_EDGE 0x812F
#define GL_TEXTURE_MIN_LOD 0x813A
#define GL_TEXTURE_MAX_LOD 0x813B
#define GL_TEXTURE_BASE_LEVEL 0x813C
#define GL_TEXTURE_MAX_LEVEL 0x813D
#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
#define GL_RESCALE_NORMAL 0x803A
#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
#define GL_SINGLE_COLOR 0x81F9
#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
#define glDrawRangeElements gload_glDrawRangeElements
typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
GLAPI PFNGLDRAWRANGEELEMENTSPROC gload_glDrawRangeElements;

#define glTexImage3D gload_glTexImage3D
typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXIMAGE3DPROC gload_glTexImage3D;

#define glTexSubImage3D gload_glTexSubImage3D
typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
GLAPI PFNGLTEXSUBIMAGE3DPROC gload_glTexSubImage3D;

#define glCopyTexSubImage3D gload_glCopyTexSubImage3D
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
GLAPI PFNGLCOPYTEXSUBIMAGE3DPROC gload_glCopyTexSubImage3D;


/***** OpenGL 1.3 *****/
#define GL_VERSION_1_3
#define GL_TEXTURE0 0x84C0
#define GL_TEXTURE1 0x84C1
#define GL_TEXTURE2 0x84C2
#define GL_TEXTURE3 0x84C3
#define GL_TEXTURE4 0x84C4
#define GL_TEXTURE5 0x84C5
#define GL_TEXTURE6 0x84C6
#define GL_TEXTURE7 0x84C7
#define GL_TEXTURE8 0x84C8
#define GL_TEXTURE9 0x84C9
#define GL_TEXTURE10 0x84CA
#define GL_TEXTURE11 0x84CB
#define GL_TEXTURE12 0x84CC
#define GL_TEXTURE13 0x84CD
#define GL_TEXTURE14 0x84CE
#define GL_TEXTURE15 0x84CF
#define GL_TEXTURE16 0x84D0
#define GL_TEXTURE17 0x84D1
#define GL_TEXTURE18 0x84D2
#define GL_TEXTURE19 0x84D3
#define GL_TEXTURE20 0x84D4
#define GL_TEXTURE21 0x84D5
#define GL_TEXTURE22 0x84D6
#define GL_TEXTURE23 0x84D7
#define GL_TEXTURE24 0x84D8
#define GL_TEXTURE25 0x84D9
#define GL_TEXTURE26 0x84DA
#define GL_TEXTURE27 0x84DB
#define GL_TEXTURE28 0x84DC
#define GL_TEXTURE29 0x84DD
#define GL_TEXTURE30 0x84DE
#define GL_TEXTURE31 0x84DF
#define GL_ACTIVE_TEXTURE 0x84E0
#define GL_MULTISAMPLE 0x809D
#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
#define GL_SAMPLE_ALPHA_TO_ONE 0x809F
#define GL_SAMPLE_COVERAGE 0x80A0
#define GL_SAMPLE_BUFFERS 0x80A8
#define GL_SAMPLES 0x80A9
#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
#define GL_TEXTURE_CUBE_MAP 0x8513
#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
#define GL_COMPRESSED_RGB 0x84ED
#define GL_COMPRESSED_RGBA 0x84EE
#define GL_TEXTURE_COMPRESSION_HINT 0x84EF
#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
#define GL_TEXTURE_COMPRESSED 0x86A1
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
#define GL_CLAMP_TO_BORDER 0x812D
#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
#define GL_MAX_TEXTURE_UNITS 0x84E2
#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
#define GL_MULTISAMPLE_BIT 0x20000000
#define GL_NORMAL_MAP 0x8511
#define GL_REFLECTION_MAP 0x8512
#define GL_COMPRESSED_ALPHA 0x84E9
#define GL_COMPRESSED_LUMINANCE 0x84EA
#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
#define GL_COMPRESSED_INTENSITY 0x84EC
#define GL_COMBINE 0x8570
#define GL_COMBINE_RGB 0x8571
#define GL_COMBINE_ALPHA 0x8572
#define GL_SOURCE0_RGB 0x8580
#define GL_SOURCE1_RGB 0x8581
#define GL_SOURCE2_RGB 0x8582
#define GL_SOURCE0_ALPHA 0x8588
#define GL_SOURCE1_ALPHA 0x8589
#define GL_SOURCE2_ALPHA 0x858A
#define GL_OPERAND0_RGB 0x8590
#define GL_OPERAND1_RGB 0x8591
#define GL_OPERAND2_RGB 0x8592
#define GL_OPERAND0_ALPHA 0x8598
#define GL_OPERAND1_ALPHA 0x8599
#define GL_OPERAND2_ALPHA 0x859A
#define GL_RGB_SCALE 0x8573
#define GL_ADD_SIGNED 0x8574
#define GL_INTERPOLATE 0x8575
#define GL_SUBTRACT 0x84E7
#define GL_CONSTANT 0x8576
#define GL_PRIMARY_COLOR 0x8577
#define GL_PREVIOUS 0x8578
#define GL_DOT3_RGB 0x86AE
#define GL_DOT3_RGBA 0x86AF
#define glActiveTexture gload_glActiveTexture
typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC)(GLenum texture);
GLAPI PFNGLACTIVETEXTUREPROC gload_glActiveTexture;

#define glSampleCoverage gload_glSampleCoverage
typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC)(GLfloat value, GLboolean invert);
GLAPI PFNGLSAMPLECOVERAGEPROC gload_glSampleCoverage;

#define glCompressedTexImage3D gload_glCompressedTexImage3D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXIMAGE3DPROC gload_glCompressedTexImage3D;

#define glCompressedTexImage2D gload_glCompressedTexImage2D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXIMAGE2DPROC gload_glCompressedTexImage2D;

#define glCompressedTexImage1D gload_glCompressedTexImage1D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXIMAGE1DPROC gload_glCompressedTexImage1D;

#define glCompressedTexSubImage3D gload_glCompressedTexSubImage3D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC gload_glCompressedTexSubImage3D;

#define glCompressedTexSubImage2D gload_glCompressedTexSubImage2D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC gload_glCompressedTexSubImage2D;

#define glCompressedTexSubImage1D gload_glCompressedTexSubImage1D
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC gload_glCompressedTexSubImage1D;

#define glGetCompressedTexImage gload_glGetCompressedTexImage
typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC)(GLenum target, GLint level, void *img);
GLAPI PFNGLGETCOMPRESSEDTEXIMAGEPROC gload_glGetCompressedTexImage;

#define glClientActiveTexture gload_glClientActiveTexture
typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC)(GLenum texture);
GLAPI PFNGLCLIENTACTIVETEXTUREPROC gload_glClientActiveTexture;

#define glMultiTexCoord1d gload_glMultiTexCoord1d
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC)(GLenum target, GLdouble s);
GLAPI PFNGLMULTITEXCOORD1DPROC gload_glMultiTexCoord1d;

#define glMultiTexCoord1dv gload_glMultiTexCoord1dv
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC)(GLenum target, const GLdouble *v);
GLAPI PFNGLMULTITEXCOORD1DVPROC gload_glMultiTexCoord1dv;

#define glMultiTexCoord1f gload_glMultiTexCoord1f
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FPROC)(GLenum target, GLfloat s);
GLAPI PFNGLMULTITEXCOORD1FPROC gload_glMultiTexCoord1f;

#define glMultiTexCoord1fv gload_glMultiTexCoord1fv
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVPROC)(GLenum target, const GLfloat *v);
GLAPI PFNGLMULTITEXCOORD1FVPROC gload_glMultiTexCoord1fv;

#define glMultiTexCoord1i gload_glMultiTexCoord1i
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IPROC)(GLenum target, GLint s);
GLAPI PFNGLMULTITEXCOORD1IPROC gload_glMultiTexCoord1i;

#define glMultiTexCoord1iv gload_glMultiTexCoord1iv
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVPROC)(GLenum target, const GLint *v);
GLAPI PFNGLMULTITEXCOORD1IVPROC gload_glMultiTexCoord1iv;

#define glMultiTexCoord1s gload_glMultiTexCoord1s
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SPROC)(GLenum target, GLshort s);
GLAPI PFNGLMULTITEXCOORD1SPROC gload_glMultiTexCoord1s;

#define glMultiTexCoord1sv gload_glMultiTexCoord1sv
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVPROC)(GLenum target, const GLshort *v);
GLAPI PFNGLMULTITEXCOORD1SVPROC gload_glMultiTexCoord1sv;

#define glMultiTexCoord2d gload_glMultiTexCoord2d
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DPROC)(GLenum target, GLdouble s, GLdouble t);
GLAPI PFNGLMULTITEXCOORD2DPROC gload_glMultiTexCoord2d;

#define glMultiTexCoord2dv gload_glMultiTexCoord2dv
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVPROC)(GLenum target, const GLdouble *v);
GLAPI PFNGLMULTITEXCOORD2DVPROC gload_glMultiTexCoord2dv;

#define glMultiTexCoord2f gload_glMultiTexCoord2f
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FPROC)(GLenum target, GLfloat s, GLfloat t);
GLAPI PFNGLMULTITEXCOORD2FPROC gload_glMultiTexCoord2f;

#define glMultiTexCoord2fv gload_glMultiTexCoord2fv
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVPROC)(GLenum target, const GLfloat *v);
GLAPI PFNGLMULTITEXCOORD2FVPROC gload_glMultiTexCoord2fv;

#define glMultiTexCoord2i gload_glMultiTexCoord2i
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IPROC)(GLenum target, GLint s, GLint t);
GLAPI PFNGLMULTITEXCOORD2IPROC gload_glMultiTexCoord2i;

#define glMultiTexCoord2iv gload_glMultiTexCoord2iv
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVPROC)(GLenum target, const GLint *v);
GLAPI PFNGLMULTITEXCOORD2IVPROC gload_glMultiTexCoord2iv;

#define glMultiTexCoord2s gload_glMultiTexCoord2s
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SPROC)(GLenum target, GLshort s, GLshort t);
GLAPI PFNGLMULTITEXCOORD2SPROC gload_glMultiTexCoord2s;

#define glMultiTexCoord2sv gload_glMultiTexCoord2sv
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVPROC)(GLenum target, const GLshort *v);
GLAPI PFNGLMULTITEXCOORD2SVPROC gload_glMultiTexCoord2sv;

#define glMultiTexCoord3d gload_glMultiTexCoord3d
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r);
GLAPI PFNGLMULTITEXCOORD3DPROC gload_glMultiTexCoord3d;

#define glMultiTexCoord3dv gload_glMultiTexCoord3dv
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVPROC)(GLenum target, const GLdouble *v);
GLAPI PFNGLMULTITEXCOORD3DVPROC gload_glMultiTexCoord3dv;

#define glMultiTexCoord3f gload_glMultiTexCoord3f
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r);
GLAPI PFNGLMULTITEXCOORD3FPROC gload_glMultiTexCoord3f;

#define glMultiTexCoord3fv gload_glMultiTexCoord3fv
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVPROC)(GLenum target, const GLfloat *v);
GLAPI PFNGLMULTITEXCOORD3FVPROC gload_glMultiTexCoord3fv;

#define glMultiTexCoord3i gload_glMultiTexCoord3i
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IPROC)(GLenum target, GLint s, GLint t, GLint r);
GLAPI PFNGLMULTITEXCOORD3IPROC gload_glMultiTexCoord3i;

#define glMultiTexCoord3iv gload_glMultiTexCoord3iv
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVPROC)(GLenum target, const GLint *v);
GLAPI PFNGLMULTITEXCOORD3IVPROC gload_glMultiTexCoord3iv;

#define glMultiTexCoord3s gload_glMultiTexCoord3s
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SPROC)(GLenum target, GLshort s, GLshort t, GLshort r);
GLAPI PFNGLMULTITEXCOORD3SPROC gload_glMultiTexCoord3s;

#define glMultiTexCoord3sv gload_glMultiTexCoord3sv
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVPROC)(GLenum target, const GLshort *v);
GLAPI PFNGLMULTITEXCOORD3SVPROC gload_glMultiTexCoord3sv;

#define glMultiTexCoord4d gload_glMultiTexCoord4d
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
GLAPI PFNGLMULTITEXCOORD4DPROC gload_glMultiTexCoord4d;

#define glMultiTexCoord4dv gload_glMultiTexCoord4dv
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVPROC)(GLenum target, const GLdouble *v);
GLAPI PFNGLMULTITEXCOORD4DVPROC gload_glMultiTexCoord4dv;

#define glMultiTexCoord4f gload_glMultiTexCoord4f
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
GLAPI PFNGLMULTITEXCOORD4FPROC gload_glMultiTexCoord4f;

#define glMultiTexCoord4fv gload_glMultiTexCoord4fv
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVPROC)(GLenum target, const GLfloat *v);
GLAPI PFNGLMULTITEXCOORD4FVPROC gload_glMultiTexCoord4fv;

#define glMultiTexCoord4i gload_glMultiTexCoord4i
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IPROC)(GLenum target, GLint s, GLint t, GLint r, GLint q);
GLAPI PFNGLMULTITEXCOORD4IPROC gload_glMultiTexCoord4i;

#define glMultiTexCoord4iv gload_glMultiTexCoord4iv
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVPROC)(GLenum target, const GLint *v);
GLAPI PFNGLMULTITEXCOORD4IVPROC gload_glMultiTexCoord4iv;

#define glMultiTexCoord4s gload_glMultiTexCoord4s
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SPROC)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
GLAPI PFNGLMULTITEXCOORD4SPROC gload_glMultiTexCoord4s;

#define glMultiTexCoord4sv gload_glMultiTexCoord4sv
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVPROC)(GLenum target, const GLshort *v);
GLAPI PFNGLMULTITEXCOORD4SVPROC gload_glMultiTexCoord4sv;

#define glLoadTransposeMatrixf gload_glLoadTransposeMatrixf
typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXFPROC)(const GLfloat *m);
GLAPI PFNGLLOADTRANSPOSEMATRIXFPROC gload_glLoadTransposeMatrixf;

#define glLoadTransposeMatrixd gload_glLoadTransposeMatrixd
typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXDPROC)(const GLdouble *m);
GLAPI PFNGLLOADTRANSPOSEMATRIXDPROC gload_glLoadTransposeMatrixd;

#define glMultTransposeMatrixf gload_glMultTransposeMatrixf
typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXFPROC)(const GLfloat *m);
GLAPI PFNGLMULTTRANSPOSEMATRIXFPROC gload_glMultTransposeMatrixf;

#define glMultTransposeMatrixd gload_glMultTransposeMatrixd
typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC)(const GLdouble *m);
GLAPI PFNGLMULTTRANSPOSEMATRIXDPROC gload_glMultTransposeMatrixd;


/***** OpenGL 1.4 *****/
#define GL_VERSION_1_4
#define GL_BLEND_DST_RGB 0x80C8
#define GL_BLEND_SRC_RGB 0x80C9
#define GL_BLEND_DST_ALPHA 0x80CA
#define GL_BLEND_SRC_ALPHA 0x80CB
#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
#define GL_DEPTH_COMPONENT16 0x81A5
#define GL_DEPTH_COMPONENT24 0x81A6
#define GL_DEPTH_COMPONENT32 0x81A7
#define GL_MIRRORED_REPEAT 0x8370
#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD
#define GL_TEXTURE_LOD_BIAS 0x8501
#define GL_INCR_WRAP 0x8507
#define GL_DECR_WRAP 0x8508
#define GL_TEXTURE_DEPTH_SIZE 0x884A
#define GL_TEXTURE_COMPARE_MODE 0x884C
#define GL_TEXTURE_COMPARE_FUNC 0x884D
#define GL_POINT_SIZE_MIN 0x8126
#define GL_POINT_SIZE_MAX 0x8127
#define GL_POINT_DISTANCE_ATTENUATION 0x8129
#define GL_GENERATE_MIPMAP 0x8191
#define GL_GENERATE_MIPMAP_HINT 0x8192
#define GL_FOG_COORDINATE_SOURCE 0x8450
#define GL_FOG_COORDINATE 0x8451
#define GL_FRAGMENT_DEPTH 0x8452
#define GL_CURRENT_FOG_COORDINATE 0x8453
#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
#define GL_FOG_COORDINATE_ARRAY 0x8457
#define GL_COLOR_SUM 0x8458
#define GL_CURRENT_SECONDARY_COLOR 0x8459
#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
#define GL_SECONDARY_COLOR_ARRAY 0x845E
#define GL_TEXTURE_FILTER_CONTROL 0x8500
#define GL_DEPTH_TEXTURE_MODE 0x884B
#define GL_COMPARE_R_TO_TEXTURE 0x884E
#define glBlendFuncSeparate gload_glBlendFuncSeparate
typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
GLAPI PFNGLBLENDFUNCSEPARATEPROC gload_glBlendFuncSeparate;

#define glMultiDrawArrays gload_glMultiDrawArrays
typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
GLAPI PFNGLMULTIDRAWARRAYSPROC gload_glMultiDrawArrays;

#define glMultiDrawElements gload_glMultiDrawElements
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount);
GLAPI PFNGLMULTIDRAWELEMENTSPROC gload_glMultiDrawElements;

#define glPointParameterf gload_glPointParameterf
typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC)(GLenum pname, GLfloat param);
GLAPI PFNGLPOINTPARAMETERFPROC gload_glPointParameterf;

#define glPointParameterfv gload_glPointParameterfv
typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC)(GLenum pname, const GLfloat *params);
GLAPI PFNGLPOINTPARAMETERFVPROC gload_glPointParameterfv;

#define glPointParameteri gload_glPointParameteri
typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC)(GLenum pname, GLint param);
GLAPI PFNGLPOINTPARAMETERIPROC gload_glPointParameteri;

#define glPointParameteriv gload_glPointParameteriv
typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC)(GLenum pname, const GLint *params);
GLAPI PFNGLPOINTPARAMETERIVPROC gload_glPointParameteriv;

#define glFogCoordf gload_glFogCoordf
typedef void (APIENTRYP PFNGLFOGCOORDFPROC)(GLfloat coord);
GLAPI PFNGLFOGCOORDFPROC gload_glFogCoordf;

#define glFogCoordfv gload_glFogCoordfv
typedef void (APIENTRYP PFNGLFOGCOORDFVPROC)(const GLfloat *coord);
GLAPI PFNGLFOGCOORDFVPROC gload_glFogCoordfv;

#define glFogCoordd gload_glFogCoordd
typedef void (APIENTRYP PFNGLFOGCOORDDPROC)(GLdouble coord);
GLAPI PFNGLFOGCOORDDPROC gload_glFogCoordd;

#define glFogCoorddv gload_glFogCoorddv
typedef void (APIENTRYP PFNGLFOGCOORDDVPROC)(const GLdouble *coord);
GLAPI PFNGLFOGCOORDDVPROC gload_glFogCoorddv;

#define glFogCoordPointer gload_glFogCoordPointer
typedef void (APIENTRYP PFNGLFOGCOORDPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLFOGCOORDPOINTERPROC gload_glFogCoordPointer;

#define glSecondaryColor3b gload_glSecondaryColor3b
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue);
GLAPI PFNGLSECONDARYCOLOR3BPROC gload_glSecondaryColor3b;

#define glSecondaryColor3bv gload_glSecondaryColor3bv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BVPROC)(const GLbyte *v);
GLAPI PFNGLSECONDARYCOLOR3BVPROC gload_glSecondaryColor3bv;

#define glSecondaryColor3d gload_glSecondaryColor3d
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue);
GLAPI PFNGLSECONDARYCOLOR3DPROC gload_glSecondaryColor3d;

#define glSecondaryColor3dv gload_glSecondaryColor3dv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DVPROC)(const GLdouble *v);
GLAPI PFNGLSECONDARYCOLOR3DVPROC gload_glSecondaryColor3dv;

#define glSecondaryColor3f gload_glSecondaryColor3f
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue);
GLAPI PFNGLSECONDARYCOLOR3FPROC gload_glSecondaryColor3f;

#define glSecondaryColor3fv gload_glSecondaryColor3fv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FVPROC)(const GLfloat *v);
GLAPI PFNGLSECONDARYCOLOR3FVPROC gload_glSecondaryColor3fv;

#define glSecondaryColor3i gload_glSecondaryColor3i
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IPROC)(GLint red, GLint green, GLint blue);
GLAPI PFNGLSECONDARYCOLOR3IPROC gload_glSecondaryColor3i;

#define glSecondaryColor3iv gload_glSecondaryColor3iv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IVPROC)(const GLint *v);
GLAPI PFNGLSECONDARYCOLOR3IVPROC gload_glSecondaryColor3iv;

#define glSecondaryColor3s gload_glSecondaryColor3s
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue);
GLAPI PFNGLSECONDARYCOLOR3SPROC gload_glSecondaryColor3s;

#define glSecondaryColor3sv gload_glSecondaryColor3sv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SVPROC)(const GLshort *v);
GLAPI PFNGLSECONDARYCOLOR3SVPROC gload_glSecondaryColor3sv;

#define glSecondaryColor3ub gload_glSecondaryColor3ub
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue);
GLAPI PFNGLSECONDARYCOLOR3UBPROC gload_glSecondaryColor3ub;

#define glSecondaryColor3ubv gload_glSecondaryColor3ubv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBVPROC)(const GLubyte *v);
GLAPI PFNGLSECONDARYCOLOR3UBVPROC gload_glSecondaryColor3ubv;

#define glSecondaryColor3ui gload_glSecondaryColor3ui
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue);
GLAPI PFNGLSECONDARYCOLOR3UIPROC gload_glSecondaryColor3ui;

#define glSecondaryColor3uiv gload_glSecondaryColor3uiv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIVPROC)(const GLuint *v);
GLAPI PFNGLSECONDARYCOLOR3UIVPROC gload_glSecondaryColor3uiv;

#define glSecondaryColor3us gload_glSecondaryColor3us
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue);
GLAPI PFNGLSECONDARYCOLOR3USPROC gload_glSecondaryColor3us;

#define glSecondaryColor3usv gload_glSecondaryColor3usv
typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USVPROC)(const GLushort *v);
GLAPI PFNGLSECONDARYCOLOR3USVPROC gload_glSecondaryColor3usv;

#define glSecondaryColorPointer gload_glSecondaryColorPointer
typedef void (APIENTRYP PFNGLSECONDARYCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
GLAPI PFNGLSECONDARYCOLORPOINTERPROC gload_glSecondaryColorPointer;

#define glWindowPos2d gload_glWindowPos2d
typedef void (APIENTRYP PFNGLWINDOWPOS2DPROC)(GLdouble x, GLdouble y);
GLAPI PFNGLWINDOWPOS2DPROC gload_glWindowPos2d;

#define glWindowPos2dv gload_glWindowPos2dv
typedef void (APIENTRYP PFNGLWINDOWPOS2DVPROC)(const GLdouble *v);
GLAPI PFNGLWINDOWPOS2DVPROC gload_glWindowPos2dv;

#define glWindowPos2f gload_glWindowPos2f
typedef void (APIENTRYP PFNGLWINDOWPOS2FPROC)(GLfloat x, GLfloat y);
GLAPI PFNGLWINDOWPOS2FPROC gload_glWindowPos2f;

#define glWindowPos2fv gload_glWindowPos2fv
typedef void (APIENTRYP PFNGLWINDOWPOS2FVPROC)(const GLfloat *v);
GLAPI PFNGLWINDOWPOS2FVPROC gload_glWindowPos2fv;

#define glWindowPos2i gload_glWindowPos2i
typedef void (APIENTRYP PFNGLWINDOWPOS2IPROC)(GLint x, GLint y);
GLAPI PFNGLWINDOWPOS2IPROC gload_glWindowPos2i;

#define glWindowPos2iv gload_glWindowPos2iv
typedef void (APIENTRYP PFNGLWINDOWPOS2IVPROC)(const GLint *v);
GLAPI PFNGLWINDOWPOS2IVPROC gload_glWindowPos2iv;

#define glWindowPos2s gload_glWindowPos2s
typedef void (APIENTRYP PFNGLWINDOWPOS2SPROC)(GLshort x, GLshort y);
GLAPI PFNGLWINDOWPOS2SPROC gload_glWindowPos2s;

#define glWindowPos2sv gload_glWindowPos2sv
typedef void (APIENTRYP PFNGLWINDOWPOS2SVPROC)(const GLshort *v);
GLAPI PFNGLWINDOWPOS2SVPROC gload_glWindowPos2sv;

#define glWindowPos3d gload_glWindowPos3d
typedef void (APIENTRYP PFNGLWINDOWPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLWINDOWPOS3DPROC gload_glWindowPos3d;

#define glWindowPos3dv gload_glWindowPos3dv
typedef void (APIENTRYP PFNGLWINDOWPOS3DVPROC)(const GLdouble *v);
GLAPI PFNGLWINDOWPOS3DVPROC gload_glWindowPos3dv;

#define glWindowPos3f gload_glWindowPos3f
typedef void (APIENTRYP PFNGLWINDOWPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLWINDOWPOS3FPROC gload_glWindowPos3f;

#define glWindowPos3fv gload_glWindowPos3fv
typedef void (APIENTRYP PFNGLWINDOWPOS3FVPROC)(const GLfloat *v);
GLAPI PFNGLWINDOWPOS3FVPROC gload_glWindowPos3fv;

#define glWindowPos3i gload_glWindowPos3i
typedef void (APIENTRYP PFNGLWINDOWPOS3IPROC)(GLint x, GLint y, GLint z);
GLAPI PFNGLWINDOWPOS3IPROC gload_glWindowPos3i;

#define glWindowPos3iv gload_glWindowPos3iv
typedef void (APIENTRYP PFNGLWINDOWPOS3IVPROC)(const GLint *v);
GLAPI PFNGLWINDOWPOS3IVPROC gload_glWindowPos3iv;

#define glWindowPos3s gload_glWindowPos3s
typedef void (APIENTRYP PFNGLWINDOWPOS3SPROC)(GLshort x, GLshort y, GLshort z);
GLAPI PFNGLWINDOWPOS3SPROC gload_glWindowPos3s;

#define glWindowPos3sv gload_glWindowPos3sv
typedef void (APIENTRYP PFNGLWINDOWPOS3SVPROC)(const GLshort *v);
GLAPI PFNGLWINDOWPOS3SVPROC gload_glWindowPos3sv;


/***** OpenGL 1.5 *****/
#define GL_VERSION_1_5
#define GL_BUFFER_SIZE 0x8764
#define GL_BUFFER_USAGE 0x8765
#define GL_QUERY_COUNTER_BITS 0x8864
#define GL_CURRENT_QUERY 0x8865
#define GL_QUERY_RESULT 0x8866
#define GL_QUERY_RESULT_AVAILABLE 0x8867
#define GL_ARRAY_BUFFER 0x8892
#define GL_ELEMENT_ARRAY_BUFFER 0x8893
#define GL_ARRAY_BUFFER_BINDING 0x8894
#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
#define GL_READ_ONLY 0x88B8
#define GL_WRITE_ONLY 0x88B9
#define GL_READ_WRITE 0x88BA
#define GL_BUFFER_ACCESS 0x88BB
#define GL_BUFFER_MAPPED 0x88BC
#define GL_BUFFER_MAP_POINTER 0x88BD
#define GL_STREAM_DRAW 0x88E0
#define GL_STREAM_READ 0x88E1
#define GL_STREAM_COPY 0x88E2
#define GL_STATIC_DRAW 0x88E4
#define GL_STATIC_READ 0x88E5
#define GL_STATIC_COPY 0x88E6
#define GL_DYNAMIC_DRAW 0x88E8
#define GL_DYNAMIC_READ 0x88E9
#define GL_DYNAMIC_COPY 0x88EA
#define GL_SAMPLES_PASSED 0x8914
#define GL_SRC1_ALPHA 0x8589
#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899
#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A
#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B
#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C
#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D
#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E
#define GL_FOG_COORD_SRC 0x8450
#define GL_FOG_COORD 0x8451
#define GL_CURRENT_FOG_COORD 0x8453
#define GL_FOG_COORD_ARRAY_TYPE 0x8454
#define GL_FOG_COORD_ARRAY_STRIDE 0x8455
#define GL_FOG_COORD_ARRAY_POINTER 0x8456
#define GL_FOG_COORD_ARRAY 0x8457
#define GL_FOG_COORD_ARRAY_BUFFER_BINDING 0x889D
#define GL_SRC0_RGB 0x8580
#define GL_SRC1_RGB 0x8581
#define GL_SRC2_RGB 0x8582
#define GL_SRC0_ALPHA 0x8588
#define GL_SRC2_ALPHA 0x858A
#define glGenQueries gload_glGenQueries
typedef void (APIENTRYP PFNGLGENQUERIESPROC)(GLsizei n, GLuint *ids);
GLAPI PFNGLGENQUERIESPROC gload_glGenQueries;

#define glDeleteQueries gload_glDeleteQueries
typedef void (APIENTRYP PFNGLDELETEQUERIESPROC)(GLsizei n, const GLuint *ids);
GLAPI PFNGLDELETEQUERIESPROC gload_glDeleteQueries;

#define glIsQuery gload_glIsQuery
typedef GLboolean (APIENTRYP PFNGLISQUERYPROC)(GLuint id);
GLAPI PFNGLISQUERYPROC gload_glIsQuery;

#define glBeginQuery gload_glBeginQuery
typedef void (APIENTRYP PFNGLBEGINQUERYPROC)(GLenum target, GLuint id);
GLAPI PFNGLBEGINQUERYPROC gload_glBeginQuery;

#define glEndQuery gload_glEndQuery
typedef void (APIENTRYP PFNGLENDQUERYPROC)(GLenum target);
GLAPI PFNGLENDQUERYPROC gload_glEndQuery;

#define glGetQueryiv gload_glGetQueryiv
typedef void (APIENTRYP PFNGLGETQUERYIVPROC)(GLenum target, GLenum pname, GLint *params);
GLAPI PFNGLGETQUERYIVPROC gload_glGetQueryiv;

#define glGetQueryObjectiv gload_glGetQueryObjectiv
typedef void (APIENTRYP PFNGLGETQUERYOBJECTIVPROC)(GLuint id, GLenum pname, GLint *params);
GLAPI PFNGLGETQUERYOBJECTIVPROC gload_glGetQueryObjectiv;

#define glGetQueryObjectuiv gload_glGetQueryObjectuiv
typedef void (APIENTRYP PFNGLGETQUERYOBJECTUIVPROC)(GLuint id, GLenum pname, GLuint *params);
GLAPI PFNGLGETQUERYOBJECTUIVPROC gload_glGetQueryObjectuiv;

#define glBindBuffer gload_glBindBuffer
typedef void (APIENTRYP PFNGLBINDBUFFERPROC)(GLenum target, GLuint buffer);
GLAPI PFNGLBINDBUFFERPROC gload_glBindBuffer;

#define glDeleteBuffers gload_glDeleteBuffers
typedef void (APIENTRYP PFNGLDELETEBUFFERSPROC)(GLsizei n, const GLuint *buffers);
GLAPI PFNGLDELETEBUFFERSPROC gload_glDeleteBuffers;

#define glGenBuffers gload_glGenBuffers
typedef void (APIENTRYP PFNGLGENBUFFERSPROC)(GLsizei n, GLuint *buffers);
GLAPI PFNGLGENBUFFERSPROC gload_glGenBuffers;

#define glIsBuffer gload_glIsBuffer
typedef GLboolean (APIENTRYP PFNGLISBUFFERPROC)(GLuint buffer);
GLAPI PFNGLISBUFFERPROC gload_glIsBuffer;

#define glBufferData gload_glBufferData
typedef void (APIENTRYP PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const void *data, GLenum usage);
GLAPI PFNGLBUFFERDATAPROC gload_glBufferData;

#define glBufferSubData gload_glBufferSubData
typedef void (APIENTRYP PFNGLBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
GLAPI PFNGLBUFFERSUBDATAPROC gload_glBufferSubData;

#define glGetBufferSubData gload_glGetBufferSubData
typedef void (APIENTRYP PFNGLGETBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, void *data);
GLAPI PFNGLGETBUFFERSUBDATAPROC gload_glGetBufferSubData;

#define glMapBuffer gload_glMapBuffer
typedef void *(APIENTRYP PFNGLMAPBUFFERPROC)(GLenum target, GLenum access);
GLAPI PFNGLMAPBUFFERPROC gload_glMapBuffer;

#define glUnmapBuffer gload_glUnmapBuffer
typedef GLboolean (APIENTRYP PFNGLUNMAPBUFFERPROC)(GLenum target);
GLAPI PFNGLUNMAPBUFFERPROC gload_glUnmapBuffer;

#define glGetBufferParameteriv gload_glGetBufferParameteriv
typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
GLAPI PFNGLGETBUFFERPARAMETERIVPROC gload_glGetBufferParameteriv;

#define glGetBufferPointerv gload_glGetBufferPointerv
typedef void (APIENTRYP PFNGLGETBUFFERPOINTERVPROC)(GLenum target, GLenum pname, void **params);
GLAPI PFNGLGETBUFFERPOINTERVPROC gload_glGetBufferPointerv;


/***** OpenGL 2.0 *****/
#define GL_VERSION_2_0
#define GL_BLEND_EQUATION_RGB 0x8009
#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
#define GL_CURRENT_VERTEX_ATTRIB 0x8626
#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
#define GL_STENCIL_BACK_FUNC 0x8800
#define GL_STENCIL_BACK_FAIL 0x8801
#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
#define GL_MAX_DRAW_BUFFERS 0x8824
#define GL_DRAW_BUFFER0 0x8825
#define GL_DRAW_BUFFER1 0x8826
#define GL_DRAW_BUFFER2 0x8827
#define GL_DRAW_BUFFER3 0x8828
#define GL_DRAW_BUFFER4 0x8829
#define GL_DRAW_BUFFER5 0x882A
#define GL_DRAW_BUFFER6 0x882B
#define GL_DRAW_BUFFER7 0x882C
#define GL_DRAW_BUFFER8 0x882D
#define GL_DRAW_BUFFER9 0x882E
#define GL_DRAW_BUFFER10 0x882F
#define GL_DRAW_BUFFER11 0x8830
#define GL_DRAW_BUFFER12 0x8831
#define GL_DRAW_BUFFER13 0x8832
#define GL_DRAW_BUFFER14 0x8833
#define GL_DRAW_BUFFER15 0x8834
#define GL_BLEND_EQUATION_ALPHA 0x883D
#define GL_MAX_VERTEX_ATTRIBS 0x8869
#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
#define GL_FRAGMENT_SHADER 0x8B30
#define GL_VERTEX_SHADER 0x8B31
#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
#define GL_MAX_VARYING_FLOATS 0x8B4B
#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
#define GL_SHADER_TYPE 0x8B4F
#define GL_FLOAT_VEC2 0x8B50
#define GL_FLOAT_VEC3 0x8B51
#define GL_FLOAT_VEC4 0x8B52
#define GL_INT_VEC2 0x8B53
#define GL_INT_VEC3 0x8B54
#define GL_INT_VEC4 0x8B55
#define GL_BOOL 0x8B56
#define GL_BOOL_VEC2 0x8B57
#define GL_BOOL_VEC3 0x8B58
#define GL_BOOL_VEC4 0x8B59
#define GL_FLOAT_MAT2 0x8B5A
#define GL_FLOAT_MAT3 0x8B5B
#define GL_FLOAT_MAT4 0x8B5C
#define GL_SAMPLER_1D 0x8B5D
#define GL_SAMPLER_2D 0x8B5E
#define GL_SAMPLER_3D 0x8B5F
#define GL_SAMPLER_CUBE 0x8B60
#define GL_SAMPLER_1D_SHADOW 0x8B61
#define GL_SAMPLER_2D_SHADOW 0x8B62
#define GL_DELETE_STATUS 0x8B80
#define GL_COMPILE_STATUS 0x8B81
#define GL_LINK_STATUS 0x8B82
#define GL_VALIDATE_STATUS 0x8B83
#define GL_INFO_LOG_LENGTH 0x8B84
#define GL_ATTACHED_SHADERS 0x8B85
#define GL_ACTIVE_UNIFORMS 0x8B86
#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
#define GL_SHADER_SOURCE_LENGTH 0x8B88
#define GL_ACTIVE_ATTRIBUTES 0x8B89
#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
#define GL_CURRENT_PROGRAM 0x8B8D
#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0
#define GL_LOWER_LEFT 0x8CA1
#define GL_UPPER_LEFT 0x8CA2
#define GL_STENCIL_BACK_REF 0x8CA3
#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
#define GL_POINT_SPRITE 0x8861
#define GL_COORD_REPLACE 0x8862
#define GL_MAX_TEXTURE_COORDS 0x8871
#define glBlendEquationSeparate gload_glBlendEquationSeparate
typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEPROC)(GLenum modeRGB, GLenum modeAlpha);
GLAPI PFNGLBLENDEQUATIONSEPARATEPROC gload_glBlendEquationSeparate;

#define glDrawBuffers gload_glDrawBuffers
typedef void (APIENTRYP PFNGLDRAWBUFFERSPROC)(GLsizei n, const GLenum *bufs);
GLAPI PFNGLDRAWBUFFERSPROC gload_glDrawBuffers;

#define glStencilOpSeparate gload_glStencilOpSeparate
typedef void (APIENTRYP PFNGLSTENCILOPSEPARATEPROC)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
GLAPI PFNGLSTENCILOPSEPARATEPROC gload_glStencilOpSeparate;

#define glStencilFuncSeparate gload_glStencilFuncSeparate
typedef void (APIENTRYP PFNGLSTENCILFUNCSEPARATEPROC)(GLenum face, GLenum func, GLint ref, GLuint mask);
GLAPI PFNGLSTENCILFUNCSEPARATEPROC gload_glStencilFuncSeparate;

#define glStencilMaskSeparate gload_glStencilMaskSeparate
typedef void (APIENTRYP PFNGLSTENCILMASKSEPARATEPROC)(GLenum face, GLuint mask);
GLAPI PFNGLSTENCILMASKSEPARATEPROC gload_glStencilMaskSeparate;

#define glAttachShader gload_glAttachShader
typedef void (APIENTRYP PFNGLATTACHSHADERPROC)(GLuint program, GLuint shader);
GLAPI PFNGLATTACHSHADERPROC gload_glAttachShader;

#define glBindAttribLocation gload_glBindAttribLocation
typedef void (APIENTRYP PFNGLBINDATTRIBLOCATIONPROC)(GLuint program, GLuint index, const GLchar *name);
GLAPI PFNGLBINDATTRIBLOCATIONPROC gload_glBindAttribLocation;

#define glCompileShader gload_glCompileShader
typedef void (APIENTRYP PFNGLCOMPILESHADERPROC)(GLuint shader);
GLAPI PFNGLCOMPILESHADERPROC gload_glCompileShader;

#define glCreateProgram gload_glCreateProgram
typedef GLuint (APIENTRYP PFNGLCREATEPROGRAMPROC)(void);
GLAPI PFNGLCREATEPROGRAMPROC gload_glCreateProgram;

#define glCreateShader gload_glCreateShader
typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC)(GLenum type);
GLAPI PFNGLCREATESHADERPROC gload_glCreateShader;

#define glDeleteProgram gload_glDeleteProgram
typedef void (APIENTRYP PFNGLDELETEPROGRAMPROC)(GLuint program);
GLAPI PFNGLDELETEPROGRAMPROC gload_glDeleteProgram;

#define glDeleteShader gload_glDeleteShader
typedef void (APIENTRYP PFNGLDELETESHADERPROC)(GLuint shader);
GLAPI PFNGLDELETESHADERPROC gload_glDeleteShader;

#define glDetachShader gload_glDetachShader
typedef void (APIENTRYP PFNGLDETACHSHADERPROC)(GLuint program, GLuint shader);
GLAPI PFNGLDETACHSHADERPROC gload_glDetachShader;

#define glDisableVertexAttribArray gload_glDisableVertexAttribArray
typedef void (APIENTRYP PFNGLDISABLEVERTEXATTRIBARRAYPROC)(GLuint index);
GLAPI PFNGLDISABLEVERTEXATTRIBARRAYPROC gload_glDisableVertexAttribArray;

#define glEnableVertexAttribArray gload_glEnableVertexAttribArray
typedef void (APIENTRYP PFNGLENABLEVERTEXATTRIBARRAYPROC)(GLuint index);
GLAPI PFNGLENABLEVERTEXATTRIBARRAYPROC gload_glEnableVertexAttribArray;

#define glGetActiveAttrib gload_glGetActiveAttrib
typedef void (APIENTRYP PFNGLGETACTIVEATTRIBPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
GLAPI PFNGLGETACTIVEATTRIBPROC gload_glGetActiveAttrib;

#define glGetActiveUniform gload_glGetActiveUniform
typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
GLAPI PFNGLGETACTIVEUNIFORMPROC gload_glGetActiveUniform;

#define glGetAttachedShaders gload_glGetAttachedShaders
typedef void (APIENTRYP PFNGLGETATTACHEDSHADERSPROC)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
GLAPI PFNGLGETATTACHEDSHADERSPROC gload_glGetAttachedShaders;

#define glGetAttribLocation gload_glGetAttribLocation
typedef GLint (APIENTRYP PFNGLGETATTRIBLOCATIONPROC)(GLuint program, const GLchar *name);
GLAPI PFNGLGETATTRIBLOCATIONPROC gload_glGetAttribLocation;

#define glGetProgramiv gload_glGetProgramiv
typedef void (APIENTRYP PFNGLGETPROGRAMIVPROC)(GLuint program, GLenum pname, GLint *params);
GLAPI PFNGLGETPROGRAMIVPROC gload_glGetProgramiv;

#define glGetProgramInfoLog gload_glGetProgramInfoLog
typedef void (APIENTRYP PFNGLGETPROGRAMINFOLOGPROC)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
GLAPI PFNGLGETPROGRAMINFOLOGPROC gload_glGetProgramInfoLog;

#define glGetShaderiv gload_glGetShaderiv
typedef void (APIENTRYP PFNGLGETSHADERIVPROC)(GLuint shader, GLenum pname, GLint *params);
GLAPI PFNGLGETSHADERIVPROC gload_glGetShaderiv;

#define glGetShaderInfoLog gload_glGetShaderInfoLog
typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
GLAPI PFNGLGETSHADERINFOLOGPROC gload_glGetShaderInfoLog;

#define glGetShaderSource gload_glGetShaderSource
typedef void (APIENTRYP PFNGLGETSHADERSOURCEPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
GLAPI PFNGLGETSHADERSOURCEPROC gload_glGetShaderSource;

#define glGetUniformLocation gload_glGetUniformLocation
typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC)(GLuint program, const GLchar *name);
GLAPI PFNGLGETUNIFORMLOCATIONPROC gload_glGetUniformLocation;

#define glGetUniformfv gload_glGetUniformfv
typedef void (APIENTRYP PFNGLGETUNIFORMFVPROC)(GLuint program, GLint location, GLfloat *params);
GLAPI PFNGLGETUNIFORMFVPROC gload_glGetUniformfv;

#define glGetUniformiv gload_glGetUniformiv
typedef void (APIENTRYP PFNGLGETUNIFORMIVPROC)(GLuint program, GLint location, GLint *params);
GLAPI PFNGLGETUNIFORMIVPROC gload_glGetUniformiv;

#define glGetVertexAttribdv gload_glGetVertexAttribdv
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBDVPROC)(GLuint index, GLenum pname, GLdouble *params);
GLAPI PFNGLGETVERTEXATTRIBDVPROC gload_glGetVertexAttribdv;

#define glGetVertexAttribfv gload_glGetVertexAttribfv
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBFVPROC)(GLuint index, GLenum pname, GLfloat *params);
GLAPI PFNGLGETVERTEXATTRIBFVPROC gload_glGetVertexAttribfv;

#define glGetVertexAttribiv gload_glGetVertexAttribiv
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC)(GLuint index, GLenum pname, GLint *params);
GLAPI PFNGLGETVERTEXATTRIBIVPROC gload_glGetVertexAttribiv;

#define glGetVertexAttribPointerv gload_glGetVertexAttribPointerv
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC)(GLuint index, GLenum pname, void **pointer);
GLAPI PFNGLGETVERTEXATTRIBPOINTERVPROC gload_glGetVertexAttribPointerv;

#define glIsProgram gload_glIsProgram
typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC)(GLuint program);
GLAPI PFNGLISPROGRAMPROC gload_glIsProgram;

#define glIsShader gload_glIsShader
typedef GLboolean (APIENTRYP PFNGLISSHADERPROC)(GLuint shader);
GLAPI PFNGLISSHADERPROC gload_glIsShader;

#define glLinkProgram gload_glLinkProgram
typedef void (APIENTRYP PFNGLLINKPROGRAMPROC)(GLuint program);
GLAPI PFNGLLINKPROGRAMPROC gload_glLinkProgram;

#define glShaderSource gload_glShaderSource
typedef void (APIENTRYP PFNGLSHADERSOURCEPROC)(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
GLAPI PFNGLSHADERSOURCEPROC gload_glShaderSource;

#define glUseProgram gload_glUseProgram
typedef void (APIENTRYP PFNGLUSEPROGRAMPROC)(GLuint program);
GLAPI PFNGLUSEPROGRAMPROC gload_glUseProgram;

#define glUniform1f gload_glUniform1f
typedef void (APIENTRYP PFNGLUNIFORM1FPROC)(GLint location, GLfloat v0);
GLAPI PFNGLUNIFORM1FPROC gload_glUniform1f;

#define glUniform2f gload_glUniform2f
typedef void (APIENTRYP PFNGLUNIFORM2FPROC)(GLint location, GLfloat v0, GLfloat v1);
GLAPI PFNGLUNIFORM2FPROC gload_glUniform2f;

#define glUniform3f gload_glUniform3f
typedef void (APIENTRYP PFNGLUNIFORM3FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
GLAPI PFNGLUNIFORM3FPROC gload_glUniform3f;

#define glUniform4f gload_glUniform4f
typedef void (APIENTRYP PFNGLUNIFORM4FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
GLAPI PFNGLUNIFORM4FPROC gload_glUniform4f;

#define glUniform1i gload_glUniform1i
typedef void (APIENTRYP PFNGLUNIFORM1IPROC)(GLint location, GLint v0);
GLAPI PFNGLUNIFORM1IPROC gload_glUniform1i;

#define glUniform2i gload_glUniform2i
typedef void (APIENTRYP PFNGLUNIFORM2IPROC)(GLint location, GLint v0, GLint v1);
GLAPI PFNGLUNIFORM2IPROC gload_glUniform2i;

#define glUniform3i gload_glUniform3i
typedef void (APIENTRYP PFNGLUNIFORM3IPROC)(GLint location, GLint v0, GLint v1, GLint v2);
GLAPI PFNGLUNIFORM3IPROC gload_glUniform3i;

#define glUniform4i gload_glUniform4i
typedef void (APIENTRYP PFNGLUNIFORM4IPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
GLAPI PFNGLUNIFORM4IPROC gload_glUniform4i;

#define glUniform1fv gload_glUniform1fv
typedef void (APIENTRYP PFNGLUNIFORM1FVPROC)(GLint location, GLsizei count, const GLfloat *value);
GLAPI PFNGLUNIFORM1FVPROC gload_glUniform1fv;

#define glUniform2fv gload_glUniform2fv
typedef void (APIENTRYP PFNGLUNIFORM2FVPROC)(GLint location, GLsizei count, const GLfloat *value);
GLAPI PFNGLUNIFORM2FVPROC gload_glUniform2fv;

#define glUniform3fv gload_glUniform3fv
typedef void (APIENTRYP PFNGLUNIFORM3FVPROC)(GLint location, GLsizei count, const GLfloat *value);
GLAPI PFNGLUNIFORM3FVPROC gload_glUniform3fv;

#define glUniform4fv gload_glUniform4fv
typedef void (APIENTRYP PFNGLUNIFORM4FVPROC)(GLint location, GLsizei count, const GLfloat *value);
GLAPI PFNGLUNIFORM4FVPROC gload_glUniform4fv;

#define glUniform1iv gload_glUniform1iv
typedef void (APIENTRYP PFNGLUNIFORM1IVPROC)(GLint location, GLsizei count, const GLint *value);
GLAPI PFNGLUNIFORM1IVPROC gload_glUniform1iv;

#define glUniform2iv gload_glUniform2iv
typedef void (APIENTRYP PFNGLUNIFORM2IVPROC)(GLint location, GLsizei count, const GLint *value);
GLAPI PFNGLUNIFORM2IVPROC gload_glUniform2iv;

#define glUniform3iv gload_glUniform3iv
typedef void (APIENTRYP PFNGLUNIFORM3IVPROC)(GLint location, GLsizei count, const GLint *value);
GLAPI PFNGLUNIFORM3IVPROC gload_glUniform3iv;

#define glUniform4iv gload_glUniform4iv
typedef void (APIENTRYP PFNGLUNIFORM4IVPROC)(GLint location, GLsizei count, const GLint *value);
GLAPI PFNGLUNIFORM4IVPROC gload_glUniform4iv;

#define glUniformMatrix2fv gload_glUniformMatrix2fv
typedef void (APIENTRYP PFNGLUNIFORMMATRIX2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
GLAPI PFNGLUNIFORMMATRIX2FVPROC gload_glUniformMatrix2fv;

#define glUniformMatrix3fv gload_glUniformMatrix3fv
typedef void (APIENTRYP PFNGLUNIFORMMATRIX3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
GLAPI PFNGLUNIFORMMATRIX3FVPROC gload_glUniformMatrix3fv;

#define glUniformMatrix4fv gload_glUniformMatrix4fv
typedef void (APIENTRYP PFNGLUNIFORMMATRIX4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
GLAPI PFNGLUNIFORMMATRIX4FVPROC gload_glUniformMatrix4fv;

#define glValidateProgram gload_glValidateProgram
typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPROC)(GLuint program);
GLAPI PFNGLVALIDATEPROGRAMPROC gload_glValidateProgram;

#define glVertexAttrib1d gload_glVertexAttrib1d
typedef void (APIENTRYP PFNGLVERTEXATTRIB1DPROC)(GLuint index, GLdouble x);
GLAPI PFNGLVERTEXATTRIB1DPROC gload_glVertexAttrib1d;

#define glVertexAttrib1dv gload_glVertexAttrib1dv
typedef void (APIENTRYP PFNGLVERTEXATTRIB1DVPROC)(GLuint index, const GLdouble *v);
GLAPI PFNGLVERTEXATTRIB1DVPROC gload_glVertexAttrib1dv;

#define glVertexAttrib1f gload_glVertexAttrib1f
typedef void (APIENTRYP PFNGLVERTEXATTRIB1FPROC)(GLuint index, GLfloat x);
GLAPI PFNGLVERTEXATTRIB1FPROC gload_glVertexAttrib1f;

#define glVertexAttrib1fv gload_glVertexAttrib1fv
typedef void (APIENTRYP PFNGLVERTEXATTRIB1FVPROC)(GLuint index, const GLfloat *v);
GLAPI PFNGLVERTEXATTRIB1FVPROC gload_glVertexAttrib1fv;

#define glVertexAttrib1s gload_glVertexAttrib1s
typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC)(GLuint index, GLshort x);
GLAPI PFNGLVERTEXATTRIB1SPROC gload_glVertexAttrib1s;

#define glVertexAttrib1sv gload_glVertexAttrib1sv
typedef void (APIENTRYP PFNGLVERTEXATTRIB1SVPROC)(GLuint index, const GLshort *v);
GLAPI PFNGLVERTEXATTRIB1SVPROC gload_glVertexAttrib1sv;

#define glVertexAttrib2d gload_glVertexAttrib2d
typedef void (APIENTRYP PFNGLVERTEXATTRIB2DPROC)(GLuint index, GLdouble x, GLdouble y);
GLAPI PFNGLVERTEXATTRIB2DPROC gload_glVertexAttrib2d;

#define glVertexAttrib2dv gload_glVertexAttrib2dv
typedef void (APIENTRYP PFNGLVERTEXATTRIB2DVPROC)(GLuint index, const GLdouble *v);
GLAPI PFNGLVERTEXATTRIB2DVPROC gload_glVertexAttrib2dv;

#define glVertexAttrib2f gload_glVertexAttrib2f
typedef void (APIENTRYP PFNGLVERTEXATTRIB2FPROC)(GLuint index, GLfloat x, GLfloat y);
GLAPI PFNGLVERTEXATTRIB2FPROC gload_glVertexAttrib2f;

#define glVertexAttrib2fv gload_glVertexAttrib2fv
typedef void (APIENTRYP PFNGLVERTEXATTRIB2FVPROC)(GLuint index, const GLfloat *v);
GLAPI PFNGLVERTEXATTRIB2FVPROC gload_glVertexAttrib2fv;

#define glVertexAttrib2s gload_glVertexAttrib2s
typedef void (APIENTRYP PFNGLVERTEXATTRIB2SPROC)(GLuint index, GLshort x, GLshort y);
GLAPI PFNGLVERTEXATTRIB2SPROC gload_glVertexAttrib2s;

#define glVertexAttrib2sv gload_glVertexAttrib2sv
typedef void (APIENTRYP PFNGLVERTEXATTRIB2SVPROC)(GLuint index, const GLshort *v);
GLAPI PFNGLVERTEXATTRIB2SVPROC gload_glVertexAttrib2sv;

#define glVertexAttrib3d gload_glVertexAttrib3d
typedef void (APIENTRYP PFNGLVERTEXATTRIB3DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
GLAPI PFNGLVERTEXATTRIB3DPROC gload_glVertexAttrib3d;

#define glVertexAttrib3dv gload_glVertexAttrib3dv
typedef void (APIENTRYP PFNGLVERTEXATTRIB3DVPROC)(GLuint index, const GLdouble *v);
GLAPI PFNGLVERTEXATTRIB3DVPROC gload_glVertexAttrib3dv;

#define glVertexAttrib3f gload_glVertexAttrib3f
typedef void (APIENTRYP PFNGLVERTEXATTRIB3FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
GLAPI PFNGLVERTEXATTRIB3FPROC gload_glVertexAttrib3f;

#define glVertexAttrib3fv gload_glVertexAttrib3fv
typedef void (APIENTRYP PFNGLVERTEXATTRIB3FVPROC)(GLuint index, const GLfloat *v);
GLAPI PFNGLVERTEXATTRIB3FVPROC gload_glVertexAttrib3fv;

#define glVertexAttrib3s gload_glVertexAttrib3s
typedef void (APIENTRYP PFNGLVERTEXATTRIB3SPROC)(GLuint index, GLshort x, GLshort y, GLshort z);
GLAPI PFNGLVERTEXATTRIB3SPROC gload_glVertexAttrib3s;

#define glVertexAttrib3sv gload_glVertexAttrib3sv
typedef void (APIENTRYP PFNGLVERTEXATTRIB3SVPROC)(GLuint index, const GLshort *v);
GLAPI PFNGLVERTEXATTRIB3SVPROC gload_glVertexAttrib3sv;

#define glVertexAttrib4Nbv gload_glVertexAttrib4Nbv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NBVPROC)(GLuint index, const GLbyte *v);
GLAPI PFNGLVERTEXATTRIB4NBVPROC gload_glVertexAttrib4Nbv;

#define glVertexAttrib4Niv gload_glVertexAttrib4Niv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NIVPROC)(GLuint index, const GLint *v);
GLAPI PFNGLVERTEXATTRIB4NIVPROC gload_glVertexAttrib4Niv;

#define glVertexAttrib4Nsv gload_glVertexAttrib4Nsv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NSVPROC)(GLuint index, const GLshort *v);
GLAPI PFNGLVERTEXATTRIB4NSVPROC gload_glVertexAttrib4Nsv;

#define glVertexAttrib4Nub gload_glVertexAttrib4Nub
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBPROC)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
GLAPI PFNGLVERTEXATTRIB4NUBPROC gload_glVertexAttrib4Nub;

#define glVertexAttrib4Nubv gload_glVertexAttrib4Nubv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBVPROC)(GLuint index, const GLubyte *v);
GLAPI PFNGLVERTEXATTRIB4NUBVPROC gload_glVertexAttrib4Nubv;

#define glVertexAttrib4Nuiv gload_glVertexAttrib4Nuiv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUIVPROC)(GLuint index, const GLuint *v);
GLAPI PFNGLVERTEXATTRIB4NUIVPROC gload_glVertexAttrib4Nuiv;

#define glVertexAttrib4Nusv gload_glVertexAttrib4Nusv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUSVPROC)(GLuint index, const GLushort *v);
GLAPI PFNGLVERTEXATTRIB4NUSVPROC gload_glVertexAttrib4Nusv;

#define glVertexAttrib4bv gload_glVertexAttrib4bv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4BVPROC)(GLuint index, const GLbyte *v);
GLAPI PFNGLVERTEXATTRIB4BVPROC gload_glVertexAttrib4bv;

#define glVertexAttrib4d gload_glVertexAttrib4d
typedef void (APIENTRYP PFNGLVERTEXATTRIB4DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
GLAPI PFNGLVERTEXATTRIB4DPROC gload_glVertexAttrib4d;

#define glVertexAttrib4dv gload_glVertexAttrib4dv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4DVPROC)(GLuint index, const GLdouble *v);
GLAPI PFNGLVERTEXATTRIB4DVPROC gload_glVertexAttrib4dv;

#define glVertexAttrib4f gload_glVertexAttrib4f
typedef void (APIENTRYP PFNGLVERTEXATTRIB4FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
GLAPI PFNGLVERTEXATTRIB4FPROC gload_glVertexAttrib4f;

#define glVertexAttrib4fv gload_glVertexAttrib4fv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC)(GLuint index, const GLfloat *v);
GLAPI PFNGLVERTEXATTRIB4FVPROC gload_glVertexAttrib4fv;

#define glVertexAttrib4iv gload_glVertexAttrib4iv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4IVPROC)(GLuint index, const GLint *v);
GLAPI PFNGLVERTEXATTRIB4IVPROC gload_glVertexAttrib4iv;

#define glVertexAttrib4s gload_glVertexAttrib4s
typedef void (APIENTRYP PFNGLVERTEXATTRIB4SPROC)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
GLAPI PFNGLVERTEXATTRIB4SPROC gload_glVertexAttrib4s;

#define glVertexAttrib4sv gload_glVertexAttrib4sv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4SVPROC)(GLuint index, const GLshort *v);
GLAPI PFNGLVERTEXATTRIB4SVPROC gload_glVertexAttrib4sv;

#define glVertexAttrib4ubv gload_glVertexAttrib4ubv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4UBVPROC)(GLuint index, const GLubyte *v);
GLAPI PFNGLVERTEXATTRIB4UBVPROC gload_glVertexAttrib4ubv;

#define glVertexAttrib4uiv gload_glVertexAttrib4uiv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4UIVPROC)(GLuint index, const GLuint *v);
GLAPI PFNGLVERTEXATTRIB4UIVPROC gload_glVertexAttrib4uiv;

#define glVertexAttrib4usv gload_glVertexAttrib4usv
typedef void (APIENTRYP PFNGLVERTEXATTRIB4USVPROC)(GLuint index, const GLushort *v);
GLAPI PFNGLVERTEXATTRIB4USVPROC gload_glVertexAttrib4usv;

#define glVertexAttribPointer gload_glVertexAttribPointer
typedef void (APIENTRYP PFNGLVERTEXATTRIBPOINTERPROC)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
GLAPI PFNGLVERTEXATTRIBPOINTERPROC gload_glVertexAttribPointer;


#ifdef GLOAD_IMPLEMENTATION
PFNGLCULLFACEPROC gload_glCullFace;
PFNGLFRONTFACEPROC gload_glFrontFace;
PFNGLHINTPROC gload_glHint;
PFNGLLINEWIDTHPROC gload_glLineWidth;
PFNGLPOINTSIZEPROC gload_glPointSize;
PFNGLPOLYGONMODEPROC gload_glPolygonMode;
PFNGLSCISSORPROC gload_glScissor;
PFNGLTEXPARAMETERFPROC gload_glTexParameterf;
PFNGLTEXPARAMETERFVPROC gload_glTexParameterfv;
PFNGLTEXPARAMETERIPROC gload_glTexParameteri;
PFNGLTEXPARAMETERIVPROC gload_glTexParameteriv;
PFNGLTEXIMAGE1DPROC gload_glTexImage1D;
PFNGLTEXIMAGE2DPROC gload_glTexImage2D;
PFNGLDRAWBUFFERPROC gload_glDrawBuffer;
PFNGLCLEARPROC gload_glClear;
PFNGLCLEARCOLORPROC gload_glClearColor;
PFNGLCLEARSTENCILPROC gload_glClearStencil;
PFNGLCLEARDEPTHPROC gload_glClearDepth;
PFNGLSTENCILMASKPROC gload_glStencilMask;
PFNGLCOLORMASKPROC gload_glColorMask;
PFNGLDEPTHMASKPROC gload_glDepthMask;
PFNGLDISABLEPROC gload_glDisable;
PFNGLENABLEPROC gload_glEnable;
PFNGLFINISHPROC gload_glFinish;
PFNGLFLUSHPROC gload_glFlush;
PFNGLBLENDFUNCPROC gload_glBlendFunc;
PFNGLLOGICOPPROC gload_glLogicOp;
PFNGLSTENCILFUNCPROC gload_glStencilFunc;
PFNGLSTENCILOPPROC gload_glStencilOp;
PFNGLDEPTHFUNCPROC gload_glDepthFunc;
PFNGLPIXELSTOREFPROC gload_glPixelStoref;
PFNGLPIXELSTOREIPROC gload_glPixelStorei;
PFNGLREADBUFFERPROC gload_glReadBuffer;
PFNGLREADPIXELSPROC gload_glReadPixels;
PFNGLGETBOOLEANVPROC gload_glGetBooleanv;
PFNGLGETDOUBLEVPROC gload_glGetDoublev;
PFNGLGETERRORPROC gload_glGetError;
PFNGLGETFLOATVPROC gload_glGetFloatv;
PFNGLGETINTEGERVPROC gload_glGetIntegerv;
PFNGLGETSTRINGPROC gload_glGetString;
PFNGLGETTEXIMAGEPROC gload_glGetTexImage;
PFNGLGETTEXPARAMETERFVPROC gload_glGetTexParameterfv;
PFNGLGETTEXPARAMETERIVPROC gload_glGetTexParameteriv;
PFNGLGETTEXLEVELPARAMETERFVPROC gload_glGetTexLevelParameterfv;
PFNGLGETTEXLEVELPARAMETERIVPROC gload_glGetTexLevelParameteriv;
PFNGLISENABLEDPROC gload_glIsEnabled;
PFNGLDEPTHRANGEPROC gload_glDepthRange;
PFNGLVIEWPORTPROC gload_glViewport;
PFNGLNEWLISTPROC gload_glNewList;
PFNGLENDLISTPROC gload_glEndList;
PFNGLCALLLISTPROC gload_glCallList;
PFNGLCALLLISTSPROC gload_glCallLists;
PFNGLDELETELISTSPROC gload_glDeleteLists;
PFNGLGENLISTSPROC gload_glGenLists;
PFNGLLISTBASEPROC gload_glListBase;
PFNGLBEGINPROC gload_glBegin;
PFNGLBITMAPPROC gload_glBitmap;
PFNGLCOLOR3BPROC gload_glColor3b;
PFNGLCOLOR3BVPROC gload_glColor3bv;
PFNGLCOLOR3DPROC gload_glColor3d;
PFNGLCOLOR3DVPROC gload_glColor3dv;
PFNGLCOLOR3FPROC gload_glColor3f;
PFNGLCOLOR3FVPROC gload_glColor3fv;
PFNGLCOLOR3IPROC gload_glColor3i;
PFNGLCOLOR3IVPROC gload_glColor3iv;
PFNGLCOLOR3SPROC gload_glColor3s;
PFNGLCOLOR3SVPROC gload_glColor3sv;
PFNGLCOLOR3UBPROC gload_glColor3ub;
PFNGLCOLOR3UBVPROC gload_glColor3ubv;
PFNGLCOLOR3UIPROC gload_glColor3ui;
PFNGLCOLOR3UIVPROC gload_glColor3uiv;
PFNGLCOLOR3USPROC gload_glColor3us;
PFNGLCOLOR3USVPROC gload_glColor3usv;
PFNGLCOLOR4BPROC gload_glColor4b;
PFNGLCOLOR4BVPROC gload_glColor4bv;
PFNGLCOLOR4DPROC gload_glColor4d;
PFNGLCOLOR4DVPROC gload_glColor4dv;
PFNGLCOLOR4FPROC gload_glColor4f;
PFNGLCOLOR4FVPROC gload_glColor4fv;
PFNGLCOLOR4IPROC gload_glColor4i;
PFNGLCOLOR4IVPROC gload_glColor4iv;
PFNGLCOLOR4SPROC gload_glColor4s;
PFNGLCOLOR4SVPROC gload_glColor4sv;
PFNGLCOLOR4UBPROC gload_glColor4ub;
PFNGLCOLOR4UBVPROC gload_glColor4ubv;
PFNGLCOLOR4UIPROC gload_glColor4ui;
PFNGLCOLOR4UIVPROC gload_glColor4uiv;
PFNGLCOLOR4USPROC gload_glColor4us;
PFNGLCOLOR4USVPROC gload_glColor4usv;
PFNGLEDGEFLAGPROC gload_glEdgeFlag;
PFNGLEDGEFLAGVPROC gload_glEdgeFlagv;
PFNGLENDPROC gload_glEnd;
PFNGLINDEXDPROC gload_glIndexd;
PFNGLINDEXDVPROC gload_glIndexdv;
PFNGLINDEXFPROC gload_glIndexf;
PFNGLINDEXFVPROC gload_glIndexfv;
PFNGLINDEXIPROC gload_glIndexi;
PFNGLINDEXIVPROC gload_glIndexiv;
PFNGLINDEXSPROC gload_glIndexs;
PFNGLINDEXSVPROC gload_glIndexsv;
PFNGLNORMAL3BPROC gload_glNormal3b;
PFNGLNORMAL3BVPROC gload_glNormal3bv;
PFNGLNORMAL3DPROC gload_glNormal3d;
PFNGLNORMAL3DVPROC gload_glNormal3dv;
PFNGLNORMAL3FPROC gload_glNormal3f;
PFNGLNORMAL3FVPROC gload_glNormal3fv;
PFNGLNORMAL3IPROC gload_glNormal3i;
PFNGLNORMAL3IVPROC gload_glNormal3iv;
PFNGLNORMAL3SPROC gload_glNormal3s;
PFNGLNORMAL3SVPROC gload_glNormal3sv;
PFNGLRASTERPOS2DPROC gload_glRasterPos2d;
PFNGLRASTERPOS2DVPROC gload_glRasterPos2dv;
PFNGLRASTERPOS2FPROC gload_glRasterPos2f;
PFNGLRASTERPOS2FVPROC gload_glRasterPos2fv;
PFNGLRASTERPOS2IPROC gload_glRasterPos2i;
PFNGLRASTERPOS2IVPROC gload_glRasterPos2iv;
PFNGLRASTERPOS2SPROC gload_glRasterPos2s;
PFNGLRASTERPOS2SVPROC gload_glRasterPos2sv;
PFNGLRASTERPOS3DPROC gload_glRasterPos3d;
PFNGLRASTERPOS3DVPROC gload_glRasterPos3dv;
PFNGLRASTERPOS3FPROC gload_glRasterPos3f;
PFNGLRASTERPOS3FVPROC gload_glRasterPos3fv;
PFNGLRASTERPOS3IPROC gload_glRasterPos3i;
PFNGLRASTERPOS3IVPROC gload_glRasterPos3iv;
PFNGLRASTERPOS3SPROC gload_glRasterPos3s;
PFNGLRASTERPOS3SVPROC gload_glRasterPos3sv;
PFNGLRASTERPOS4DPROC gload_glRasterPos4d;
PFNGLRASTERPOS4DVPROC gload_glRasterPos4dv;
PFNGLRASTERPOS4FPROC gload_glRasterPos4f;
PFNGLRASTERPOS4FVPROC gload_glRasterPos4fv;
PFNGLRASTERPOS4IPROC gload_glRasterPos4i;
PFNGLRASTERPOS4IVPROC gload_glRasterPos4iv;
PFNGLRASTERPOS4SPROC gload_glRasterPos4s;
PFNGLRASTERPOS4SVPROC gload_glRasterPos4sv;
PFNGLRECTDPROC gload_glRectd;
PFNGLRECTDVPROC gload_glRectdv;
PFNGLRECTFPROC gload_glRectf;
PFNGLRECTFVPROC gload_glRectfv;
PFNGLRECTIPROC gload_glRecti;
PFNGLRECTIVPROC gload_glRectiv;
PFNGLRECTSPROC gload_glRects;
PFNGLRECTSVPROC gload_glRectsv;
PFNGLTEXCOORD1DPROC gload_glTexCoord1d;
PFNGLTEXCOORD1DVPROC gload_glTexCoord1dv;
PFNGLTEXCOORD1FPROC gload_glTexCoord1f;
PFNGLTEXCOORD1FVPROC gload_glTexCoord1fv;
PFNGLTEXCOORD1IPROC gload_glTexCoord1i;
PFNGLTEXCOORD1IVPROC gload_glTexCoord1iv;
PFNGLTEXCOORD1SPROC gload_glTexCoord1s;
PFNGLTEXCOORD1SVPROC gload_glTexCoord1sv;
PFNGLTEXCOORD2DPROC gload_glTexCoord2d;
PFNGLTEXCOORD2DVPROC gload_glTexCoord2dv;
PFNGLTEXCOORD2FPROC gload_glTexCoord2f;
PFNGLTEXCOORD2FVPROC gload_glTexCoord2fv;
PFNGLTEXCOORD2IPROC gload_glTexCoord2i;
PFNGLTEXCOORD2IVPROC gload_glTexCoord2iv;
PFNGLTEXCOORD2SPROC gload_glTexCoord2s;
PFNGLTEXCOORD2SVPROC gload_glTexCoord2sv;
PFNGLTEXCOORD3DPROC gload_glTexCoord3d;
PFNGLTEXCOORD3DVPROC gload_glTexCoord3dv;
PFNGLTEXCOORD3FPROC gload_glTexCoord3f;
PFNGLTEXCOORD3FVPROC gload_glTexCoord3fv;
PFNGLTEXCOORD3IPROC gload_glTexCoord3i;
PFNGLTEXCOORD3IVPROC gload_glTexCoord3iv;
PFNGLTEXCOORD3SPROC gload_glTexCoord3s;
PFNGLTEXCOORD3SVPROC gload_glTexCoord3sv;
PFNGLTEXCOORD4DPROC gload_glTexCoord4d;
PFNGLTEXCOORD4DVPROC gload_glTexCoord4dv;
PFNGLTEXCOORD4FPROC gload_glTexCoord4f;
PFNGLTEXCOORD4FVPROC gload_glTexCoord4fv;
PFNGLTEXCOORD4IPROC gload_glTexCoord4i;
PFNGLTEXCOORD4IVPROC gload_glTexCoord4iv;
PFNGLTEXCOORD4SPROC gload_glTexCoord4s;
PFNGLTEXCOORD4SVPROC gload_glTexCoord4sv;
PFNGLVERTEX2DPROC gload_glVertex2d;
PFNGLVERTEX2DVPROC gload_glVertex2dv;
PFNGLVERTEX2FPROC gload_glVertex2f;
PFNGLVERTEX2FVPROC gload_glVertex2fv;
PFNGLVERTEX2IPROC gload_glVertex2i;
PFNGLVERTEX2IVPROC gload_glVertex2iv;
PFNGLVERTEX2SPROC gload_glVertex2s;
PFNGLVERTEX2SVPROC gload_glVertex2sv;
PFNGLVERTEX3DPROC gload_glVertex3d;
PFNGLVERTEX3DVPROC gload_glVertex3dv;
PFNGLVERTEX3FPROC gload_glVertex3f;
PFNGLVERTEX3FVPROC gload_glVertex3fv;
PFNGLVERTEX3IPROC gload_glVertex3i;
PFNGLVERTEX3IVPROC gload_glVertex3iv;
PFNGLVERTEX3SPROC gload_glVertex3s;
PFNGLVERTEX3SVPROC gload_glVertex3sv;
PFNGLVERTEX4DPROC gload_glVertex4d;
PFNGLVERTEX4DVPROC gload_glVertex4dv;
PFNGLVERTEX4FPROC gload_glVertex4f;
PFNGLVERTEX4FVPROC gload_glVertex4fv;
PFNGLVERTEX4IPROC gload_glVertex4i;
PFNGLVERTEX4IVPROC gload_glVertex4iv;
PFNGLVERTEX4SPROC gload_glVertex4s;
PFNGLVERTEX4SVPROC gload_glVertex4sv;
PFNGLCLIPPLANEPROC gload_glClipPlane;
PFNGLCOLORMATERIALPROC gload_glColorMaterial;
PFNGLFOGFPROC gload_glFogf;
PFNGLFOGFVPROC gload_glFogfv;
PFNGLFOGIPROC gload_glFogi;
PFNGLFOGIVPROC gload_glFogiv;
PFNGLLIGHTFPROC gload_glLightf;
PFNGLLIGHTFVPROC gload_glLightfv;
PFNGLLIGHTIPROC gload_glLighti;
PFNGLLIGHTIVPROC gload_glLightiv;
PFNGLLIGHTMODELFPROC gload_glLightModelf;
PFNGLLIGHTMODELFVPROC gload_glLightModelfv;
PFNGLLIGHTMODELIPROC gload_glLightModeli;
PFNGLLIGHTMODELIVPROC gload_glLightModeliv;
PFNGLLINESTIPPLEPROC gload_glLineStipple;
PFNGLMATERIALFPROC gload_glMaterialf;
PFNGLMATERIALFVPROC gload_glMaterialfv;
PFNGLMATERIALIPROC gload_glMateriali;
PFNGLMATERIALIVPROC gload_glMaterialiv;
PFNGLPOLYGONSTIPPLEPROC gload_glPolygonStipple;
PFNGLSHADEMODELPROC gload_glShadeModel;
PFNGLTEXENVFPROC gload_glTexEnvf;
PFNGLTEXENVFVPROC gload_glTexEnvfv;
PFNGLTEXENVIPROC gload_glTexEnvi;
PFNGLTEXENVIVPROC gload_glTexEnviv;
PFNGLTEXGENDPROC gload_glTexGend;
PFNGLTEXGENDVPROC gload_glTexGendv;
PFNGLTEXGENFPROC gload_glTexGenf;
PFNGLTEXGENFVPROC gload_glTexGenfv;
PFNGLTEXGENIPROC gload_glTexGeni;
PFNGLTEXGENIVPROC gload_glTexGeniv;
PFNGLFEEDBACKBUFFERPROC gload_glFeedbackBuffer;
PFNGLSELECTBUFFERPROC gload_glSelectBuffer;
PFNGLRENDERMODEPROC gload_glRenderMode;
PFNGLINITNAMESPROC gload_glInitNames;
PFNGLLOADNAMEPROC gload_glLoadName;
PFNGLPASSTHROUGHPROC gload_glPassThrough;
PFNGLPOPNAMEPROC gload_glPopName;
PFNGLPUSHNAMEPROC gload_glPushName;
PFNGLCLEARACCUMPROC gload_glClearAccum;
PFNGLCLEARINDEXPROC gload_glClearIndex;
PFNGLINDEXMASKPROC gload_glIndexMask;
PFNGLACCUMPROC gload_glAccum;
PFNGLPOPATTRIBPROC gload_glPopAttrib;
PFNGLPUSHATTRIBPROC gload_glPushAttrib;
PFNGLMAP1DPROC gload_glMap1d;
PFNGLMAP1FPROC gload_glMap1f;
PFNGLMAP2DPROC gload_glMap2d;
PFNGLMAP2FPROC gload_glMap2f;
PFNGLMAPGRID1DPROC gload_glMapGrid1d;
PFNGLMAPGRID1FPROC gload_glMapGrid1f;
PFNGLMAPGRID2DPROC gload_glMapGrid2d;
PFNGLMAPGRID2FPROC gload_glMapGrid2f;
PFNGLEVALCOORD1DPROC gload_glEvalCoord1d;
PFNGLEVALCOORD1DVPROC gload_glEvalCoord1dv;
PFNGLEVALCOORD1FPROC gload_glEvalCoord1f;
PFNGLEVALCOORD1FVPROC gload_glEvalCoord1fv;
PFNGLEVALCOORD2DPROC gload_glEvalCoord2d;
PFNGLEVALCOORD2DVPROC gload_glEvalCoord2dv;
PFNGLEVALCOORD2FPROC gload_glEvalCoord2f;
PFNGLEVALCOORD2FVPROC gload_glEvalCoord2fv;
PFNGLEVALMESH1PROC gload_glEvalMesh1;
PFNGLEVALPOINT1PROC gload_glEvalPoint1;
PFNGLEVALMESH2PROC gload_glEvalMesh2;
PFNGLEVALPOINT2PROC gload_glEvalPoint2;
PFNGLALPHAFUNCPROC gload_glAlphaFunc;
PFNGLPIXELZOOMPROC gload_glPixelZoom;
PFNGLPIXELTRANSFERFPROC gload_glPixelTransferf;
PFNGLPIXELTRANSFERIPROC gload_glPixelTransferi;
PFNGLPIXELMAPFVPROC gload_glPixelMapfv;
PFNGLPIXELMAPUIVPROC gload_glPixelMapuiv;
PFNGLPIXELMAPUSVPROC gload_glPixelMapusv;
PFNGLCOPYPIXELSPROC gload_glCopyPixels;
PFNGLDRAWPIXELSPROC gload_glDrawPixels;
PFNGLGETCLIPPLANEPROC gload_glGetClipPlane;
PFNGLGETLIGHTFVPROC gload_glGetLightfv;
PFNGLGETLIGHTIVPROC gload_glGetLightiv;
PFNGLGETMAPDVPROC gload_glGetMapdv;
PFNGLGETMAPFVPROC gload_glGetMapfv;
PFNGLGETMAPIVPROC gload_glGetMapiv;
PFNGLGETMATERIALFVPROC gload_glGetMaterialfv;
PFNGLGETMATERIALIVPROC gload_glGetMaterialiv;
PFNGLGETPIXELMAPFVPROC gload_glGetPixelMapfv;
PFNGLGETPIXELMAPUIVPROC gload_glGetPixelMapuiv;
PFNGLGETPIXELMAPUSVPROC gload_glGetPixelMapusv;
PFNGLGETPOLYGONSTIPPLEPROC gload_glGetPolygonStipple;
PFNGLGETTEXENVFVPROC gload_glGetTexEnvfv;
PFNGLGETTEXENVIVPROC gload_glGetTexEnviv;
PFNGLGETTEXGENDVPROC gload_glGetTexGendv;
PFNGLGETTEXGENFVPROC gload_glGetTexGenfv;
PFNGLGETTEXGENIVPROC gload_glGetTexGeniv;
PFNGLISLISTPROC gload_glIsList;
PFNGLFRUSTUMPROC gload_glFrustum;
PFNGLLOADIDENTITYPROC gload_glLoadIdentity;
PFNGLLOADMATRIXFPROC gload_glLoadMatrixf;
PFNGLLOADMATRIXDPROC gload_glLoadMatrixd;
PFNGLMATRIXMODEPROC gload_glMatrixMode;
PFNGLMULTMATRIXFPROC gload_glMultMatrixf;
PFNGLMULTMATRIXDPROC gload_glMultMatrixd;
PFNGLORTHOPROC gload_glOrtho;
PFNGLPOPMATRIXPROC gload_glPopMatrix;
PFNGLPUSHMATRIXPROC gload_glPushMatrix;
PFNGLROTATEDPROC gload_glRotated;
PFNGLROTATEFPROC gload_glRotatef;
PFNGLSCALEDPROC gload_glScaled;
PFNGLSCALEFPROC gload_glScalef;
PFNGLTRANSLATEDPROC gload_glTranslated;
PFNGLTRANSLATEFPROC gload_glTranslatef;
PFNGLDRAWARRAYSPROC gload_glDrawArrays;
PFNGLDRAWELEMENTSPROC gload_glDrawElements;
PFNGLGETPOINTERVPROC gload_glGetPointerv;
PFNGLPOLYGONOFFSETPROC gload_glPolygonOffset;
PFNGLCOPYTEXIMAGE1DPROC gload_glCopyTexImage1D;
PFNGLCOPYTEXIMAGE2DPROC gload_glCopyTexImage2D;
PFNGLCOPYTEXSUBIMAGE1DPROC gload_glCopyTexSubImage1D;
PFNGLCOPYTEXSUBIMAGE2DPROC gload_glCopyTexSubImage2D;
PFNGLTEXSUBIMAGE1DPROC gload_glTexSubImage1D;
PFNGLTEXSUBIMAGE2DPROC gload_glTexSubImage2D;
PFNGLBINDTEXTUREPROC gload_glBindTexture;
PFNGLDELETETEXTURESPROC gload_glDeleteTextures;
PFNGLGENTEXTURESPROC gload_glGenTextures;
PFNGLISTEXTUREPROC gload_glIsTexture;
PFNGLARRAYELEMENTPROC gload_glArrayElement;
PFNGLCOLORPOINTERPROC gload_glColorPointer;
PFNGLDISABLECLIENTSTATEPROC gload_glDisableClientState;
PFNGLEDGEFLAGPOINTERPROC gload_glEdgeFlagPointer;
PFNGLENABLECLIENTSTATEPROC gload_glEnableClientState;
PFNGLINDEXPOINTERPROC gload_glIndexPointer;
PFNGLINTERLEAVEDARRAYSPROC gload_glInterleavedArrays;
PFNGLNORMALPOINTERPROC gload_glNormalPointer;
PFNGLTEXCOORDPOINTERPROC gload_glTexCoordPointer;
PFNGLVERTEXPOINTERPROC gload_glVertexPointer;
PFNGLARETEXTURESRESIDENTPROC gload_glAreTexturesResident;
PFNGLPRIORITIZETEXTURESPROC gload_glPrioritizeTextures;
PFNGLINDEXUBPROC gload_glIndexub;
PFNGLINDEXUBVPROC gload_glIndexubv;
PFNGLPOPCLIENTATTRIBPROC gload_glPopClientAttrib;
PFNGLPUSHCLIENTATTRIBPROC gload_glPushClientAttrib;
PFNGLDRAWRANGEELEMENTSPROC gload_glDrawRangeElements;
PFNGLTEXIMAGE3DPROC gload_glTexImage3D;
PFNGLTEXSUBIMAGE3DPROC gload_glTexSubImage3D;
PFNGLCOPYTEXSUBIMAGE3DPROC gload_glCopyTexSubImage3D;
PFNGLACTIVETEXTUREPROC gload_glActiveTexture;
PFNGLSAMPLECOVERAGEPROC gload_glSampleCoverage;
PFNGLCOMPRESSEDTEXIMAGE3DPROC gload_glCompressedTexImage3D;
PFNGLCOMPRESSEDTEXIMAGE2DPROC gload_glCompressedTexImage2D;
PFNGLCOMPRESSEDTEXIMAGE1DPROC gload_glCompressedTexImage1D;
PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC gload_glCompressedTexSubImage3D;
PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC gload_glCompressedTexSubImage2D;
PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC gload_glCompressedTexSubImage1D;
PFNGLGETCOMPRESSEDTEXIMAGEPROC gload_glGetCompressedTexImage;
PFNGLCLIENTACTIVETEXTUREPROC gload_glClientActiveTexture;
PFNGLMULTITEXCOORD1DPROC gload_glMultiTexCoord1d;
PFNGLMULTITEXCOORD1DVPROC gload_glMultiTexCoord1dv;
PFNGLMULTITEXCOORD1FPROC gload_glMultiTexCoord1f;
PFNGLMULTITEXCOORD1FVPROC gload_glMultiTexCoord1fv;
PFNGLMULTITEXCOORD1IPROC gload_glMultiTexCoord1i;
PFNGLMULTITEXCOORD1IVPROC gload_glMultiTexCoord1iv;
PFNGLMULTITEXCOORD1SPROC gload_glMultiTexCoord1s;
PFNGLMULTITEXCOORD1SVPROC gload_glMultiTexCoord1sv;
PFNGLMULTITEXCOORD2DPROC gload_glMultiTexCoord2d;
PFNGLMULTITEXCOORD2DVPROC gload_glMultiTexCoord2dv;
PFNGLMULTITEXCOORD2FPROC gload_glMultiTexCoord2f;
PFNGLMULTITEXCOORD2FVPROC gload_glMultiTexCoord2fv;
PFNGLMULTITEXCOORD2IPROC gload_glMultiTexCoord2i;
PFNGLMULTITEXCOORD2IVPROC gload_glMultiTexCoord2iv;
PFNGLMULTITEXCOORD2SPROC gload_glMultiTexCoord2s;
PFNGLMULTITEXCOORD2SVPROC gload_glMultiTexCoord2sv;
PFNGLMULTITEXCOORD3DPROC gload_glMultiTexCoord3d;
PFNGLMULTITEXCOORD3DVPROC gload_glMultiTexCoord3dv;
PFNGLMULTITEXCOORD3FPROC gload_glMultiTexCoord3f;
PFNGLMULTITEXCOORD3FVPROC gload_glMultiTexCoord3fv;
PFNGLMULTITEXCOORD3IPROC gload_glMultiTexCoord3i;
PFNGLMULTITEXCOORD3IVPROC gload_glMultiTexCoord3iv;
PFNGLMULTITEXCOORD3SPROC gload_glMultiTexCoord3s;
PFNGLMULTITEXCOORD3SVPROC gload_glMultiTexCoord3sv;
PFNGLMULTITEXCOORD4DPROC gload_glMultiTexCoord4d;
PFNGLMULTITEXCOORD4DVPROC gload_glMultiTexCoord4dv;
PFNGLMULTITEXCOORD4FPROC gload_glMultiTexCoord4f;
PFNGLMULTITEXCOORD4FVPROC gload_glMultiTexCoord4fv;
PFNGLMULTITEXCOORD4IPROC gload_glMultiTexCoord4i;
PFNGLMULTITEXCOORD4IVPROC gload_glMultiTexCoord4iv;
PFNGLMULTITEXCOORD4SPROC gload_glMultiTexCoord4s;
PFNGLMULTITEXCOORD4SVPROC gload_glMultiTexCoord4sv;
PFNGLLOADTRANSPOSEMATRIXFPROC gload_glLoadTransposeMatrixf;
PFNGLLOADTRANSPOSEMATRIXDPROC gload_glLoadTransposeMatrixd;
PFNGLMULTTRANSPOSEMATRIXFPROC gload_glMultTransposeMatrixf;
PFNGLMULTTRANSPOSEMATRIXDPROC gload_glMultTransposeMatrixd;
PFNGLBLENDFUNCSEPARATEPROC gload_glBlendFuncSeparate;
PFNGLMULTIDRAWARRAYSPROC gload_glMultiDrawArrays;
PFNGLMULTIDRAWELEMENTSPROC gload_glMultiDrawElements;
PFNGLPOINTPARAMETERFPROC gload_glPointParameterf;
PFNGLPOINTPARAMETERFVPROC gload_glPointParameterfv;
PFNGLPOINTPARAMETERIPROC gload_glPointParameteri;
PFNGLPOINTPARAMETERIVPROC gload_glPointParameteriv;
PFNGLFOGCOORDFPROC gload_glFogCoordf;
PFNGLFOGCOORDFVPROC gload_glFogCoordfv;
PFNGLFOGCOORDDPROC gload_glFogCoordd;
PFNGLFOGCOORDDVPROC gload_glFogCoorddv;
PFNGLFOGCOORDPOINTERPROC gload_glFogCoordPointer;
PFNGLSECONDARYCOLOR3BPROC gload_glSecondaryColor3b;
PFNGLSECONDARYCOLOR3BVPROC gload_glSecondaryColor3bv;
PFNGLSECONDARYCOLOR3DPROC gload_glSecondaryColor3d;
PFNGLSECONDARYCOLOR3DVPROC gload_glSecondaryColor3dv;
PFNGLSECONDARYCOLOR3FPROC gload_glSecondaryColor3f;
PFNGLSECONDARYCOLOR3FVPROC gload_glSecondaryColor3fv;
PFNGLSECONDARYCOLOR3IPROC gload_glSecondaryColor3i;
PFNGLSECONDARYCOLOR3IVPROC gload_glSecondaryColor3iv;
PFNGLSECONDARYCOLOR3SPROC gload_glSecondaryColor3s;
PFNGLSECONDARYCOLOR3SVPROC gload_glSecondaryColor3sv;
PFNGLSECONDARYCOLOR3UBPROC gload_glSecondaryColor3ub;
PFNGLSECONDARYCOLOR3UBVPROC gload_glSecondaryColor3ubv;
PFNGLSECONDARYCOLOR3UIPROC gload_glSecondaryColor3ui;
PFNGLSECONDARYCOLOR3UIVPROC gload_glSecondaryColor3uiv;
PFNGLSECONDARYCOLOR3USPROC gload_glSecondaryColor3us;
PFNGLSECONDARYCOLOR3USVPROC gload_glSecondaryColor3usv;
PFNGLSECONDARYCOLORPOINTERPROC gload_glSecondaryColorPointer;
PFNGLWINDOWPOS2DPROC gload_glWindowPos2d;
PFNGLWINDOWPOS2DVPROC gload_glWindowPos2dv;
PFNGLWINDOWPOS2FPROC gload_glWindowPos2f;
PFNGLWINDOWPOS2FVPROC gload_glWindowPos2fv;
PFNGLWINDOWPOS2IPROC gload_glWindowPos2i;
PFNGLWINDOWPOS2IVPROC gload_glWindowPos2iv;
PFNGLWINDOWPOS2SPROC gload_glWindowPos2s;
PFNGLWINDOWPOS2SVPROC gload_glWindowPos2sv;
PFNGLWINDOWPOS3DPROC gload_glWindowPos3d;
PFNGLWINDOWPOS3DVPROC gload_glWindowPos3dv;
PFNGLWINDOWPOS3FPROC gload_glWindowPos3f;
PFNGLWINDOWPOS3FVPROC gload_glWindowPos3fv;
PFNGLWINDOWPOS3IPROC gload_glWindowPos3i;
PFNGLWINDOWPOS3IVPROC gload_glWindowPos3iv;
PFNGLWINDOWPOS3SPROC gload_glWindowPos3s;
PFNGLWINDOWPOS3SVPROC gload_glWindowPos3sv;
PFNGLGENQUERIESPROC gload_glGenQueries;
PFNGLDELETEQUERIESPROC gload_glDeleteQueries;
PFNGLISQUERYPROC gload_glIsQuery;
PFNGLBEGINQUERYPROC gload_glBeginQuery;
PFNGLENDQUERYPROC gload_glEndQuery;
PFNGLGETQUERYIVPROC gload_glGetQueryiv;
PFNGLGETQUERYOBJECTIVPROC gload_glGetQueryObjectiv;
PFNGLGETQUERYOBJECTUIVPROC gload_glGetQueryObjectuiv;
PFNGLBINDBUFFERPROC gload_glBindBuffer;
PFNGLDELETEBUFFERSPROC gload_glDeleteBuffers;
PFNGLGENBUFFERSPROC gload_glGenBuffers;
PFNGLISBUFFERPROC gload_glIsBuffer;
PFNGLBUFFERDATAPROC gload_glBufferData;
PFNGLBUFFERSUBDATAPROC gload_glBufferSubData;
PFNGLGETBUFFERSUBDATAPROC gload_glGetBufferSubData;
PFNGLMAPBUFFERPROC gload_glMapBuffer;
PFNGLUNMAPBUFFERPROC gload_glUnmapBuffer;
PFNGLGETBUFFERPARAMETERIVPROC gload_glGetBufferParameteriv;
PFNGLGETBUFFERPOINTERVPROC gload_glGetBufferPointerv;
PFNGLBLENDEQUATIONSEPARATEPROC gload_glBlendEquationSeparate;
PFNGLDRAWBUFFERSPROC gload_glDrawBuffers;
PFNGLSTENCILOPSEPARATEPROC gload_glStencilOpSeparate;
PFNGLSTENCILFUNCSEPARATEPROC gload_glStencilFuncSeparate;
PFNGLSTENCILMASKSEPARATEPROC gload_glStencilMaskSeparate;
PFNGLATTACHSHADERPROC gload_glAttachShader;
PFNGLBINDATTRIBLOCATIONPROC gload_glBindAttribLocation;
PFNGLCOMPILESHADERPROC gload_glCompileShader;
PFNGLCREATEPROGRAMPROC gload_glCreateProgram;
PFNGLCREATESHADERPROC gload_glCreateShader;
PFNGLDELETEPROGRAMPROC gload_glDeleteProgram;
PFNGLDELETESHADERPROC gload_glDeleteShader;
PFNGLDETACHSHADERPROC gload_glDetachShader;
PFNGLDISABLEVERTEXATTRIBARRAYPROC gload_glDisableVertexAttribArray;
PFNGLENABLEVERTEXATTRIBARRAYPROC gload_glEnableVertexAttribArray;
PFNGLGETACTIVEATTRIBPROC gload_glGetActiveAttrib;
PFNGLGETACTIVEUNIFORMPROC gload_glGetActiveUniform;
PFNGLGETATTACHEDSHADERSPROC gload_glGetAttachedShaders;
PFNGLGETATTRIBLOCATIONPROC gload_glGetAttribLocation;
PFNGLGETPROGRAMIVPROC gload_glGetProgramiv;
PFNGLGETPROGRAMINFOLOGPROC gload_glGetProgramInfoLog;
PFNGLGETSHADERIVPROC gload_glGetShaderiv;
PFNGLGETSHADERINFOLOGPROC gload_glGetShaderInfoLog;
PFNGLGETSHADERSOURCEPROC gload_glGetShaderSource;
PFNGLGETUNIFORMLOCATIONPROC gload_glGetUniformLocation;
PFNGLGETUNIFORMFVPROC gload_glGetUniformfv;
PFNGLGETUNIFORMIVPROC gload_glGetUniformiv;
PFNGLGETVERTEXATTRIBDVPROC gload_glGetVertexAttribdv;
PFNGLGETVERTEXATTRIBFVPROC gload_glGetVertexAttribfv;
PFNGLGETVERTEXATTRIBIVPROC gload_glGetVertexAttribiv;
PFNGLGETVERTEXATTRIBPOINTERVPROC gload_glGetVertexAttribPointerv;
PFNGLISPROGRAMPROC gload_glIsProgram;
PFNGLISSHADERPROC gload_glIsShader;
PFNGLLINKPROGRAMPROC gload_glLinkProgram;
PFNGLSHADERSOURCEPROC gload_glShaderSource;
PFNGLUSEPROGRAMPROC gload_glUseProgram;
PFNGLUNIFORM1FPROC gload_glUniform1f;
PFNGLUNIFORM2FPROC gload_glUniform2f;
PFNGLUNIFORM3FPROC gload_glUniform3f;
PFNGLUNIFORM4FPROC gload_glUniform4f;
PFNGLUNIFORM1IPROC gload_glUniform1i;
PFNGLUNIFORM2IPROC gload_glUniform2i;
PFNGLUNIFORM3IPROC gload_glUniform3i;
PFNGLUNIFORM4IPROC gload_glUniform4i;
PFNGLUNIFORM1FVPROC gload_glUniform1fv;
PFNGLUNIFORM2FVPROC gload_glUniform2fv;
PFNGLUNIFORM3FVPROC gload_glUniform3fv;
PFNGLUNIFORM4FVPROC gload_glUniform4fv;
PFNGLUNIFORM1IVPROC gload_glUniform1iv;
PFNGLUNIFORM2IVPROC gload_glUniform2iv;
PFNGLUNIFORM3IVPROC gload_glUniform3iv;
PFNGLUNIFORM4IVPROC gload_glUniform4iv;
PFNGLUNIFORMMATRIX2FVPROC gload_glUniformMatrix2fv;
PFNGLUNIFORMMATRIX3FVPROC gload_glUniformMatrix3fv;
PFNGLUNIFORMMATRIX4FVPROC gload_glUniformMatrix4fv;
PFNGLVALIDATEPROGRAMPROC gload_glValidateProgram;
PFNGLVERTEXATTRIB1DPROC gload_glVertexAttrib1d;
PFNGLVERTEXATTRIB1DVPROC gload_glVertexAttrib1dv;
PFNGLVERTEXATTRIB1FPROC gload_glVertexAttrib1f;
PFNGLVERTEXATTRIB1FVPROC gload_glVertexAttrib1fv;
PFNGLVERTEXATTRIB1SPROC gload_glVertexAttrib1s;
PFNGLVERTEXATTRIB1SVPROC gload_glVertexAttrib1sv;
PFNGLVERTEXATTRIB2DPROC gload_glVertexAttrib2d;
PFNGLVERTEXATTRIB2DVPROC gload_glVertexAttrib2dv;
PFNGLVERTEXATTRIB2FPROC gload_glVertexAttrib2f;
PFNGLVERTEXATTRIB2FVPROC gload_glVertexAttrib2fv;
PFNGLVERTEXATTRIB2SPROC gload_glVertexAttrib2s;
PFNGLVERTEXATTRIB2SVPROC gload_glVertexAttrib2sv;
PFNGLVERTEXATTRIB3DPROC gload_glVertexAttrib3d;
PFNGLVERTEXATTRIB3DVPROC gload_glVertexAttrib3dv;
PFNGLVERTEXATTRIB3FPROC gload_glVertexAttrib3f;
PFNGLVERTEXATTRIB3FVPROC gload_glVertexAttrib3fv;
PFNGLVERTEXATTRIB3SPROC gload_glVertexAttrib3s;
PFNGLVERTEXATTRIB3SVPROC gload_glVertexAttrib3sv;
PFNGLVERTEXATTRIB4NBVPROC gload_glVertexAttrib4Nbv;
PFNGLVERTEXATTRIB4NIVPROC gload_glVertexAttrib4Niv;
PFNGLVERTEXATTRIB4NSVPROC gload_glVertexAttrib4Nsv;
PFNGLVERTEXATTRIB4NUBPROC gload_glVertexAttrib4Nub;
PFNGLVERTEXATTRIB4NUBVPROC gload_glVertexAttrib4Nubv;
PFNGLVERTEXATTRIB4NUIVPROC gload_glVertexAttrib4Nuiv;
PFNGLVERTEXATTRIB4NUSVPROC gload_glVertexAttrib4Nusv;
PFNGLVERTEXATTRIB4BVPROC gload_glVertexAttrib4bv;
PFNGLVERTEXATTRIB4DPROC gload_glVertexAttrib4d;
PFNGLVERTEXATTRIB4DVPROC gload_glVertexAttrib4dv;
PFNGLVERTEXATTRIB4FPROC gload_glVertexAttrib4f;
PFNGLVERTEXATTRIB4FVPROC gload_glVertexAttrib4fv;
PFNGLVERTEXATTRIB4IVPROC gload_glVertexAttrib4iv;
PFNGLVERTEXATTRIB4SPROC gload_glVertexAttrib4s;
PFNGLVERTEXATTRIB4SVPROC gload_glVertexAttrib4sv;
PFNGLVERTEXATTRIB4UBVPROC gload_glVertexAttrib4ubv;
PFNGLVERTEXATTRIB4UIVPROC gload_glVertexAttrib4uiv;
PFNGLVERTEXATTRIB4USVPROC gload_glVertexAttrib4usv;
PFNGLVERTEXATTRIBPOINTERPROC gload_glVertexAttribPointer;

#include <stdio.h>
#include <stddef.h>
#ifdef _WIN32
#include <windows.h>
#else
#include <dlfcn.h>
#endif
static void* gload_gl = NULL;

typedef void* (APIENTRYP PFNGLGETPROCADDRESSPROC)(const char* name);
PFNGLGETPROCADDRESSPROC gload_getprocaddress = NULL;

void* gload_load(const char* name){
	void* r = NULL;
#ifdef _WIN32
	r = GetProcAddress(gload_gl, name);
#else
	r = dlsym(gload_gl, name);
#endif
	if(r == NULL && gload_getprocaddress != NULL) r = gload_getprocaddress(name);
#ifdef GLOAD_DEBUG
	if(r == NULL) fprintf(stderr, "[gload] failed to load %s\n", name);
#endif
	return r;
}

void gload_init(void){
#ifdef _WIN32
	const char* names[] = {"opengl32.dll"};
#elif defined(__APPLE__)
	const char* names[] = {"../Frameworks/OpenGL.framework/OpenGL", "/Library/Frameworks/OpenGL.framework/OpenGL", "/System/Library/Frameworks/OpenGL.framework/OpenGL", "/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL"};
#elif defined(__OpenBSD__)
	const char* names[] = {"libGL.so", "/usr/X11R6/lib/libGL.so"};
#elif defined(__NetBSD__)
	const char* names[] = {"libGL.so", "/usr/X11R7/lib/libGL.so"};
#else
	const char* names[] = {"libGL.so", "/usr/local/lib/libGL.so", "/usr/X11/lib/libGL.so"};
#endif
	int i;
	if(gload_gl != NULL) return;
	for(i = 0; i < sizeof(names) / sizeof(names[0]); i++){
#ifdef _WIN32
		gload_gl = LoadLibraryA(names[i]);
#else
		gload_gl = dlopen(names[i], RTLD_LAZY);
#endif
		if(gload_gl != NULL) break;
	}
	if(gload_gl == NULL) return;
	#ifdef _WIN32
	gload_getprocaddress = (PFNGLGETPROCADDRESSPROC)gload_load("wglGetProcAddress");
	#else
	gload_getprocaddress = (PFNGLGETPROCADDRESSPROC)gload_load("glXGetProcAddress");
	#endif
	gload_glCullFace = (PFNGLCULLFACEPROC)gload_load("glCullFace");
	gload_glFrontFace = (PFNGLFRONTFACEPROC)gload_load("glFrontFace");
	gload_glHint = (PFNGLHINTPROC)gload_load("glHint");
	gload_glLineWidth = (PFNGLLINEWIDTHPROC)gload_load("glLineWidth");
	gload_glPointSize = (PFNGLPOINTSIZEPROC)gload_load("glPointSize");
	gload_glPolygonMode = (PFNGLPOLYGONMODEPROC)gload_load("glPolygonMode");
	gload_glScissor = (PFNGLSCISSORPROC)gload_load("glScissor");
	gload_glTexParameterf = (PFNGLTEXPARAMETERFPROC)gload_load("glTexParameterf");
	gload_glTexParameterfv = (PFNGLTEXPARAMETERFVPROC)gload_load("glTexParameterfv");
	gload_glTexParameteri = (PFNGLTEXPARAMETERIPROC)gload_load("glTexParameteri");
	gload_glTexParameteriv = (PFNGLTEXPARAMETERIVPROC)gload_load("glTexParameteriv");
	gload_glTexImage1D = (PFNGLTEXIMAGE1DPROC)gload_load("glTexImage1D");
	gload_glTexImage2D = (PFNGLTEXIMAGE2DPROC)gload_load("glTexImage2D");
	gload_glDrawBuffer = (PFNGLDRAWBUFFERPROC)gload_load("glDrawBuffer");
	gload_glClear = (PFNGLCLEARPROC)gload_load("glClear");
	gload_glClearColor = (PFNGLCLEARCOLORPROC)gload_load("glClearColor");
	gload_glClearStencil = (PFNGLCLEARSTENCILPROC)gload_load("glClearStencil");
	gload_glClearDepth = (PFNGLCLEARDEPTHPROC)gload_load("glClearDepth");
	gload_glStencilMask = (PFNGLSTENCILMASKPROC)gload_load("glStencilMask");
	gload_glColorMask = (PFNGLCOLORMASKPROC)gload_load("glColorMask");
	gload_glDepthMask = (PFNGLDEPTHMASKPROC)gload_load("glDepthMask");
	gload_glDisable = (PFNGLDISABLEPROC)gload_load("glDisable");
	gload_glEnable = (PFNGLENABLEPROC)gload_load("glEnable");
	gload_glFinish = (PFNGLFINISHPROC)gload_load("glFinish");
	gload_glFlush = (PFNGLFLUSHPROC)gload_load("glFlush");
	gload_glBlendFunc = (PFNGLBLENDFUNCPROC)gload_load("glBlendFunc");
	gload_glLogicOp = (PFNGLLOGICOPPROC)gload_load("glLogicOp");
	gload_glStencilFunc = (PFNGLSTENCILFUNCPROC)gload_load("glStencilFunc");
	gload_glStencilOp = (PFNGLSTENCILOPPROC)gload_load("glStencilOp");
	gload_glDepthFunc = (PFNGLDEPTHFUNCPROC)gload_load("glDepthFunc");
	gload_glPixelStoref = (PFNGLPIXELSTOREFPROC)gload_load("glPixelStoref");
	gload_glPixelStorei = (PFNGLPIXELSTOREIPROC)gload_load("glPixelStorei");
	gload_glReadBuffer = (PFNGLREADBUFFERPROC)gload_load("glReadBuffer");
	gload_glReadPixels = (PFNGLREADPIXELSPROC)gload_load("glReadPixels");
	gload_glGetBooleanv = (PFNGLGETBOOLEANVPROC)gload_load("glGetBooleanv");
	gload_glGetDoublev = (PFNGLGETDOUBLEVPROC)gload_load("glGetDoublev");
	gload_glGetError = (PFNGLGETERRORPROC)gload_load("glGetError");
	gload_glGetFloatv = (PFNGLGETFLOATVPROC)gload_load("glGetFloatv");
	gload_glGetIntegerv = (PFNGLGETINTEGERVPROC)gload_load("glGetIntegerv");
	gload_glGetString = (PFNGLGETSTRINGPROC)gload_load("glGetString");
	gload_glGetTexImage = (PFNGLGETTEXIMAGEPROC)gload_load("glGetTexImage");
	gload_glGetTexParameterfv = (PFNGLGETTEXPARAMETERFVPROC)gload_load("glGetTexParameterfv");
	gload_glGetTexParameteriv = (PFNGLGETTEXPARAMETERIVPROC)gload_load("glGetTexParameteriv");
	gload_glGetTexLevelParameterfv = (PFNGLGETTEXLEVELPARAMETERFVPROC)gload_load("glGetTexLevelParameterfv");
	gload_glGetTexLevelParameteriv = (PFNGLGETTEXLEVELPARAMETERIVPROC)gload_load("glGetTexLevelParameteriv");
	gload_glIsEnabled = (PFNGLISENABLEDPROC)gload_load("glIsEnabled");
	gload_glDepthRange = (PFNGLDEPTHRANGEPROC)gload_load("glDepthRange");
	gload_glViewport = (PFNGLVIEWPORTPROC)gload_load("glViewport");
	gload_glNewList = (PFNGLNEWLISTPROC)gload_load("glNewList");
	gload_glEndList = (PFNGLENDLISTPROC)gload_load("glEndList");
	gload_glCallList = (PFNGLCALLLISTPROC)gload_load("glCallList");
	gload_glCallLists = (PFNGLCALLLISTSPROC)gload_load("glCallLists");
	gload_glDeleteLists = (PFNGLDELETELISTSPROC)gload_load("glDeleteLists");
	gload_glGenLists = (PFNGLGENLISTSPROC)gload_load("glGenLists");
	gload_glListBase = (PFNGLLISTBASEPROC)gload_load("glListBase");
	gload_glBegin = (PFNGLBEGINPROC)gload_load("glBegin");
	gload_glBitmap = (PFNGLBITMAPPROC)gload_load("glBitmap");
	gload_glColor3b = (PFNGLCOLOR3BPROC)gload_load("glColor3b");
	gload_glColor3bv = (PFNGLCOLOR3BVPROC)gload_load("glColor3bv");
	gload_glColor3d = (PFNGLCOLOR3DPROC)gload_load("glColor3d");
	gload_glColor3dv = (PFNGLCOLOR3DVPROC)gload_load("glColor3dv");
	gload_glColor3f = (PFNGLCOLOR3FPROC)gload_load("glColor3f");
	gload_glColor3fv = (PFNGLCOLOR3FVPROC)gload_load("glColor3fv");
	gload_glColor3i = (PFNGLCOLOR3IPROC)gload_load("glColor3i");
	gload_glColor3iv = (PFNGLCOLOR3IVPROC)gload_load("glColor3iv");
	gload_glColor3s = (PFNGLCOLOR3SPROC)gload_load("glColor3s");
	gload_glColor3sv = (PFNGLCOLOR3SVPROC)gload_load("glColor3sv");
	gload_glColor3ub = (PFNGLCOLOR3UBPROC)gload_load("glColor3ub");
	gload_glColor3ubv = (PFNGLCOLOR3UBVPROC)gload_load("glColor3ubv");
	gload_glColor3ui = (PFNGLCOLOR3UIPROC)gload_load("glColor3ui");
	gload_glColor3uiv = (PFNGLCOLOR3UIVPROC)gload_load("glColor3uiv");
	gload_glColor3us = (PFNGLCOLOR3USPROC)gload_load("glColor3us");
	gload_glColor3usv = (PFNGLCOLOR3USVPROC)gload_load("glColor3usv");
	gload_glColor4b = (PFNGLCOLOR4BPROC)gload_load("glColor4b");
	gload_glColor4bv = (PFNGLCOLOR4BVPROC)gload_load("glColor4bv");
	gload_glColor4d = (PFNGLCOLOR4DPROC)gload_load("glColor4d");
	gload_glColor4dv = (PFNGLCOLOR4DVPROC)gload_load("glColor4dv");
	gload_glColor4f = (PFNGLCOLOR4FPROC)gload_load("glColor4f");
	gload_glColor4fv = (PFNGLCOLOR4FVPROC)gload_load("glColor4fv");
	gload_glColor4i = (PFNGLCOLOR4IPROC)gload_load("glColor4i");
	gload_glColor4iv = (PFNGLCOLOR4IVPROC)gload_load("glColor4iv");
	gload_glColor4s = (PFNGLCOLOR4SPROC)gload_load("glColor4s");
	gload_glColor4sv = (PFNGLCOLOR4SVPROC)gload_load("glColor4sv");
	gload_glColor4ub = (PFNGLCOLOR4UBPROC)gload_load("glColor4ub");
	gload_glColor4ubv = (PFNGLCOLOR4UBVPROC)gload_load("glColor4ubv");
	gload_glColor4ui = (PFNGLCOLOR4UIPROC)gload_load("glColor4ui");
	gload_glColor4uiv = (PFNGLCOLOR4UIVPROC)gload_load("glColor4uiv");
	gload_glColor4us = (PFNGLCOLOR4USPROC)gload_load("glColor4us");
	gload_glColor4usv = (PFNGLCOLOR4USVPROC)gload_load("glColor4usv");
	gload_glEdgeFlag = (PFNGLEDGEFLAGPROC)gload_load("glEdgeFlag");
	gload_glEdgeFlagv = (PFNGLEDGEFLAGVPROC)gload_load("glEdgeFlagv");
	gload_glEnd = (PFNGLENDPROC)gload_load("glEnd");
	gload_glIndexd = (PFNGLINDEXDPROC)gload_load("glIndexd");
	gload_glIndexdv = (PFNGLINDEXDVPROC)gload_load("glIndexdv");
	gload_glIndexf = (PFNGLINDEXFPROC)gload_load("glIndexf");
	gload_glIndexfv = (PFNGLINDEXFVPROC)gload_load("glIndexfv");
	gload_glIndexi = (PFNGLINDEXIPROC)gload_load("glIndexi");
	gload_glIndexiv = (PFNGLINDEXIVPROC)gload_load("glIndexiv");
	gload_glIndexs = (PFNGLINDEXSPROC)gload_load("glIndexs");
	gload_glIndexsv = (PFNGLINDEXSVPROC)gload_load("glIndexsv");
	gload_glNormal3b = (PFNGLNORMAL3BPROC)gload_load("glNormal3b");
	gload_glNormal3bv = (PFNGLNORMAL3BVPROC)gload_load("glNormal3bv");
	gload_glNormal3d = (PFNGLNORMAL3DPROC)gload_load("glNormal3d");
	gload_glNormal3dv = (PFNGLNORMAL3DVPROC)gload_load("glNormal3dv");
	gload_glNormal3f = (PFNGLNORMAL3FPROC)gload_load("glNormal3f");
	gload_glNormal3fv = (PFNGLNORMAL3FVPROC)gload_load("glNormal3fv");
	gload_glNormal3i = (PFNGLNORMAL3IPROC)gload_load("glNormal3i");
	gload_glNormal3iv = (PFNGLNORMAL3IVPROC)gload_load("glNormal3iv");
	gload_glNormal3s = (PFNGLNORMAL3SPROC)gload_load("glNormal3s");
	gload_glNormal3sv = (PFNGLNORMAL3SVPROC)gload_load("glNormal3sv");
	gload_glRasterPos2d = (PFNGLRASTERPOS2DPROC)gload_load("glRasterPos2d");
	gload_glRasterPos2dv = (PFNGLRASTERPOS2DVPROC)gload_load("glRasterPos2dv");
	gload_glRasterPos2f = (PFNGLRASTERPOS2FPROC)gload_load("glRasterPos2f");
	gload_glRasterPos2fv = (PFNGLRASTERPOS2FVPROC)gload_load("glRasterPos2fv");
	gload_glRasterPos2i = (PFNGLRASTERPOS2IPROC)gload_load("glRasterPos2i");
	gload_glRasterPos2iv = (PFNGLRASTERPOS2IVPROC)gload_load("glRasterPos2iv");
	gload_glRasterPos2s = (PFNGLRASTERPOS2SPROC)gload_load("glRasterPos2s");
	gload_glRasterPos2sv = (PFNGLRASTERPOS2SVPROC)gload_load("glRasterPos2sv");
	gload_glRasterPos3d = (PFNGLRASTERPOS3DPROC)gload_load("glRasterPos3d");
	gload_glRasterPos3dv = (PFNGLRASTERPOS3DVPROC)gload_load("glRasterPos3dv");
	gload_glRasterPos3f = (PFNGLRASTERPOS3FPROC)gload_load("glRasterPos3f");
	gload_glRasterPos3fv = (PFNGLRASTERPOS3FVPROC)gload_load("glRasterPos3fv");
	gload_glRasterPos3i = (PFNGLRASTERPOS3IPROC)gload_load("glRasterPos3i");
	gload_glRasterPos3iv = (PFNGLRASTERPOS3IVPROC)gload_load("glRasterPos3iv");
	gload_glRasterPos3s = (PFNGLRASTERPOS3SPROC)gload_load("glRasterPos3s");
	gload_glRasterPos3sv = (PFNGLRASTERPOS3SVPROC)gload_load("glRasterPos3sv");
	gload_glRasterPos4d = (PFNGLRASTERPOS4DPROC)gload_load("glRasterPos4d");
	gload_glRasterPos4dv = (PFNGLRASTERPOS4DVPROC)gload_load("glRasterPos4dv");
	gload_glRasterPos4f = (PFNGLRASTERPOS4FPROC)gload_load("glRasterPos4f");
	gload_glRasterPos4fv = (PFNGLRASTERPOS4FVPROC)gload_load("glRasterPos4fv");
	gload_glRasterPos4i = (PFNGLRASTERPOS4IPROC)gload_load("glRasterPos4i");
	gload_glRasterPos4iv = (PFNGLRASTERPOS4IVPROC)gload_load("glRasterPos4iv");
	gload_glRasterPos4s = (PFNGLRASTERPOS4SPROC)gload_load("glRasterPos4s");
	gload_glRasterPos4sv = (PFNGLRASTERPOS4SVPROC)gload_load("glRasterPos4sv");
	gload_glRectd = (PFNGLRECTDPROC)gload_load("glRectd");
	gload_glRectdv = (PFNGLRECTDVPROC)gload_load("glRectdv");
	gload_glRectf = (PFNGLRECTFPROC)gload_load("glRectf");
	gload_glRectfv = (PFNGLRECTFVPROC)gload_load("glRectfv");
	gload_glRecti = (PFNGLRECTIPROC)gload_load("glRecti");
	gload_glRectiv = (PFNGLRECTIVPROC)gload_load("glRectiv");
	gload_glRects = (PFNGLRECTSPROC)gload_load("glRects");
	gload_glRectsv = (PFNGLRECTSVPROC)gload_load("glRectsv");
	gload_glTexCoord1d = (PFNGLTEXCOORD1DPROC)gload_load("glTexCoord1d");
	gload_glTexCoord1dv = (PFNGLTEXCOORD1DVPROC)gload_load("glTexCoord1dv");
	gload_glTexCoord1f = (PFNGLTEXCOORD1FPROC)gload_load("glTexCoord1f");
	gload_glTexCoord1fv = (PFNGLTEXCOORD1FVPROC)gload_load("glTexCoord1fv");
	gload_glTexCoord1i = (PFNGLTEXCOORD1IPROC)gload_load("glTexCoord1i");
	gload_glTexCoord1iv = (PFNGLTEXCOORD1IVPROC)gload_load("glTexCoord1iv");
	gload_glTexCoord1s = (PFNGLTEXCOORD1SPROC)gload_load("glTexCoord1s");
	gload_glTexCoord1sv = (PFNGLTEXCOORD1SVPROC)gload_load("glTexCoord1sv");
	gload_glTexCoord2d = (PFNGLTEXCOORD2DPROC)gload_load("glTexCoord2d");
	gload_glTexCoord2dv = (PFNGLTEXCOORD2DVPROC)gload_load("glTexCoord2dv");
	gload_glTexCoord2f = (PFNGLTEXCOORD2FPROC)gload_load("glTexCoord2f");
	gload_glTexCoord2fv = (PFNGLTEXCOORD2FVPROC)gload_load("glTexCoord2fv");
	gload_glTexCoord2i = (PFNGLTEXCOORD2IPROC)gload_load("glTexCoord2i");
	gload_glTexCoord2iv = (PFNGLTEXCOORD2IVPROC)gload_load("glTexCoord2iv");
	gload_glTexCoord2s = (PFNGLTEXCOORD2SPROC)gload_load("glTexCoord2s");
	gload_glTexCoord2sv = (PFNGLTEXCOORD2SVPROC)gload_load("glTexCoord2sv");
	gload_glTexCoord3d = (PFNGLTEXCOORD3DPROC)gload_load("glTexCoord3d");
	gload_glTexCoord3dv = (PFNGLTEXCOORD3DVPROC)gload_load("glTexCoord3dv");
	gload_glTexCoord3f = (PFNGLTEXCOORD3FPROC)gload_load("glTexCoord3f");
	gload_glTexCoord3fv = (PFNGLTEXCOORD3FVPROC)gload_load("glTexCoord3fv");
	gload_glTexCoord3i = (PFNGLTEXCOORD3IPROC)gload_load("glTexCoord3i");
	gload_glTexCoord3iv = (PFNGLTEXCOORD3IVPROC)gload_load("glTexCoord3iv");
	gload_glTexCoord3s = (PFNGLTEXCOORD3SPROC)gload_load("glTexCoord3s");
	gload_glTexCoord3sv = (PFNGLTEXCOORD3SVPROC)gload_load("glTexCoord3sv");
	gload_glTexCoord4d = (PFNGLTEXCOORD4DPROC)gload_load("glTexCoord4d");
	gload_glTexCoord4dv = (PFNGLTEXCOORD4DVPROC)gload_load("glTexCoord4dv");
	gload_glTexCoord4f = (PFNGLTEXCOORD4FPROC)gload_load("glTexCoord4f");
	gload_glTexCoord4fv = (PFNGLTEXCOORD4FVPROC)gload_load("glTexCoord4fv");
	gload_glTexCoord4i = (PFNGLTEXCOORD4IPROC)gload_load("glTexCoord4i");
	gload_glTexCoord4iv = (PFNGLTEXCOORD4IVPROC)gload_load("glTexCoord4iv");
	gload_glTexCoord4s = (PFNGLTEXCOORD4SPROC)gload_load("glTexCoord4s");
	gload_glTexCoord4sv = (PFNGLTEXCOORD4SVPROC)gload_load("glTexCoord4sv");
	gload_glVertex2d = (PFNGLVERTEX2DPROC)gload_load("glVertex2d");
	gload_glVertex2dv = (PFNGLVERTEX2DVPROC)gload_load("glVertex2dv");
	gload_glVertex2f = (PFNGLVERTEX2FPROC)gload_load("glVertex2f");
	gload_glVertex2fv = (PFNGLVERTEX2FVPROC)gload_load("glVertex2fv");
	gload_glVertex2i = (PFNGLVERTEX2IPROC)gload_load("glVertex2i");
	gload_glVertex2iv = (PFNGLVERTEX2IVPROC)gload_load("glVertex2iv");
	gload_glVertex2s = (PFNGLVERTEX2SPROC)gload_load("glVertex2s");
	gload_glVertex2sv = (PFNGLVERTEX2SVPROC)gload_load("glVertex2sv");
	gload_glVertex3d = (PFNGLVERTEX3DPROC)gload_load("glVertex3d");
	gload_glVertex3dv = (PFNGLVERTEX3DVPROC)gload_load("glVertex3dv");
	gload_glVertex3f = (PFNGLVERTEX3FPROC)gload_load("glVertex3f");
	gload_glVertex3fv = (PFNGLVERTEX3FVPROC)gload_load("glVertex3fv");
	gload_glVertex3i = (PFNGLVERTEX3IPROC)gload_load("glVertex3i");
	gload_glVertex3iv = (PFNGLVERTEX3IVPROC)gload_load("glVertex3iv");
	gload_glVertex3s = (PFNGLVERTEX3SPROC)gload_load("glVertex3s");
	gload_glVertex3sv = (PFNGLVERTEX3SVPROC)gload_load("glVertex3sv");
	gload_glVertex4d = (PFNGLVERTEX4DPROC)gload_load("glVertex4d");
	gload_glVertex4dv = (PFNGLVERTEX4DVPROC)gload_load("glVertex4dv");
	gload_glVertex4f = (PFNGLVERTEX4FPROC)gload_load("glVertex4f");
	gload_glVertex4fv = (PFNGLVERTEX4FVPROC)gload_load("glVertex4fv");
	gload_glVertex4i = (PFNGLVERTEX4IPROC)gload_load("glVertex4i");
	gload_glVertex4iv = (PFNGLVERTEX4IVPROC)gload_load("glVertex4iv");
	gload_glVertex4s = (PFNGLVERTEX4SPROC)gload_load("glVertex4s");
	gload_glVertex4sv = (PFNGLVERTEX4SVPROC)gload_load("glVertex4sv");
	gload_glClipPlane = (PFNGLCLIPPLANEPROC)gload_load("glClipPlane");
	gload_glColorMaterial = (PFNGLCOLORMATERIALPROC)gload_load("glColorMaterial");
	gload_glFogf = (PFNGLFOGFPROC)gload_load("glFogf");
	gload_glFogfv = (PFNGLFOGFVPROC)gload_load("glFogfv");
	gload_glFogi = (PFNGLFOGIPROC)gload_load("glFogi");
	gload_glFogiv = (PFNGLFOGIVPROC)gload_load("glFogiv");
	gload_glLightf = (PFNGLLIGHTFPROC)gload_load("glLightf");
	gload_glLightfv = (PFNGLLIGHTFVPROC)gload_load("glLightfv");
	gload_glLighti = (PFNGLLIGHTIPROC)gload_load("glLighti");
	gload_glLightiv = (PFNGLLIGHTIVPROC)gload_load("glLightiv");
	gload_glLightModelf = (PFNGLLIGHTMODELFPROC)gload_load("glLightModelf");
	gload_glLightModelfv = (PFNGLLIGHTMODELFVPROC)gload_load("glLightModelfv");
	gload_glLightModeli = (PFNGLLIGHTMODELIPROC)gload_load("glLightModeli");
	gload_glLightModeliv = (PFNGLLIGHTMODELIVPROC)gload_load("glLightModeliv");
	gload_glLineStipple = (PFNGLLINESTIPPLEPROC)gload_load("glLineStipple");
	gload_glMaterialf = (PFNGLMATERIALFPROC)gload_load("glMaterialf");
	gload_glMaterialfv = (PFNGLMATERIALFVPROC)gload_load("glMaterialfv");
	gload_glMateriali = (PFNGLMATERIALIPROC)gload_load("glMateriali");
	gload_glMaterialiv = (PFNGLMATERIALIVPROC)gload_load("glMaterialiv");
	gload_glPolygonStipple = (PFNGLPOLYGONSTIPPLEPROC)gload_load("glPolygonStipple");
	gload_glShadeModel = (PFNGLSHADEMODELPROC)gload_load("glShadeModel");
	gload_glTexEnvf = (PFNGLTEXENVFPROC)gload_load("glTexEnvf");
	gload_glTexEnvfv = (PFNGLTEXENVFVPROC)gload_load("glTexEnvfv");
	gload_glTexEnvi = (PFNGLTEXENVIPROC)gload_load("glTexEnvi");
	gload_glTexEnviv = (PFNGLTEXENVIVPROC)gload_load("glTexEnviv");
	gload_glTexGend = (PFNGLTEXGENDPROC)gload_load("glTexGend");
	gload_glTexGendv = (PFNGLTEXGENDVPROC)gload_load("glTexGendv");
	gload_glTexGenf = (PFNGLTEXGENFPROC)gload_load("glTexGenf");
	gload_glTexGenfv = (PFNGLTEXGENFVPROC)gload_load("glTexGenfv");
	gload_glTexGeni = (PFNGLTEXGENIPROC)gload_load("glTexGeni");
	gload_glTexGeniv = (PFNGLTEXGENIVPROC)gload_load("glTexGeniv");
	gload_glFeedbackBuffer = (PFNGLFEEDBACKBUFFERPROC)gload_load("glFeedbackBuffer");
	gload_glSelectBuffer = (PFNGLSELECTBUFFERPROC)gload_load("glSelectBuffer");
	gload_glRenderMode = (PFNGLRENDERMODEPROC)gload_load("glRenderMode");
	gload_glInitNames = (PFNGLINITNAMESPROC)gload_load("glInitNames");
	gload_glLoadName = (PFNGLLOADNAMEPROC)gload_load("glLoadName");
	gload_glPassThrough = (PFNGLPASSTHROUGHPROC)gload_load("glPassThrough");
	gload_glPopName = (PFNGLPOPNAMEPROC)gload_load("glPopName");
	gload_glPushName = (PFNGLPUSHNAMEPROC)gload_load("glPushName");
	gload_glClearAccum = (PFNGLCLEARACCUMPROC)gload_load("glClearAccum");
	gload_glClearIndex = (PFNGLCLEARINDEXPROC)gload_load("glClearIndex");
	gload_glIndexMask = (PFNGLINDEXMASKPROC)gload_load("glIndexMask");
	gload_glAccum = (PFNGLACCUMPROC)gload_load("glAccum");
	gload_glPopAttrib = (PFNGLPOPATTRIBPROC)gload_load("glPopAttrib");
	gload_glPushAttrib = (PFNGLPUSHATTRIBPROC)gload_load("glPushAttrib");
	gload_glMap1d = (PFNGLMAP1DPROC)gload_load("glMap1d");
	gload_glMap1f = (PFNGLMAP1FPROC)gload_load("glMap1f");
	gload_glMap2d = (PFNGLMAP2DPROC)gload_load("glMap2d");
	gload_glMap2f = (PFNGLMAP2FPROC)gload_load("glMap2f");
	gload_glMapGrid1d = (PFNGLMAPGRID1DPROC)gload_load("glMapGrid1d");
	gload_glMapGrid1f = (PFNGLMAPGRID1FPROC)gload_load("glMapGrid1f");
	gload_glMapGrid2d = (PFNGLMAPGRID2DPROC)gload_load("glMapGrid2d");
	gload_glMapGrid2f = (PFNGLMAPGRID2FPROC)gload_load("glMapGrid2f");
	gload_glEvalCoord1d = (PFNGLEVALCOORD1DPROC)gload_load("glEvalCoord1d");
	gload_glEvalCoord1dv = (PFNGLEVALCOORD1DVPROC)gload_load("glEvalCoord1dv");
	gload_glEvalCoord1f = (PFNGLEVALCOORD1FPROC)gload_load("glEvalCoord1f");
	gload_glEvalCoord1fv = (PFNGLEVALCOORD1FVPROC)gload_load("glEvalCoord1fv");
	gload_glEvalCoord2d = (PFNGLEVALCOORD2DPROC)gload_load("glEvalCoord2d");
	gload_glEvalCoord2dv = (PFNGLEVALCOORD2DVPROC)gload_load("glEvalCoord2dv");
	gload_glEvalCoord2f = (PFNGLEVALCOORD2FPROC)gload_load("glEvalCoord2f");
	gload_glEvalCoord2fv = (PFNGLEVALCOORD2FVPROC)gload_load("glEvalCoord2fv");
	gload_glEvalMesh1 = (PFNGLEVALMESH1PROC)gload_load("glEvalMesh1");
	gload_glEvalPoint1 = (PFNGLEVALPOINT1PROC)gload_load("glEvalPoint1");
	gload_glEvalMesh2 = (PFNGLEVALMESH2PROC)gload_load("glEvalMesh2");
	gload_glEvalPoint2 = (PFNGLEVALPOINT2PROC)gload_load("glEvalPoint2");
	gload_glAlphaFunc = (PFNGLALPHAFUNCPROC)gload_load("glAlphaFunc");
	gload_glPixelZoom = (PFNGLPIXELZOOMPROC)gload_load("glPixelZoom");
	gload_glPixelTransferf = (PFNGLPIXELTRANSFERFPROC)gload_load("glPixelTransferf");
	gload_glPixelTransferi = (PFNGLPIXELTRANSFERIPROC)gload_load("glPixelTransferi");
	gload_glPixelMapfv = (PFNGLPIXELMAPFVPROC)gload_load("glPixelMapfv");
	gload_glPixelMapuiv = (PFNGLPIXELMAPUIVPROC)gload_load("glPixelMapuiv");
	gload_glPixelMapusv = (PFNGLPIXELMAPUSVPROC)gload_load("glPixelMapusv");
	gload_glCopyPixels = (PFNGLCOPYPIXELSPROC)gload_load("glCopyPixels");
	gload_glDrawPixels = (PFNGLDRAWPIXELSPROC)gload_load("glDrawPixels");
	gload_glGetClipPlane = (PFNGLGETCLIPPLANEPROC)gload_load("glGetClipPlane");
	gload_glGetLightfv = (PFNGLGETLIGHTFVPROC)gload_load("glGetLightfv");
	gload_glGetLightiv = (PFNGLGETLIGHTIVPROC)gload_load("glGetLightiv");
	gload_glGetMapdv = (PFNGLGETMAPDVPROC)gload_load("glGetMapdv");
	gload_glGetMapfv = (PFNGLGETMAPFVPROC)gload_load("glGetMapfv");
	gload_glGetMapiv = (PFNGLGETMAPIVPROC)gload_load("glGetMapiv");
	gload_glGetMaterialfv = (PFNGLGETMATERIALFVPROC)gload_load("glGetMaterialfv");
	gload_glGetMaterialiv = (PFNGLGETMATERIALIVPROC)gload_load("glGetMaterialiv");
	gload_glGetPixelMapfv = (PFNGLGETPIXELMAPFVPROC)gload_load("glGetPixelMapfv");
	gload_glGetPixelMapuiv = (PFNGLGETPIXELMAPUIVPROC)gload_load("glGetPixelMapuiv");
	gload_glGetPixelMapusv = (PFNGLGETPIXELMAPUSVPROC)gload_load("glGetPixelMapusv");
	gload_glGetPolygonStipple = (PFNGLGETPOLYGONSTIPPLEPROC)gload_load("glGetPolygonStipple");
	gload_glGetTexEnvfv = (PFNGLGETTEXENVFVPROC)gload_load("glGetTexEnvfv");
	gload_glGetTexEnviv = (PFNGLGETTEXENVIVPROC)gload_load("glGetTexEnviv");
	gload_glGetTexGendv = (PFNGLGETTEXGENDVPROC)gload_load("glGetTexGendv");
	gload_glGetTexGenfv = (PFNGLGETTEXGENFVPROC)gload_load("glGetTexGenfv");
	gload_glGetTexGeniv = (PFNGLGETTEXGENIVPROC)gload_load("glGetTexGeniv");
	gload_glIsList = (PFNGLISLISTPROC)gload_load("glIsList");
	gload_glFrustum = (PFNGLFRUSTUMPROC)gload_load("glFrustum");
	gload_glLoadIdentity = (PFNGLLOADIDENTITYPROC)gload_load("glLoadIdentity");
	gload_glLoadMatrixf = (PFNGLLOADMATRIXFPROC)gload_load("glLoadMatrixf");
	gload_glLoadMatrixd = (PFNGLLOADMATRIXDPROC)gload_load("glLoadMatrixd");
	gload_glMatrixMode = (PFNGLMATRIXMODEPROC)gload_load("glMatrixMode");
	gload_glMultMatrixf = (PFNGLMULTMATRIXFPROC)gload_load("glMultMatrixf");
	gload_glMultMatrixd = (PFNGLMULTMATRIXDPROC)gload_load("glMultMatrixd");
	gload_glOrtho = (PFNGLORTHOPROC)gload_load("glOrtho");
	gload_glPopMatrix = (PFNGLPOPMATRIXPROC)gload_load("glPopMatrix");
	gload_glPushMatrix = (PFNGLPUSHMATRIXPROC)gload_load("glPushMatrix");
	gload_glRotated = (PFNGLROTATEDPROC)gload_load("glRotated");
	gload_glRotatef = (PFNGLROTATEFPROC)gload_load("glRotatef");
	gload_glScaled = (PFNGLSCALEDPROC)gload_load("glScaled");
	gload_glScalef = (PFNGLSCALEFPROC)gload_load("glScalef");
	gload_glTranslated = (PFNGLTRANSLATEDPROC)gload_load("glTranslated");
	gload_glTranslatef = (PFNGLTRANSLATEFPROC)gload_load("glTranslatef");
	gload_glDrawArrays = (PFNGLDRAWARRAYSPROC)gload_load("glDrawArrays");
	gload_glDrawElements = (PFNGLDRAWELEMENTSPROC)gload_load("glDrawElements");
	gload_glGetPointerv = (PFNGLGETPOINTERVPROC)gload_load("glGetPointerv");
	gload_glPolygonOffset = (PFNGLPOLYGONOFFSETPROC)gload_load("glPolygonOffset");
	gload_glCopyTexImage1D = (PFNGLCOPYTEXIMAGE1DPROC)gload_load("glCopyTexImage1D");
	gload_glCopyTexImage2D = (PFNGLCOPYTEXIMAGE2DPROC)gload_load("glCopyTexImage2D");
	gload_glCopyTexSubImage1D = (PFNGLCOPYTEXSUBIMAGE1DPROC)gload_load("glCopyTexSubImage1D");
	gload_glCopyTexSubImage2D = (PFNGLCOPYTEXSUBIMAGE2DPROC)gload_load("glCopyTexSubImage2D");
	gload_glTexSubImage1D = (PFNGLTEXSUBIMAGE1DPROC)gload_load("glTexSubImage1D");
	gload_glTexSubImage2D = (PFNGLTEXSUBIMAGE2DPROC)gload_load("glTexSubImage2D");
	gload_glBindTexture = (PFNGLBINDTEXTUREPROC)gload_load("glBindTexture");
	gload_glDeleteTextures = (PFNGLDELETETEXTURESPROC)gload_load("glDeleteTextures");
	gload_glGenTextures = (PFNGLGENTEXTURESPROC)gload_load("glGenTextures");
	gload_glIsTexture = (PFNGLISTEXTUREPROC)gload_load("glIsTexture");
	gload_glArrayElement = (PFNGLARRAYELEMENTPROC)gload_load("glArrayElement");
	gload_glColorPointer = (PFNGLCOLORPOINTERPROC)gload_load("glColorPointer");
	gload_glDisableClientState = (PFNGLDISABLECLIENTSTATEPROC)gload_load("glDisableClientState");
	gload_glEdgeFlagPointer = (PFNGLEDGEFLAGPOINTERPROC)gload_load("glEdgeFlagPointer");
	gload_glEnableClientState = (PFNGLENABLECLIENTSTATEPROC)gload_load("glEnableClientState");
	gload_glIndexPointer = (PFNGLINDEXPOINTERPROC)gload_load("glIndexPointer");
	gload_glInterleavedArrays = (PFNGLINTERLEAVEDARRAYSPROC)gload_load("glInterleavedArrays");
	gload_glNormalPointer = (PFNGLNORMALPOINTERPROC)gload_load("glNormalPointer");
	gload_glTexCoordPointer = (PFNGLTEXCOORDPOINTERPROC)gload_load("glTexCoordPointer");
	gload_glVertexPointer = (PFNGLVERTEXPOINTERPROC)gload_load("glVertexPointer");
	gload_glAreTexturesResident = (PFNGLARETEXTURESRESIDENTPROC)gload_load("glAreTexturesResident");
	gload_glPrioritizeTextures = (PFNGLPRIORITIZETEXTURESPROC)gload_load("glPrioritizeTextures");
	gload_glIndexub = (PFNGLINDEXUBPROC)gload_load("glIndexub");
	gload_glIndexubv = (PFNGLINDEXUBVPROC)gload_load("glIndexubv");
	gload_glPopClientAttrib = (PFNGLPOPCLIENTATTRIBPROC)gload_load("glPopClientAttrib");
	gload_glPushClientAttrib = (PFNGLPUSHCLIENTATTRIBPROC)gload_load("glPushClientAttrib");
	gload_glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)gload_load("glDrawRangeElements");
	gload_glTexImage3D = (PFNGLTEXIMAGE3DPROC)gload_load("glTexImage3D");
	gload_glTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC)gload_load("glTexSubImage3D");
	gload_glCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC)gload_load("glCopyTexSubImage3D");
	gload_glActiveTexture = (PFNGLACTIVETEXTUREPROC)gload_load("glActiveTexture");
	gload_glSampleCoverage = (PFNGLSAMPLECOVERAGEPROC)gload_load("glSampleCoverage");
	gload_glCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC)gload_load("glCompressedTexImage3D");
	gload_glCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)gload_load("glCompressedTexImage2D");
	gload_glCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC)gload_load("glCompressedTexImage1D");
	gload_glCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)gload_load("glCompressedTexSubImage3D");
	gload_glCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)gload_load("glCompressedTexSubImage2D");
	gload_glCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)gload_load("glCompressedTexSubImage1D");
	gload_glGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC)gload_load("glGetCompressedTexImage");
	gload_glClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC)gload_load("glClientActiveTexture");
	gload_glMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC)gload_load("glMultiTexCoord1d");
	gload_glMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC)gload_load("glMultiTexCoord1dv");
	gload_glMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC)gload_load("glMultiTexCoord1f");
	gload_glMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC)gload_load("glMultiTexCoord1fv");
	gload_glMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC)gload_load("glMultiTexCoord1i");
	gload_glMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC)gload_load("glMultiTexCoord1iv");
	gload_glMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC)gload_load("glMultiTexCoord1s");
	gload_glMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC)gload_load("glMultiTexCoord1sv");
	gload_glMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC)gload_load("glMultiTexCoord2d");
	gload_glMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC)gload_load("glMultiTexCoord2dv");
	gload_glMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC)gload_load("glMultiTexCoord2f");
	gload_glMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC)gload_load("glMultiTexCoord2fv");
	gload_glMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC)gload_load("glMultiTexCoord2i");
	gload_glMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC)gload_load("glMultiTexCoord2iv");
	gload_glMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC)gload_load("glMultiTexCoord2s");
	gload_glMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC)gload_load("glMultiTexCoord2sv");
	gload_glMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC)gload_load("glMultiTexCoord3d");
	gload_glMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC)gload_load("glMultiTexCoord3dv");
	gload_glMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC)gload_load("glMultiTexCoord3f");
	gload_glMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC)gload_load("glMultiTexCoord3fv");
	gload_glMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC)gload_load("glMultiTexCoord3i");
	gload_glMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC)gload_load("glMultiTexCoord3iv");
	gload_glMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC)gload_load("glMultiTexCoord3s");
	gload_glMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC)gload_load("glMultiTexCoord3sv");
	gload_glMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC)gload_load("glMultiTexCoord4d");
	gload_glMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC)gload_load("glMultiTexCoord4dv");
	gload_glMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC)gload_load("glMultiTexCoord4f");
	gload_glMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC)gload_load("glMultiTexCoord4fv");
	gload_glMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC)gload_load("glMultiTexCoord4i");
	gload_glMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC)gload_load("glMultiTexCoord4iv");
	gload_glMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC)gload_load("glMultiTexCoord4s");
	gload_glMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC)gload_load("glMultiTexCoord4sv");
	gload_glLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC)gload_load("glLoadTransposeMatrixf");
	gload_glLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC)gload_load("glLoadTransposeMatrixd");
	gload_glMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC)gload_load("glMultTransposeMatrixf");
	gload_glMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC)gload_load("glMultTransposeMatrixd");
	gload_glBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC)gload_load("glBlendFuncSeparate");
	gload_glMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC)gload_load("glMultiDrawArrays");
	gload_glMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC)gload_load("glMultiDrawElements");
	gload_glPointParameterf = (PFNGLPOINTPARAMETERFPROC)gload_load("glPointParameterf");
	gload_glPointParameterfv = (PFNGLPOINTPARAMETERFVPROC)gload_load("glPointParameterfv");
	gload_glPointParameteri = (PFNGLPOINTPARAMETERIPROC)gload_load("glPointParameteri");
	gload_glPointParameteriv = (PFNGLPOINTPARAMETERIVPROC)gload_load("glPointParameteriv");
	gload_glFogCoordf = (PFNGLFOGCOORDFPROC)gload_load("glFogCoordf");
	gload_glFogCoordfv = (PFNGLFOGCOORDFVPROC)gload_load("glFogCoordfv");
	gload_glFogCoordd = (PFNGLFOGCOORDDPROC)gload_load("glFogCoordd");
	gload_glFogCoorddv = (PFNGLFOGCOORDDVPROC)gload_load("glFogCoorddv");
	gload_glFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC)gload_load("glFogCoordPointer");
	gload_glSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC)gload_load("glSecondaryColor3b");
	gload_glSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC)gload_load("glSecondaryColor3bv");
	gload_glSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC)gload_load("glSecondaryColor3d");
	gload_glSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC)gload_load("glSecondaryColor3dv");
	gload_glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)gload_load("glSecondaryColor3f");
	gload_glSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC)gload_load("glSecondaryColor3fv");
	gload_glSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC)gload_load("glSecondaryColor3i");
	gload_glSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC)gload_load("glSecondaryColor3iv");
	gload_glSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC)gload_load("glSecondaryColor3s");
	gload_glSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC)gload_load("glSecondaryColor3sv");
	gload_glSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC)gload_load("glSecondaryColor3ub");
	gload_glSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC)gload_load("glSecondaryColor3ubv");
	gload_glSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC)gload_load("glSecondaryColor3ui");
	gload_glSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC)gload_load("glSecondaryColor3uiv");
	gload_glSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC)gload_load("glSecondaryColor3us");
	gload_glSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC)gload_load("glSecondaryColor3usv");
	gload_glSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC)gload_load("glSecondaryColorPointer");
	gload_glWindowPos2d = (PFNGLWINDOWPOS2DPROC)gload_load("glWindowPos2d");
	gload_glWindowPos2dv = (PFNGLWINDOWPOS2DVPROC)gload_load("glWindowPos2dv");
	gload_glWindowPos2f = (PFNGLWINDOWPOS2FPROC)gload_load("glWindowPos2f");
	gload_glWindowPos2fv = (PFNGLWINDOWPOS2FVPROC)gload_load("glWindowPos2fv");
	gload_glWindowPos2i = (PFNGLWINDOWPOS2IPROC)gload_load("glWindowPos2i");
	gload_glWindowPos2iv = (PFNGLWINDOWPOS2IVPROC)gload_load("glWindowPos2iv");
	gload_glWindowPos2s = (PFNGLWINDOWPOS2SPROC)gload_load("glWindowPos2s");
	gload_glWindowPos2sv = (PFNGLWINDOWPOS2SVPROC)gload_load("glWindowPos2sv");
	gload_glWindowPos3d = (PFNGLWINDOWPOS3DPROC)gload_load("glWindowPos3d");
	gload_glWindowPos3dv = (PFNGLWINDOWPOS3DVPROC)gload_load("glWindowPos3dv");
	gload_glWindowPos3f = (PFNGLWINDOWPOS3FPROC)gload_load("glWindowPos3f");
	gload_glWindowPos3fv = (PFNGLWINDOWPOS3FVPROC)gload_load("glWindowPos3fv");
	gload_glWindowPos3i = (PFNGLWINDOWPOS3IPROC)gload_load("glWindowPos3i");
	gload_glWindowPos3iv = (PFNGLWINDOWPOS3IVPROC)gload_load("glWindowPos3iv");
	gload_glWindowPos3s = (PFNGLWINDOWPOS3SPROC)gload_load("glWindowPos3s");
	gload_glWindowPos3sv = (PFNGLWINDOWPOS3SVPROC)gload_load("glWindowPos3sv");
	gload_glGenQueries = (PFNGLGENQUERIESPROC)gload_load("glGenQueries");
	gload_glDeleteQueries = (PFNGLDELETEQUERIESPROC)gload_load("glDeleteQueries");
	gload_glIsQuery = (PFNGLISQUERYPROC)gload_load("glIsQuery");
	gload_glBeginQuery = (PFNGLBEGINQUERYPROC)gload_load("glBeginQuery");
	gload_glEndQuery = (PFNGLENDQUERYPROC)gload_load("glEndQuery");
	gload_glGetQueryiv = (PFNGLGETQUERYIVPROC)gload_load("glGetQueryiv");
	gload_glGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC)gload_load("glGetQueryObjectiv");
	gload_glGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC)gload_load("glGetQueryObjectuiv");
	gload_glBindBuffer = (PFNGLBINDBUFFERPROC)gload_load("glBindBuffer");
	gload_glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)gload_load("glDeleteBuffers");
	gload_glGenBuffers = (PFNGLGENBUFFERSPROC)gload_load("glGenBuffers");
	gload_glIsBuffer = (PFNGLISBUFFERPROC)gload_load("glIsBuffer");
	gload_glBufferData = (PFNGLBUFFERDATAPROC)gload_load("glBufferData");
	gload_glBufferSubData = (PFNGLBUFFERSUBDATAPROC)gload_load("glBufferSubData");
	gload_glGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC)gload_load("glGetBufferSubData");
	gload_glMapBuffer = (PFNGLMAPBUFFERPROC)gload_load("glMapBuffer");
	gload_glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)gload_load("glUnmapBuffer");
	gload_glGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC)gload_load("glGetBufferParameteriv");
	gload_glGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC)gload_load("glGetBufferPointerv");
	gload_glBlendEquationSeparate = (PFNGLBLENDEQUATIONSEPARATEPROC)gload_load("glBlendEquationSeparate");
	gload_glDrawBuffers = (PFNGLDRAWBUFFERSPROC)gload_load("glDrawBuffers");
	gload_glStencilOpSeparate = (PFNGLSTENCILOPSEPARATEPROC)gload_load("glStencilOpSeparate");
	gload_glStencilFuncSeparate = (PFNGLSTENCILFUNCSEPARATEPROC)gload_load("glStencilFuncSeparate");
	gload_glStencilMaskSeparate = (PFNGLSTENCILMASKSEPARATEPROC)gload_load("glStencilMaskSeparate");
	gload_glAttachShader = (PFNGLATTACHSHADERPROC)gload_load("glAttachShader");
	gload_glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)gload_load("glBindAttribLocation");
	gload_glCompileShader = (PFNGLCOMPILESHADERPROC)gload_load("glCompileShader");
	gload_glCreateProgram = (PFNGLCREATEPROGRAMPROC)gload_load("glCreateProgram");
	gload_glCreateShader = (PFNGLCREATESHADERPROC)gload_load("glCreateShader");
	gload_glDeleteProgram = (PFNGLDELETEPROGRAMPROC)gload_load("glDeleteProgram");
	gload_glDeleteShader = (PFNGLDELETESHADERPROC)gload_load("glDeleteShader");
	gload_glDetachShader = (PFNGLDETACHSHADERPROC)gload_load("glDetachShader");
	gload_glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)gload_load("glDisableVertexAttribArray");
	gload_glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)gload_load("glEnableVertexAttribArray");
	gload_glGetActiveAttrib = (PFNGLGETACTIVEATTRIBPROC)gload_load("glGetActiveAttrib");
	gload_glGetActiveUniform = (PFNGLGETACTIVEUNIFORMPROC)gload_load("glGetActiveUniform");
	gload_glGetAttachedShaders = (PFNGLGETATTACHEDSHADERSPROC)gload_load("glGetAttachedShaders");
	gload_glGetAttribLocation = (PFNGLGETATTRIBLOCATIONPROC)gload_load("glGetAttribLocation");
	gload_glGetProgramiv = (PFNGLGETPROGRAMIVPROC)gload_load("glGetProgramiv");
	gload_glGetProgramInfoLog = (PFNGLGETPROGRAMINFOLOGPROC)gload_load("glGetProgramInfoLog");
	gload_glGetShaderiv = (PFNGLGETSHADERIVPROC)gload_load("glGetShaderiv");
	gload_glGetShaderInfoLog = (PFNGLGETSHADERINFOLOGPROC)gload_load("glGetShaderInfoLog");
	gload_glGetShaderSource = (PFNGLGETSHADERSOURCEPROC)gload_load("glGetShaderSource");
	gload_glGetUniformLocation = (PFNGLGETUNIFORMLOCATIONPROC)gload_load("glGetUniformLocation");
	gload_glGetUniformfv = (PFNGLGETUNIFORMFVPROC)gload_load("glGetUniformfv");
	gload_glGetUniformiv = (PFNGLGETUNIFORMIVPROC)gload_load("glGetUniformiv");
	gload_glGetVertexAttribdv = (PFNGLGETVERTEXATTRIBDVPROC)gload_load("glGetVertexAttribdv");
	gload_glGetVertexAttribfv = (PFNGLGETVERTEXATTRIBFVPROC)gload_load("glGetVertexAttribfv");
	gload_glGetVertexAttribiv = (PFNGLGETVERTEXATTRIBIVPROC)gload_load("glGetVertexAttribiv");
	gload_glGetVertexAttribPointerv = (PFNGLGETVERTEXATTRIBPOINTERVPROC)gload_load("glGetVertexAttribPointerv");
	gload_glIsProgram = (PFNGLISPROGRAMPROC)gload_load("glIsProgram");
	gload_glIsShader = (PFNGLISSHADERPROC)gload_load("glIsShader");
	gload_glLinkProgram = (PFNGLLINKPROGRAMPROC)gload_load("glLinkProgram");
	gload_glShaderSource = (PFNGLSHADERSOURCEPROC)gload_load("glShaderSource");
	gload_glUseProgram = (PFNGLUSEPROGRAMPROC)gload_load("glUseProgram");
	gload_glUniform1f = (PFNGLUNIFORM1FPROC)gload_load("glUniform1f");
	gload_glUniform2f = (PFNGLUNIFORM2FPROC)gload_load("glUniform2f");
	gload_glUniform3f = (PFNGLUNIFORM3FPROC)gload_load("glUniform3f");
	gload_glUniform4f = (PFNGLUNIFORM4FPROC)gload_load("glUniform4f");
	gload_glUniform1i = (PFNGLUNIFORM1IPROC)gload_load("glUniform1i");
	gload_glUniform2i = (PFNGLUNIFORM2IPROC)gload_load("glUniform2i");
	gload_glUniform3i = (PFNGLUNIFORM3IPROC)gload_load("glUniform3i");
	gload_glUniform4i = (PFNGLUNIFORM4IPROC)gload_load("glUniform4i");
	gload_glUniform1fv = (PFNGLUNIFORM1FVPROC)gload_load("glUniform1fv");
	gload_glUniform2fv = (PFNGLUNIFORM2FVPROC)gload_load("glUniform2fv");
	gload_glUniform3fv = (PFNGLUNIFORM3FVPROC)gload_load("glUniform3fv");
	gload_glUniform4fv = (PFNGLUNIFORM4FVPROC)gload_load("glUniform4fv");
	gload_glUniform1iv = (PFNGLUNIFORM1IVPROC)gload_load("glUniform1iv");
	gload_glUniform2iv = (PFNGLUNIFORM2IVPROC)gload_load("glUniform2iv");
	gload_glUniform3iv = (PFNGLUNIFORM3IVPROC)gload_load("glUniform3iv");
	gload_glUniform4iv = (PFNGLUNIFORM4IVPROC)gload_load("glUniform4iv");
	gload_glUniformMatrix2fv = (PFNGLUNIFORMMATRIX2FVPROC)gload_load("glUniformMatrix2fv");
	gload_glUniformMatrix3fv = (PFNGLUNIFORMMATRIX3FVPROC)gload_load("glUniformMatrix3fv");
	gload_glUniformMatrix4fv = (PFNGLUNIFORMMATRIX4FVPROC)gload_load("glUniformMatrix4fv");
	gload_glValidateProgram = (PFNGLVALIDATEPROGRAMPROC)gload_load("glValidateProgram");
	gload_glVertexAttrib1d = (PFNGLVERTEXATTRIB1DPROC)gload_load("glVertexAttrib1d");
	gload_glVertexAttrib1dv = (PFNGLVERTEXATTRIB1DVPROC)gload_load("glVertexAttrib1dv");
	gload_glVertexAttrib1f = (PFNGLVERTEXATTRIB1FPROC)gload_load("glVertexAttrib1f");
	gload_glVertexAttrib1fv = (PFNGLVERTEXATTRIB1FVPROC)gload_load("glVertexAttrib1fv");
	gload_glVertexAttrib1s = (PFNGLVERTEXATTRIB1SPROC)gload_load("glVertexAttrib1s");
	gload_glVertexAttrib1sv = (PFNGLVERTEXATTRIB1SVPROC)gload_load("glVertexAttrib1sv");
	gload_glVertexAttrib2d = (PFNGLVERTEXATTRIB2DPROC)gload_load("glVertexAttrib2d");
	gload_glVertexAttrib2dv = (PFNGLVERTEXATTRIB2DVPROC)gload_load("glVertexAttrib2dv");
	gload_glVertexAttrib2f = (PFNGLVERTEXATTRIB2FPROC)gload_load("glVertexAttrib2f");
	gload_glVertexAttrib2fv = (PFNGLVERTEXATTRIB2FVPROC)gload_load("glVertexAttrib2fv");
	gload_glVertexAttrib2s = (PFNGLVERTEXATTRIB2SPROC)gload_load("glVertexAttrib2s");
	gload_glVertexAttrib2sv = (PFNGLVERTEXATTRIB2SVPROC)gload_load("glVertexAttrib2sv");
	gload_glVertexAttrib3d = (PFNGLVERTEXATTRIB3DPROC)gload_load("glVertexAttrib3d");
	gload_glVertexAttrib3dv = (PFNGLVERTEXATTRIB3DVPROC)gload_load("glVertexAttrib3dv");
	gload_glVertexAttrib3f = (PFNGLVERTEXATTRIB3FPROC)gload_load("glVertexAttrib3f");
	gload_glVertexAttrib3fv = (PFNGLVERTEXATTRIB3FVPROC)gload_load("glVertexAttrib3fv");
	gload_glVertexAttrib3s = (PFNGLVERTEXATTRIB3SPROC)gload_load("glVertexAttrib3s");
	gload_glVertexAttrib3sv = (PFNGLVERTEXATTRIB3SVPROC)gload_load("glVertexAttrib3sv");
	gload_glVertexAttrib4Nbv = (PFNGLVERTEXATTRIB4NBVPROC)gload_load("glVertexAttrib4Nbv");
	gload_glVertexAttrib4Niv = (PFNGLVERTEXATTRIB4NIVPROC)gload_load("glVertexAttrib4Niv");
	gload_glVertexAttrib4Nsv = (PFNGLVERTEXATTRIB4NSVPROC)gload_load("glVertexAttrib4Nsv");
	gload_glVertexAttrib4Nub = (PFNGLVERTEXATTRIB4NUBPROC)gload_load("glVertexAttrib4Nub");
	gload_glVertexAttrib4Nubv = (PFNGLVERTEXATTRIB4NUBVPROC)gload_load("glVertexAttrib4Nubv");
	gload_glVertexAttrib4Nuiv = (PFNGLVERTEXATTRIB4NUIVPROC)gload_load("glVertexAttrib4Nuiv");
	gload_glVertexAttrib4Nusv = (PFNGLVERTEXATTRIB4NUSVPROC)gload_load("glVertexAttrib4Nusv");
	gload_glVertexAttrib4bv = (PFNGLVERTEXATTRIB4BVPROC)gload_load("glVertexAttrib4bv");
	gload_glVertexAttrib4d = (PFNGLVERTEXATTRIB4DPROC)gload_load("glVertexAttrib4d");
	gload_glVertexAttrib4dv = (PFNGLVERTEXATTRIB4DVPROC)gload_load("glVertexAttrib4dv");
	gload_glVertexAttrib4f = (PFNGLVERTEXATTRIB4FPROC)gload_load("glVertexAttrib4f");
	gload_glVertexAttrib4fv = (PFNGLVERTEXATTRIB4FVPROC)gload_load("glVertexAttrib4fv");
	gload_glVertexAttrib4iv = (PFNGLVERTEXATTRIB4IVPROC)gload_load("glVertexAttrib4iv");
	gload_glVertexAttrib4s = (PFNGLVERTEXATTRIB4SPROC)gload_load("glVertexAttrib4s");
	gload_glVertexAttrib4sv = (PFNGLVERTEXATTRIB4SVPROC)gload_load("glVertexAttrib4sv");
	gload_glVertexAttrib4ubv = (PFNGLVERTEXATTRIB4UBVPROC)gload_load("glVertexAttrib4ubv");
	gload_glVertexAttrib4uiv = (PFNGLVERTEXATTRIB4UIVPROC)gload_load("glVertexAttrib4uiv");
	gload_glVertexAttrib4usv = (PFNGLVERTEXATTRIB4USVPROC)gload_load("glVertexAttrib4usv");
	gload_glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)gload_load("glVertexAttribPointer");
}
#endif

#ifdef __cplusplus
}
#endif
#endif

